18.404J | Fall 2020 | Undergraduate, Graduate

Theory of Computation

Course Description

This course emphasizes computability and computational complexity theory. Topics include regular and context-free languages, decidable and undecidable problems, reducibility, recursive function theory, time and space measures on computation, completeness, hierarchy theorems, inherently complex problems, oracles, …
This course emphasizes computability and computational complexity theory. Topics include regular and context-free languages, decidable and undecidable problems, reducibility, recursive function theory, time and space measures on computation, completeness, hierarchy theorems, inherently complex problems, oracles, probabilistic computation, and interactive proof systems.
Learning Resource Types
Editable Files
Exams
Instructor Insights
Lecture Notes
Lecture Videos
Problem Sets
A man in front of a black screen with text and images.
Professor Michael Sipser teaching Lecture 14 of Theory of Computation. (Image by MIT OpenCourseWare.)