Theory of Computation
Models of computation, decidability, and Turing machines.
Theory of Computation addresses models of computation, decidability, and turing machines. It sits within Theoretical Foundations and inherits that area’s core questions about correctness, scale, and tractability. This page surveys the conceptual axes of the topic and points to the references that frame ongoing research and teaching. The intent is to be useful both as an entry point for newcomers and as an index for practitioners cross-checking their mental model against the field’s primary sources.
Work on theory of computation can be organised around a few interlocking concerns: the formal objects under study, the algorithms or systems that compute over them, the resource trade-offs (time, memory, communication, statistical efficiency), and the empirical or theoretical guarantees that practitioners rely on. The sources cited below approach the topic from a mix of these angles.
Foundational references
Sipser, Introduction to the Theory of Computation (2012) is a standard reference for this material and is used both as a curriculum anchor and as a long-form survey of techniques. Hopcroft, Introduction to Automata Theory, Languages, and Computation (2006) is a standard reference for this material and is used both as a curriculum anchor and as a long-form survey of techniques.
Historical context
On Computable Numbers, with an Application to the Entscheidungsproblem (Turing, 1936) situates the topic in its historical trajectory; revisiting it clarifies which ideas in current practice are recent and which trace back to the field’s founding texts.
Open methodological questions in theory of computation cluster around how to compose the techniques above under realistic constraints — scale, adversarial inputs, partial observability, and shifting workloads. The cited references give the precise statements, proofs, and empirical evaluations that this overview only sketches; downstream topic pages drill into specific subfields.
Prerequisites
Sources
- textbook · primary · 2012Introduction to the Theory of Computationsipser-2012
- textbook · primary · 2006Introduction to Automata Theory, Languages, and Computationhopcroft-2006
- paper · historical · 1936turing-1936
In context
Where this topic sits in the prerequisite graph. Click any node to jump.
Explore
- 01
Finite Automata
DFAs, NFAs, equivalence, minimization, and regular languages.
- 02
Regular Languages
Regular expressions, closure properties, and pumping lemma.
- 03
Context-Free Languages
CFGs, pushdown automata, parsing, and the CFL hierarchy.
- 04
Turing Machines
Turing machines, universality, and the Church-Turing thesis.
- 05
Computability and Undecidability
Halting problem, recursive vs recursively enumerable sets, Rice's theorem.
- 06
Lambda Calculus
Untyped and typed lambda calculi, reduction, and Church encodings.
- 07
Type Theory
Simply typed, polymorphic, and dependent type systems.
- 08
Category Theory for CS
Functors, monads, and categorical semantics in computer science.
Review this topic
This page was drafted by an agent and is waiting on expert review. Spotted a wrong prerequisite, a missing concept, a misattributed source, or a factual slip? Tell us — your review opens a tracked issue maintainers act on.