CS 575, Theoretical Aspects of Computing.

Regular and context-free languages, pumping lemmas. Introduction to context-sensitive languages. Turing machines and computability. The arithmetic hierarchy. Complexity theory: P, NP, and the polynomial hierarchy.