CS 301 Theory of Computation Spring 2018

# 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, context-free, 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 context-free 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, Warm-up 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 1-2
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 2-4
Subset construction, epsilon-transitions, 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 5-6
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 - Context-free grammars and languages (Kozen 19)
Quiz 4 on Lectures 7-8
Examples of CFLs and CFGs

10. Thurs 3/15 - CFGs (Kozen 19-20)
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 9-10
Chomsky and Greibach normal forms

12. Thurs 3/22 - Pumping Lemma for context-free 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 double-sided study sheet)

Spring Break
13. Tues 4/3 - Closure properties of CFLs
Quiz 6 on Lectures 11-12
The CKY Algorithm (Kozen 27)

14. Thurs 4/5 - Wrap-up 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 13-14
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 17-18
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 19-20
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 - NP-Completeness of the Satisfiability Problem
Handouts: Reduction examples, Cook's Proof (Garey and Johnson 2.6, Aho, Hopcroft, Ullman 10.2-10.3)

24. Thurs 5/10 - Course wrap-up
Review
Course response forms and Tutor evaluation forms
Handout: Review Solutions

Final - Self-scheduled May 16-21

CS 301 Syllabus   |   Course Information