Computational Complexity
Jan - May 2024

Lectures

Following is an outline of the lectures given along with references and links to additional reading materials.

Lec 1 (17 Jan, Wed) : Course administration and overview. Brief history of computation. Overview and connections to other areas in Theoretical CS.

Reading : Chapter 1 and 20 of Mathematics and Computation.

Lec () (19 Jan, Fri) : Class cancelled due to Institute day (Compensated on 03 Feb)

Lec () (22 Jan, Mon) : Non-instructional day till noon (Compensated on 03 Feb)

Lec 2 (24 Jan, Wed) : Recap of Turing machine model -- formal definition, variants of the model, configurations, halting computation definitions. Turing machines are strings, Universal Turing machines. Proof of undecidability of Halting problem via diagonalization.

Reading : Kozen A&C Lec 29, 30, 31. Link to David Hilbert’s lecture at the ICM 1900.

Lec () (26 Jan, Fri) : Holiday due to Republic Day

Lec () (29 Jan, Mon) : Non instructional day.

Lec 3 (31 Jan, Wed) : Completed the diagonalization argument. Membership problem and its undecidability. More techniques to show undecidability. The undecidability of $\MP_\epsilon$.

Reading : Kozen A&C, Lec 32

Lec 4 (02 Feb, Fri) : Showing that if $\MP_\epsilon$ is decidable, then $\HP$ is decidable. Similar arguments for showing undecidability of languages $\FIN$ consisting of Turing machine whose langauage is finite.

Reading : Kozen A&C, Lec 32, 33

Lec 5 (03 Feb, Sat) : (10-11 AM) Proof of undecidability of $\FIN$, $\REG$ and $\CFG$. Introduction to reduction, formal definition.

Reading : Kozen A&C, Lec 32, 33

Lec 6 (03 Feb, Sat) : (11-12 PM) Using reduction to show undecidability and non-recursive enumerability of languages. $\overline{\FIN}$ is not in RE by showing $\HP$ reduces to $\FIN$. Enumeration Turing machines.

Reading : Kozen A&C, Lec 30, 33

Lec 7 (05 Feb, Mon) : Enumeration Turing machines and recursive enumerability. Properties of recursively enumerable languages, trivial and non-trivial properties.

Reading : Kozen A&C, Lec 30, 34

Lec 8 (07 Feb, Wed) : Rice's theorem 1 statement (for undecidability) and its proof. Rice's theorem 2 statement (for non-RE) and its proof.

Reading : Kozen A&C, Lec 34

Lec 9 (09 Feb, Fri) : Notions of hardness and completeness. $\HP$ and $\MP$ are SD-complete. Turing reductions.

Reading : Kozen A&C, Supplementary lecture J.

Lec 10 (12 Feb, Mon) : Oracle Turing machines, Relative computation, Turing reductions, Decidable set is precisely semi-decidable set intersection co semi-decidable set.

Reading : Kozen A&C, Supplementary lecture J.

Lec 11 (14 Feb, Wed) : Semideciding FIN with an MP oracle. Languages that are undecidable for oracle Turing machines - existence via diagonalization. Arithmetic hierarchy.

Reading : Kozen A&C, Supplementary lecture J.

Lec 12 (16 Feb, Fri) : Arithmetic Hierarchy, definitions of $\Sigma_k, \Pi_k$ and $\Delta_k$. Basic containments. Expressing languages via quantifiers. Quantifier characterization of Arithmetic Hierarchy.

Reading : Kozen A&C, Supplementary lecture J and class notes

Lec 13 (19 Feb, Mon) : Proof of Quantifier characterization by induction.

Reading : Kozen A&C, Supplementary lecture J and class notes

Lec 14 (21 Feb, Wed) : Base case - quantifier characterization for semi-decidable languages.

Reading : Kozen A&C, Supplementary lecture J and class notes

Lec 15 (23 Feb, Fri) : Proof of quantifier characterisation of $\Sigma_2$.

Reading : Kozen A&C, Supplementary lecture J and class notes

Lec 16 (26 Feb, Mon) : Proof of EMPTY is $\Pi_1$ complete, FIN is $\Sigma_2$ complete.

Reading : Kozen A&C, Supplementary lecture J and class notes

Lec 17 (28 Feb, Wed) : Broad goals of Computational Complexity. Notion of a resource. Blum's axioms. Resources - time and space. Class $\DTIME$ and $\DSPACE$.

Reading : Kozen ToC Lec 1, Arora-Barak Chap 1.

Lec 18 (01 Mar, Fri) : Existance of decidable languages $L$ outside $\DTIME(t)$ and $\DSPACE(s)$ by diagonalization. How efficiently can $L$ be solved ? Time and space constructibility, overview of Tape reduction and Alphabet reduction and their importance.

Reading : Arora-Barak Chap 1 and class notes.

Lec 19 (04 Mar, Mon) : Tape reduction and Alphabet reduction - statement and proof.

Reading : Arora-Barak Chap 1 and class notes.

Lec 20 (06 Mar, Wed) : Linear speedup theorem and Tape compression theorem - statement and proof.

Reading : Arora-Barak Chap 1 and class notes.

Lec 21 (08 Mar, Fri) : Time and Space hierarchy theorem - statement and implications. Proof of space hierarchy theorem.

Reading : Kozen ToC, Lec 3 and class notes.

Lec 22 (11 Mar, Mon) : Proof of time hierarchy theorem. Need for constructibility - Blum's Speedup theorem and Borodin-Trakhtenbrot's Gap theorem.

Reading : Class notes

Lec 23 (13 Mar, Wed) : Proof of the Gap theorem. Proof of Blum's speedup theorem -- description of the language $A$ achieving speedup.

