Course Overview
Pre-requisites
Computer Architecture, Discrete Mathematical Structures
Textbook & References
Theory of Computation: Automata, Formal Languages, Computation, and Complexity
Course Deployment
Module 1: Finite Automata & Regular Languages
Module 2: Context-Free Languages, Grammars & Pushdown Automata
Module 3: Turing Machines, Chomsky Hierarchy & Complexity Theory
- Introduction to Turing Machines
- TM as Function Computer
- Variants of Turing Machines
- Computational Complexity of TMs
- Universal Turing Machine
- Turing-Recognizable Languages
- Recursive & Recursively Enumerable Languages
- Decidability and Undecidability
- Complexity Classes (P, NP, NP-Complete)
- Rice’s Theorem