Comp. Sci. 601
Theory of Computation
Handouts and Notes:
- Information about
readings and topics to be coverered and other handouts will be posted on
the syllabus -- not yet up to date yet.
- If some of the symbols that I have been using seem Greek to you, here
is a Symbol Table to help you remember what they mean.
| CMPSCI 601: Office Hours, Spring 2017|
| Neil Immerman, CS 374,
firstname.lastname@example.org|| Tu 12-1, W 1:30-2:30, and by appointment.
What is this course about?
This course presents an in-depth introduction to the main
models and concepts of the mathematical theory of
computation, including: Computability, Complexity, and
Logic. I will emphasize the ability to go from a
concrete problem to a mathematical model; and, after
proving things about the mathematical model, to correctly
interpret what we have learned about the concrete
problem. For example, we will learn how to tell whether
a problem we need to solve is NP complete, or even
undecidable, and if so, what to do about it.
Computational Complexity: A Modern Approach
by Sanjeev Arora and Boaz Barak, Cambridge University Press.
Meeting times: T, Th, 2:30 -- 3:45, room E-Lab 323.
First meeting Tues., Jan. 24, 2017.
Prerequisites: A course on Finite Automata and Formal Languages such as CMPSCI 501.
Questions: We will be using Piazza: Sign
Up Here, and please ask questions on Piazza where other students and/or I can answer and
we can all benefit from the discussion.
Here is a diagram of the world of computability and complexity: