CS 601 Algorithmic Complexity
Define models of computation including finite state machines,
pushdown automata and Turing machines.
Prove whether a language can be decided by a specific
model of computation.
Define notions of reducibility, hardness and completeness
among classes of languages.
Define common complexity classes, including L, NL, P, NP, co-NP, PSPACE
and EXPTIME and explain the relationships between them.
Prove that specific problems are NP-complete.
Identify NP-complete problems for which approximate solutions can be efficiently
computed, and problems that are hard to approximate.