MCS 441 - Theory of Computation I
University of Illinois - Chicago
Spring 2018


This course will cover basic computability and complexity theory. We will examine the central questions ''What is computable in principle?" and ''What is efficiently computable?" Covered material will likely include, but not be limited to: automata, regular languages, and nondeterminism; context-free languages and pushdown automata; Turing machines and the Church-Turing thesis; decidability and the halting problem; Kolmogorov complexity; time complexity, P vs. NP, the Cook-Levin theorem, and reductions; and time permitting, PSPACE, L, NL, or other advanced topics.

Basic Information

Syllabus: pdf
Time and Location: M-W-F 2:00-2:50pm, Lincoln Hall (TH) 207
Instructor Contact Information: Lev Reyzin, SEO 418, (312)-413-3745,
Textbook: M. Sipser, Introduction to the Theory of Computation, 3rd edition
Office Hours: M 1:00PM-1:50PM, W 11:00AM-11:50AM

Exam Dates

Midterm 1: 2-2:50pm, Friday February 16th (in class)
Midterm 2:
Final Exam: 1-3pm, Wednesday May 9th

Problem Sets

problem set 1 due 2/5/18
problem set 2 due 2/14/18

Lectures and Readings

Note: lectures will have material not covered in the readings.

Lecture 1 (1/17/18)
covered material: intro to the course, overview of covered material, intro to DFAs
reading: chapter 0

Lecture 2 (1/19/18)
covered material: DFA examples, their formal description, defining computation
reading: begin chapter 1.1

Lecture 3 (1/22/18)
covered material: regular languages, the regular operations
reading: continue chapter 1.1

Lecture 4 (1/24/18)
covered material: closuring of regular languages under union, intro to nondeterminism
reading: finish chapter 1.1, begin chapter 1.2

Lecture 5 (1/26/18)
covered material: equivalence of NFAs and DFAs, closure of RLs under concatenation and star
reading: finish chapter 1.2
other: problem set 1 assigned

Lecture 6 (1/29/18)
covered material: intro to regular expressions
reading: begin chapter 1.3

Lecture 7 (1/31/18)
covered material: regular expressions are equivalent to regular languages, GNFAs
reading: finish chapter 1.3

Lecture 8 (2/2/18)
covered material: nonregular languages and the pumping lemma
reading: chapter 1.4

Lecture 9 (2/5/18)
covered material: intro to CFGs and CFLs, their formal definition, some examples
reading: begin chapter 2.1
other: problem set 2 assigned

Lecture 10 (2/7/18)
covered material: regular languages are a proper subset of context-free languages
reading: continue chapter 2.1
other: midterm 1 announced