Reading : Class notes. References provided in course moodle page.

Lec 24 (15 Mar, Fri) : Completed the proof of Blum's speedup theorem. Crossing sequence argument. The palindrome language requires $\Omega(n^2)$ time on a one-tape Turing machine.

Reading : See class notes for speedup theorem. Crossing sequence argument done from Kozen ToC, Lec 1.

Lec 25 (18 Mar, Mon) : Any Turing machine using $o(\log\log n)$ space can only accept regular languages - proof via crossing sequences. Introduction to non-deterministic time and space.

Reading : Kozen ToC, Lec 1

Lec 26 (20 Mar, Wed) : Non-deterministic time and space. Classes -- $\DTIME,\DSPACE,\NTIME,\NSPACE$ and containments.

Reading : Kozen ToC, Lec 2

Lec 27 (22 Mar, Fri) : Complexity classes $\P,\PSPACE, \LOG$ and $\NP, \NPSPACE, \NLOG$ - basic containments and known separations. Composibility. Problems $\UREACH, \REACH, \CVP, \SAT,\UPRIMES,\PRIMES,\QBF$.

Reading : Arora-Barak, Section 2.1, 2.6.

Lec () (25 Mar, Mon) : Holiday due to Holi festival

Lec 28 (27 Mar, Wed) : Definition of $\coNSPACE$ and $\coNTIME$ and their containments. Classes - $\coNLOG, \coNP$ and $\coNSPACE$. Introduction to padding arguments - $\E \ne \PSPACE$ using padding.

Reading : Arora-Barak, Section 2.6.2

Lec () (29 Mar, Fri) : Holiday due to Good Friday

Lec 29 (01 Apr, Mon) : Padding argument - $\EXP \ne \NEXP \implies \P \ne \NP$. Zooming into the $\NP$ class. Problems - $\overline{\PRIMES}, {\rm CLIQUE}, {\rm VC},{\rm INDSET}, {\rm GI}, {\rm MAXCLIQUE}$.

Reading : Arora-Barak, Section 2.6

Lec 30 (03 Apr, Wed) : Non-deterministic algorithms for ${\rm CLIQUE}$ and an attempted algorithm for ${\rm MAXCLIQUE}$. Guess + efficient verify characterisation of $\NP$.

Reading : Arora-Barak, Section 2.1, 2.2

Lec 31 (05 Apr, Fri) : Completed the proof of characterisation of $\NP$. Reduction between problems. Many-one polynomial time reductions - reductions between ${\rm CLIQUE}$, ${\rm INDSET}$ and ${\rm VC}$. $\NP$-completeness, Bounded Halting Problem is $\NP$-complete. Towards showing $\CNFSAT$ is $\NP$-complete - Cook-Levin Theorem.

Reading : Arora-Barak, Section 2.1-2.3

Lec 32 (08 Apr, Mon) : Proof overview of Cook-Levin theorem - $\CNFSAT$ is $\NP$-complete. Setting up of tableau of configurations.

Reading : Arora-Barak, Chapter 2.

Lec () (10 Apr, Wed) : Holiday due to Id al-Fitr. Compensatory class on April 11.

Lec 33 (11 Apr, Thu) : Completed construction of $\CNFSAT$ instance for the reduction. Argued correctness and showed that overall reduction runs in polynomial time. Completed proof of Cook-Levin reduction.

Reading : Arora-Barak Chap. 2, Section 2.3, 2.6, Chap 4, Section 4.1

Lec 34 (12 Apr, Fri) : Reduction from $\CNFSAT$ to $3\SAT$ and $3\SAT$ to Vertex Cover. Sparse sets - what and why study them. Berman-Hatmanis conjecture.

Reading : Arora-Barak Chap 4, Section 4.1

Lec 35 (15 Apr, Mon) : Spare sets and $\NP$-hardness. Mahaney's theorem - statement and proof overview.

Reading : An excellent exposition by Grochow

Lec 36 (17 Apr, Wed) : Completed the proof of Mahaney's theorem. Classes $\P$ and below. Reductions in logspace - definition and issues.

Reading : Arora-Barak, Chap 4; Kozen, Lec 5.

Lec 37 (19 Apr, Fri) : Composibility of logspace. Completeness notion for $\P$ and $\NLOG$. $\CVP$ is $\P$-complete. Space efficient algorithms for $\TREEREACH$ and $\REACH$.

Reading : Arora-Barak, Chap 4, Sec 4.3; Kozen, Lec 5, 6.

Lec 38 (22 Apr, Mon) : $\NL$-completeness. Proof of $\REACH$ is $\NL$ complete. Statement of Savitch's theorem and proof idea.

Reading : Kozen, Lec 2, 5.

Lec 39 (24 Apr, Wed) : Space complexity - Savitch's theorem. Immerman-Scelepscenyi's theorem - statement and implications. Idea behind $\NL$ algorithm for $\overline{\REACH}$.

Reading : Kozen Lect. 4, Goldreich Chap 5, Sec 3

Lec () (26 Apr, Fri) : Holiday due to election.

Lec 40 (27 Apr, Sat) : Paper presentations in A01-212 from 9.30 AM onwards.

Reading :

Lec 41 (29 Apr, Mon) : Completed correctness of the $\NL$ algorithm for $\overline{\REACH}$. Polynomial hierarchy - oracle machine based characterization and quantifier based characterization. Randomized complexity classes - $\RP,\co\RP$ and $\BPP$. Error reduction by repetition for $\RP$.

Reading : Arora-Barak - Chap. 3, Section 3.4, Chap 5, Section 5.2, [Kozen] Lect. 9, 10. Arora-Barak Section 7.1, 7.2, 7.3, 7,4