Automata and Computation Theory (Spring 2018)

Time and Location: TTh 1:30-2:45pm, Hodson 210.

Instructor: Xin Li. Office hours: Wednesdays 10:30am-12:00pm, Malone 215, or by appointment


Course description: This course is an introduction to the theory of computing. Topics include design of finite state automata, pushdown automata, linear bounded automata, Turing machines and phrase structure grammars; correspondence between automata and grammars; computable functions, decidable and undecidable problems, P and NP problems, NP-completeness, and randomization. Students may not receive credit for 600.271 and 600.471 for the same degree.

Pre Requisite: discrete math or permission.

Required Textbook: Michael Sipser, Introduction to the Theory of Computation, Second Edition.

Learning paragraph writing 1

Homework 1 Solution

Learning paragraph writing 2

Homework 2 Solution

Learning paragraph writing 3

Homework 3 Solution

Midterm 1 practice problems

Learning paragraph writing 4

Homework 4 Solution

Homework 5 Solution

Midterm 1 Solution

Midterm 2 practice problems

Learning paragraph writing 5

Learning paragraph writing 6

Homework 6 Solution

Midterm 2 Solution

Learning paragraph writing 7

Homework 7 Solution

Learning paragraph writing 8

Homework 8 Solution

Final Exam practice problems

An article about Alan Turing

A website about Turing and the history of modern computing

Godel's letter to von Neumann

Clay Institute's official page about the P vs. NP problem

Lance Fortnow's exposition of the P vs. NP problem