CS6014 Computability and Complexity
July - Nov 2020
The lecture videos and the notes written during the lectures are available below.
- Week 1
- Administrative details about the course; Introduction to the course; Historical perspective; Turing machines; Configuration and acceptance condition; Examples; Definition of recursive languages and recursive enumerability; Equivalent models; Tape-reduction theorem.
- References: [K1] - Chapters 28, 29, 30
- Week 2
- Enumerator machines; Turing machine encodings; Diagonalization - Existence of languages that are not recursively enumerable; Universal Turing machines; The universal language and the membership problem; Undecidability of the membership problem; Halting problem is undecidable; Examples of languages that are not recursively enumerable; Comparing the halting problem and the membership problem.
- References: [K1] - Chapters 28, 29, 30, 31
- Week 3
- Undecidability; Reducibilities - Turing reductions and many-one reductions; Properties of many-one reductions; examples; examples of languages that are not r.e; Rice’s theorem - examples and non-examples, proof; Rice-McNaughton-Myhill-Shapiro theorem about non-monotone properties of r.e lannguages and proof.
- References: [K1] - Chapters 31, 32, 33, 34
- Week 4
- First-order theory of numbers, example sentences, Peano’s axiomatization, notion of a proof, statement of Gödel’s incompleteness theorem. Proof of incompleteness theorem - the set of theorems in Peano’s axiomatization is recursively enumerable whereas the set of true statements in first-order number theory is not.
- References: [K1] - Chapters 38,39
- Week 5
- Oracle Turing Machines; Halting problem of TMs with oracle access to the Halting problem; Arithmetic Hierarchy - the first levels; Inclusions and separations; FIN is in \(\Sigma_2\); \(\text{MP}^{\text{MP}}\) is complete for \(\Sigma_2\); Quantifier characterization of the arithmetic hierarchy.
- References: [K1] - Supplementary Lecture J, [K2] - Chapter 35
- Week 6
- Proof of the quantifier characterization of the arithmetic hierarchy; placing FIN, REG, COF, TOTAL in the hierarchy using the characterization; FIN is \(\Sigma_2\)-complete using the characterization; Tarski’s undefinability theorem; Productive sets - definition and properties; R.E-intermediate languages - Post’s theorem; From productive sets to simple sets; Construction of a simple set.
- References: [K1] - Supplementary Lecture J, [K2] - Chapter 35, 37
- Week 7
- Notion of a computational resource, deterministic time, multi-tape vs single-tape simulations, crossing sequences, quadratic lower bounds on single-tape machines.
- References: [K2] - Chapter 1
- Week 8
- Linear speed-up theorem, Time hierarchy theorem, simulating multi-tape TMs using 2-tape TMs (Hennie-Stearns construction), translation and padding, time constructibility is necessary - Borodin-Trachtenbrot Gap theorem.
- References: [AB] - Chapter 3, [DK] - Chapter 1
- Week 9
- Proof of the Gap theorem; Space complexity; Robust complexity classes - P,EXP,L,PSPACE; Tape compression, universal TM simulation and the space-hierarchy theorem; Savitch’s theorem; Non-deterministic time and space - simulations and inclusions.
- References: [AB] - Chapter 3, [DK] - Chapter 1
- Week 10
- Non-deterministic time-hierarchy theorem; certificates and efficient verification - witness characterization of \(\mathsf{NP}\); \(\mathsf{NP}\) and \(\mathsf{coNP}\); the \(\mathsf{P}\) vs \(\mathsf{NP}\) problem; reductions and completeness - the canonical \(\mathsf{NP}\)-complete problem; examples of poly-time many-one reductions; parsimonious reductions.
- Reference: [AB] - Chapters 2,3; [DK] - Chapters 1,2
- Week 11
- Cook-Levin theorem; decision and search - self-reducibility; PSPACE completeness -TQBF and winning strategies; logspace reductions - P-completeness and NL-completeness.
- References: [AB] - Chapter 4
- Week 12
- NL-completeness - STCONN and 2SAT; Immerman-Szelepscenyi theorem; Relativization barrier - the Baker-Gill-Solovay theorem.
- References: [AB] - Chapter 4, [K2] - Chapter 4
- Week 13
- Oracle Turing Machines and the Polynomial-time Hierarchy; non-uniform algorithms for SAT - the Karp-Lipton theorem; Probabilistic Complexity - Las Vegas and Monte-Carlo algorithms; the class \(\mathsf{BPP}\).
- References: [AB] - Chapter 5
- Week 14
- Probabilistic Complexity - Las Vegas and Monte-Carlo algorithms; \(\mathsf{BPP}\) vs \(\mathsf{ZPP}\); amplification of success probability of \(\mathsf{BPP}\) algorithms - \(\mathsf{BPP} \subseteq \mathsf{P}/\mathsf{poly}\); BPP and the polynomial hierarchy.
- References: [AB] - Chapter 7