CS 301 
Theory of Computation 
Spring 2018 
Theory of Computation
Syllabus
Below is a tentative schedule of the topics to be covered in the
course. They fall into three major areas; each area will be covered
in roughly four weeks of class periods. The readings corresponding to each
topic are in the text by Kozen.
By the end of the course, you should have a good general understanding
of what it means for a set to be regular, contextfree, recursive, and
r.e.; of the capabilities of finite automata, pushdown automata, and
Turing machines; and of how to describe sets using regular expressions
and contextfree grammars.
Finite Automata and Regular Expressions
 1. Tues 2/13 
Course Introduction (Kozen 1)

Finite alphabets, strings, languages, decision
problems
(notes)
Handouts:
Syllabus,
Course Info,
Warmup problems and
Solutions,
Homework 1
 2. Thurs 2/15 
Regular sets (Kozen 2, 3)

Examples and formal definition of deterministic
finite automata
 3. Tues 2/20 
Closure properties of regular sets (Kozen 4)

Quiz 1 on Lectures 12
The product construction
 4. Thurs 2/22 
Nondeterminism (Kozen 5)

NFAs, an example of the subset construction
Homework 1 due
Handouts:
HW1 Solutions,
Homework 2
 5. Tues 2/27 
NFAs (Kozen 6)

Quiz 2 on Lectures 24
Subset construction, epsilontransitions, more closure rules
 6. Thurs 3/1 
Regular expressions (Kozen 8, 9)

Equivalence of regular expressions and finite automata
Homework 2 due
Handouts:
HW2 Solutions,
Homework 3
 7. Tues 3/6 
Limitations of Finite Automata (Kozen 11)

Quiz 3 on Lectures 56
Pumping Lemma for regular sets
 8. Thurs 3/8 
Using the Pumping Lemma (Kozen 12),
DFA State Minimization (Kozen 13)

Use of the Pumping Lemma to show nonregularity
The quotient construction
Homework 3 due
Handouts:
HW3 Solutions,
Homework 4
Pushdown Automata and Context Free Languages
 9. Tues 3/13 
Contextfree grammars and languages (Kozen 19)

Quiz 4 on Lectures 78
Examples of CFLs and CFGs
 10. Thurs 3/15 
CFGs (Kozen 1920)

Formal definitions, pushdown automata
Homework 4 due
Handouts:
HW4 Solutions,
Homework 5,
Sample Midterm questions (not due),
Solutions
 11. Tues 3/20 
Normal Forms (Kozen 21)

Quiz 5 on Lectures 910
Chomsky and Greibach normal forms
 12. Thurs 3/22 
Pumping Lemma for contextfree languages (Kozen 22)

Formal theorem, games with the demon
Homework 5 due
Handouts:
HW5 Solutions,
Homework 6

Thurs 3/22 
Midterm at 7:05 PM in MBH 104 (bring a doublesided study sheet)

Spring Break
 13. Tues 4/3 
Closure properties of CFLs

Quiz 6 on Lectures 1112
The CKY Algorithm (Kozen 27)
 14. Thurs 4/5 
Wrapup of PDAs and CFLs

Homework 6 due
Handouts:
HW6 Solutions,
Homework 7
General Computability
 15. Tues 4/10 
Turing Machines and general computability (Kozen 28)

Quiz 7 on Lectures 1314
Church's Thesis, universality, definition of Turing machines
and their configurations
 16. Thurs 4/12 
More on Turing Machines (Kozen 29),
Variants of the TM (Kozen 30)

Recursive and recursively enumerable sets, examples of Turing
machines
Enumeration machines
Homework 7 due
Handouts:
worksheet solutions,
HW7 Solutions,
Homework 8
 17. Tues 4/17 
Decidability (Kozen 31)

Decidability, semidecidability, Universal Turing machines
Undecidability of membership and halting
 18. Thurs 4/19 
Some decidable and undecidable problems (Kozen 32, 33)

Proofs of decidability and undecidability, reductions
Homework 8 due
Handouts:
Decidable and undecidable problems,
HW8 Solutions,
Homework 9
 19. Tues 4/24 
Undecidability (Kozen 33)

Quiz 9 on Lectures 1718
Reductions
 20. Thurs 4/26 
Reductions (Kozen 33)

Homework 9 due
Handouts:
Classification of sets,
HW9 Solutions,
Homework 10
 21. Tues 5/1 
Rice's Theorem (Kozen 34),

Quiz 10 on Lectures 1920
Handouts:
Kleene Hierarchy  empty and
Kleene Hierarchy  with examples
 22. Thurs 5/3 
Computational Complexity Hierarchy

Homework 10 due
Handouts:
HW10 Solutions,
Review problems,
P vs NP,
Chomsky Hierarchy and Computational Complexity Hierarchy
Homework 11
 23. Tues 5/8 
NPCompleteness of the Satisfiability Problem

Handouts:
Reduction examples,
Cook's Proof
(Garey and Johnson 2.6, Aho, Hopcroft, Ullman 10.210.3)
 24. Thurs 5/10 
Course wrapup

Review
Course response forms and
Tutor evaluation forms
Handout:
Review Solutions

Final  Selfscheduled May 1621
CS 301 Syllabus 
Course Information