| 1 | Introduction | |
| 2 | Logic, circuits, and gates | |
| 3 | Deterministic finite automata (DFAs) and nondeterministic finite automata (NFAs) | |
| 4 | NFAs and regular expressions | |
| 5 | Non-regular languages and the pumping lemma | Problem set 1 due |
| 6 | Turing machines | |
| 7 | Decidability | Problem set 2 due |
| 8 | Undecidable problems and Post correspondence problem (PCP) | |
| 9 | Mapping reducibility and Rice's theorem | |
| 10 | Self-reference and the recursion theorem | Problem set 3 due |
| 11 | Introduction to cryptography | |
| 12 | Complexity theory | Problem set 4 due |
| | Midterm exam | |
| 13 | Pseudorandom generators and one-way functions | |
| 14 | Public-key cryptography | |
| 15 | More complexity theory | |
| 16 | More NP-completeness | Problem set 5 due |
| 17 | Probabilistic Turing machines and complexity classes | |
| 18 | Trapdoor one-way functions and zero-knowledge proofs | |
| 19 | Probably approximately correct (PAC) learning | |
| 20 | More PAC learning | Problem set 6 due |
| 21 | Introduction to quantum | |
| 22 | Quantum mechanics and BQP | |
| 23 | Quantum algorithms | |