Lecture 01 (09/26) Introduction; Turing machines; Decision problems; Complexity classes; L, NL, P, NP, PSPACE, EXP, etc. Basic hierarchy theorems Lecture 02 (10/01) Reductions, completeness; Boolean circuits & generic completeness: CVP, Circuit-SAT, SAT, Oracle-SAT (Cor: NP subset of PSPACE) Other examples of NP completeness Lecture 03 (10/03) NP-completeness, contd. Fagin's theorem (statement only) and the importance of NP Very hard optimization problems; Polynomial-time hierarchy Lecture 04 (10/08) Reducibility and Completeness for space-bounded classes: 1-GAP, GAP, Succinct-GAP, QBF (Cor: NL subset of P, PSPACE subset of EXP) Lecture 05 (10/10) Savitch's theorem: NL subset of DSPACE[log^2 n] (Cor: NPSPACE = PSPACE) The Immerman--Szelepscenyi theorem: NL = coNL Time permitting: Counting problems; the classes #P and #L; #SAT and #STCON Completeness of the Permanent and the Determinant, resp., for these classes Lecture 06 (10/15) The Boolean circuit model; parallel computation P/poly, AC^0, NC^1, NC^2, NC, SC Their relationship to L and NL: NC^1 subset of L subset of NL subset of NC^2 Mention linear algebra Lecture 07 (10/17) Brief discussion of "abstract" vs. "concrete" complexity results Parity not in AC^0; Hastad's switching lemma The results of Kannan, Nepomnjascii, Fortnow, Fortnow--van Melkebeek (eg., SAT not in DTISP[n polylog n, n^{0.99}] State both, prove one set. Lecture 08 (10/22) Enter randomization: mention primality (yes!), zero-testing, perfect matching, Frievalds, USTCON. The classes RP, BPP, ZPP; BPP subset of PH (Sipser's proof); Valiant--Vazirani; Lecture 09 (10/24) (Revisit) Counting complexity classes; the classes #P and PP Toda's theorem Lecture 10 (10/29) USTCON - mention theorem of AKLLR; Nisan's pseudorandom generator RL subset of SC Lecture 11 (10/31) Saks--Zhou: BPL subset of DSPACE[log^{3/2} n] Lecture 12 (11/05) Efficient proof-checking via randomness: relaxations and restrictions (MA, PCP) MA subset of PH (co-NP subset of MA implies PH collapses) PCP and hardness of approximation (of clique) Lecture 13 (11/07) NP subset of PCP[poly, 1] Lecture 14 (11/12) NP subset of PCP[polylog, polylog] Lecture 15 (11/14) NP subset of PCP[log, polylog] Lecture 16 (11/19) Likely: No class due to FOCS Unlikely: Composition of PCPs, complete NP = PCP[log n, 1] and do a sketch of the low-degree tester in Lecture 17 Lecture 17 (11/21) Composition of PCPs, complete NP = PCP[log n, 1] Lecture 18 (11/26) Interaction in proof-checking: AM, IP, Graph non-isomorphism AM = IP; AM[c] = AM[2] Lecture 19 (12/03) IP = PSPACE; Multi-prover protocols, Proof systems; MIP = NEXPTIME Lecture 20 (12/05) SZK; Graph isomorphism; SZK = IP with 1 bit (+ ugly restriction)