CS 2250
Computability and Complexity
Textbook: Sipser, Michael. 2013. Introduction to the Theory of Computation, 3rd ed. Cengage
Topics:
- Introduction to TOC; mathematical foundations and proof techniques
 - Regular languages; finite automata; regular expressions; non-regular languages
 - Context-free languages; context-free grammars; pushdown automata
 - Church-Turing thesis; Turing machines and variants; algorithms
 - Decidability; diagonalization; undecidable languages
 - Reducibility; computable functions; mapping reducibility
 - Complexity theory: P, NP, NP-complete, NP hard
 
Selected materials
Introduction
- What are automata?
 - What is computability?
 - What is complexity?
 - Some matters of notation
 - Functions as sets
 - Set union
 
Regular languages
Context-free languages
- Material forthcoming
 
The Church-Turing thesis
- Material forthcoming
 
Decidability
- Material forthcoming
 
Reducibility
- Material forthcoming
 
Time complexity
- Material forthcoming