Graduate Computational Complexity Theory

Course ID 15855

Doctoral Breadth Course: Algorithms and Complexity - (-)
Classes marked with a "-" (dash) are intended as more advanced topics for CSD doctoral and 5th year master's students in the specific research area.

Description

Potential topics: Models and Time Hierarchy Theorem. Nondeterminism, padding, Hopcroft-Paul-Valiant Theorem. Circuits and advice. Randomized classes. Cook-Levin Theorem and SAT. Nondeterministic Time Hierarchy Theorem, and nondeterministic models. Oracles, alternation, and the Polynomial Time Hierarchy. Kannan's Theorem, Karp-Lipton, and PH vs. constant-depth circuits. Time-Space tradeoffs for SAT. Randomized classes vs. PH. Interactive proofs and the AM hierarchy. NP in BPP implies PH in BPP, and Boppana-Hastad-Zachos. BCGKT Theorem and Cai's Theorem. Counting classes and the permanent. Valiant's Theorem. Algebraic Complexity. IP = PSPACE and interactive proofs. Instance checkers and Santhanam's Theorem. Random restrictions and AC0 lower bounds for parity. Monotone circuit lower bounds. Razborov-Smolensky lower bounds for AC0[p]. Valiant-Vazirani and Toda Theorems. Beigel-Tarui Theorem. Hardness vs. Randomness and Nisan-Wigderson. Hardness amplification and derandomization. Williams's Theorem. Natural proofs and barriers.

Required Background Knowledge
An undergraduate course in computational complexity theory, covering most of "Part III" of Sipser and/or most of Carnegie Mellon's 15-455.