CS/Math 361
Theory of Computation


This course introduces a formal framework for investigating both the computability and complexity of problems. We study several models of computation including finite automata, regular languages, context-free grammars, and Turing machines. These models provide a mathematical basis for the study of computability theory -- the examination of what problems can be solved and what problems cannot be solved-and the study of complexity theory -- the examination of how efficiently problems can be solved. Topics include the halting problem and the P versus NP problem.


To simplify printing of the information about CS/Math 361 found on these pages, a single page on which all the information about CS/Math 361 is grouped together is also available.