Syllabus

Lecture Date Topic
Lecture 1, Monday 1/7 Admin; Course Overview, Finite automata, closure properties [Sipser 1.1, 1.2]
Lecture 2, Wednesday 1/9 No class.
Lecture 3, Monday 1/14 NFAs. Equivalence of DFAs and NFAs. FA constructions. [Sipser 1.2]
Lecture 4, Wednesday 1/16 Regular expressions; equivalence with finite automata [Sipser 1.3]
Monday 1/21 Martin Luther King Day (Holiday)
Lecture 5, Wednesday 1/23 Pumping lemma and non-regular languages. [Sipser 1.4]
Lecture 6, Monday 1/28 Applications of pumping lemma. Context-free grammars. [Sipser 2.1]
Lecture 7, Wednesday 1/30 Normal forms. Closure Properties. Pushdown automata; equivalence with CFGs [Sipser 2.2]
Lecture 8, Monday 2/4 Closure properties of CFLs.
Wednesday 2/6 Pumping lemma for CFLs. Decision procedures for CFLs [ Sipser 2.3]
Lecture 9, Monday 2/11 In class Mid term
Lecture 10, Wednesday 2/13 Introduction to Turing machines. Church-Turing thesis. [Sipser 3.1, 3.3] Evidence for the C-T Thesis: TM variants; Random Access Machines. Review of infinite sets. [ Sipser 3.2]
Monday 2/18 President's Day (Holiday)
Lecture 11, Wednesday 2/20 Undecidable languages; diagonalization [ Sipser 4.1 & 4.2]
Lecture 12, Monday 2/25 The language A_{TM} and the Halting Problem [ Sipser 4.2]
Lecture 13, Wednesday 2/27 Reductions between problems; mapping reducibility; examples [ Sipser 5.3]
Lecture 14, Monday 3/3 The classes P and NP, co-NP. [Sipser 7.1, 7.2, 7.3] [ Sipser 5.1 & 5.2]
Lecture 15, Wednesday 3/5 Polynomial-time reductions; NP-completeness; examples [ Sipser 7.4 & 7.5]
Lecture 16, Monday 3/10 More examples. Proof of Cook's Theorem. PSPACE and NPSPACE. Savitch's theorem. [ Sipser 7.4 & 7.5]
Lecture 17, Wednesday 3/12 A survey of complexity classes [ Sipser 8.1-8.2]