Calendar · Lecture Notes
MIT OpenCourseWare
Automata, Computability, and Complexity
Art: Palmer, Edward, 1803-1872, Figures 113-123. Plate Electrical Machines, 1840 · Public domain
- Instructor
- Prof. Scott Aaronson
- Term
- Spring 2011
- Level
- Undergraduate
- What's inside
- 1 lecture note · 30 other files · 3 web pages
- Materials open
- MIT OCW
About this course
Source: MIT OpenCourseWare 6.045J Automata, Computability, and Complexity, Spring 2011, Prof. Scott Aaronson — original course page on ocw.mit.edu ↗. License: CC BY-NC-SA 4.0. Study order: MIT's own listing order, section by section. Taken from MIT's published course files, downloaded from ocw.mit.edu on September 23, 2026. How RedLectern is built.
Materials are grouped the way MIT organized them. A verified, course-wide order has not been established here.
Before you start
Prerequisites are not listed here. Check MIT's own syllabus for this course.
How this course was organized
What's here, and what isn't
- A lecture sequence of 23 items is confirmed. Assignment and exam materials exist too, but MIT's own order for them could not be verified, so they're shown as materials below rather than a sequence.
Not included here
2 items from the source could not be safely included:
- MIT's page format for this item wasn't recognized clearly enough to place it safely.
- Referenced in a table, but without MIT's own verified order, so it isn't used to claim a sequence.
Materials by section
Grouped by section, as MIT organized them. Not sequenced or ordered.
Lecture Notes
24 files
- Lecture 1 · Introduction Download
- Lecture 2 · Logic, circuits, and gates Download
- Lecture 3 · Deterministic finite automata (DFAs) and nondeterministic finite automata (NFAs) Download
- Lecture 4 · NFAs and regular expressions Download
- Lecture 5 · Non-regular languages and the pumping lemma Download
- Lecture 6 · Turing machines Download
- Lecture 7 · Decidability Download
- Lecture 8 · Undecidable problems and Post correspondence problem (PCP) Download
- Lecture 9 · Mapping reducibility and Rice’s theorem Download
- Lecture 10 · Self-reference and the recursion theorem Download
- Lecture 11 · Introduction to cryptography Download
- Lecture 12 · Complexity theory Download
- Lecture 13 · Pseudorandom generators and one-way functions Download
- Lecture 14 · Public-key cryptography Download
- Lecture 15 · More complexity theory Download
- Lecture 16 · More NP-completeness Download
- Lecture 17 · Probabilistic Turing machines and complexity classes Download
- Lecture 18 · Trapdoor one-way functions and zero-knowledge proofs Download
- Lecture 19 · Probably approximately correct (PAC) learning Download
- Lecture 20 · More PAC learning Download
- Lecture 21 · Introduction to quantum Download
- Lecture 22 · Quantum mechanics and BQP Download
- Lecture 23 · Quantum algorithms Download
- Cryptography Handout Introduction to cryptography and RSA (Courtesy of Leonid Grinberg. Used with permission.) Download
Assignments
- Problem set 1: Number theory and regular languages · Problem sets Download
- Problem set 2: Context-free languages · Problem sets Download
- Problem set 3: The Gödel-Turing mindblower · Problem sets Download
- Problem set 4: Computability and complexity · Problem sets Download
- Problem set 5: NP-completeness and more · Problem sets Download
- Problem set 6: Randomness and cryptography · Problem sets Download
Course outline
Calendar · Lecture Notes
Lecture 2: Logic, circuits, and gates
Calendar · Lecture Notes
Lecture 3: Deterministic finite automata (DFAs) and nondeterministic finite automata (NFAs)
Calendar · Lecture Notes
Lecture 4: NFAs and regular expressions
Calendar · Lecture Notes
Lecture 5: Non-regular languages and the pumping lemma
Calendar · Lecture Notes
Lecture 6: Turing machines
Calendar · Lecture Notes
Lecture 7: Decidability
Calendar · Lecture Notes
Lecture 8: Undecidable problems and Post correspondence problem (PCP)
Calendar · Lecture Notes
Lecture 9: Mapping reducibility and Rice’s theorem
Calendar · Lecture Notes
Lecture 10: Self-reference and the recursion theorem
Calendar · Lecture Notes
Lecture 11: Introduction to cryptography
Calendar · Lecture Notes
Lecture 12: Complexity theory
Calendar · Lecture Notes
Lecture 13: Pseudorandom generators and one-way functions
Calendar · Lecture Notes
Lecture 14: Public-key cryptography
Calendar · Lecture Notes
Lecture 15: More complexity theory
Calendar · Lecture Notes
Lecture 16: More NP-completeness
Calendar · Lecture Notes
Lecture 17: Probabilistic Turing machines and complexity classes
Calendar · Lecture Notes
Lecture 18: Trapdoor one-way functions and zero-knowledge proofs
Calendar · Lecture Notes
Lecture 19: Probably approximately correct (PAC) learning
Calendar · Lecture Notes
Lecture 20: More PAC learning
Calendar · Lecture Notes
Lecture 21: Introduction to quantum
Calendar · Lecture Notes
Lecture 22: Quantum mechanics and BQP
Calendar · Lecture Notes
Lecture 23: Quantum algorithms
MIT OpenCourseWare, Prof. Scott Aaronson, 6.045J Automata, Computability, and Complexity, Spring 2011.
License: CC BY-NC-SA 4.0 · Edition: Spring 2011 · Open the original course on OCW ↗
Organized by RedLectern, independent of MIT and not endorsed by MIT.
Per-resource rights are recorded on each resource; All-Rights-Reserved items are link-only, never mirrored.
