CSCI 338: Computer Science Theory

Fall 2021

Date Lecture Topic Reading Homework Project

26 Aug

Introduction/Background
 
Notes
 
 
 
 
31 Aug
02 Sep
DFA
DFA
31-40
40-44
HW 1 (Due 07 Sep)
Solution
Proj 1 (Due 30 Sep)
 
07 Sep
09 Sep
NFA
NFA Equivalance (Canceled)
47-54
54-63
HW 2 (Due 14 Sep)
Solution
 
 
14 Sep
16 Sep
Regular Expressions
Pumping Lemma
44-47, 58-63
77-82
HW 3 (Due 21 Sep)
Solution
 
 
21 Sep
23 Sep
Pumping Lemma Handout
Pumping Lemma
77-82
77-82
HW 4 (Due 28 Sep)
Solution
 
 
28 Sep
30 Sep
Review & CFL/PDA
Quiz 1
101-124
 
 
 
 
 
05 Oct
07 Oct
Turing Machines
Decidability
165-172, 182-187
193-197
HW 5 (Due 12 Oct)
Solution
Proj 2 (Due 28 Oct)
Tester
12 Oct
14 Oct
Decidability
Undecidability
197-200
201-210, 216-217
HW 6 (Due 19 Oct)
Solution
 
 
19 Oct
21 Oct
Undecidability
Undecidability
215-219
219-220
HW 7 (Due 26 Oct)
Solution
 
 
26 Oct
28 Oct
Review
Quiz 2
 
 
 
 
 
 
02 Nov
04 Nov
Time Complexity, P, NP
NP
275-298
 
HW 8 (Due 09 Nov)
Solution
Proj 3 (Due 09 Dec)
Tester
09 Nov
11 Nov
NP-Completeness
Veteran's Day - No Class
299-311
 
HW 9 (Due 16 Nov)
Solution
 
 
16 Nov
18 Nov
Clique
Vertex Cover
311-322
Notes
HW 10 (Due 30 Nov)
Solution
 
 
23 Nov
25 Nov
Thanksgiving - No Class
Thanksgiving - No Class
 
 
 
 
 
 
30 Nov
02 Dec
Dominating Set
Class Canceled
Notes
 
HW 11 (Due 07 Dec)
Solution
 
 
07 Dec
09 Dec
Review
Quiz 3
 
 
 
 
 
 
16 Dec Final Exam, 2:00 - 3:50 pm      
Schedule subject to change. Refresh webpage (or hit F5) to view current page.

Lecture

Instructor

Sean Yaw

Grader/TA

Daniel Laden. Office hours: Wednesday 8:00 - 10:00 am in Barnard 259.

Textbook

Course Prerequisites

Course Objectives

MSU course description: Formal languages, theory, automata, Turing Machines, computability, the Church-Turing thesis, computational complexity, and NP-completeness.

At the end of the course, my goal is for you to be able to:

  1. Understand what NP-Complete problems are, have an intuition for the solvability of new problems, and have familiarity with techniques to deal with NP-Complete problems.
  2. Given a problem, understand it and develop a clear, efficient plan to solve it.
  3. Be comfortable proving statements and formulating clear arguments.
  4. Understand that some problems cannot be solved.
  5. Understand various computational models and their inherit limitations.

Grading

At the end of the semester, grades will be determined (after any curving takes place) based on your class average as follows:

Late Policy

If you submit a homework assignment late, but within 12 hours of being due, the maximum credit you can receive is 50%. After 12 hours, you receive 0. If you submit a project late, but within 24 hours, the maximum credit you can receive is 70%. After 24 hours, you receive 0.

Collaboration Policy

Failure to abide by these rules will result in everyone involved being reported to the Dean of Students and could result in failing the course.