CPS140:

Mathematical Foundations of Computer Science

Spring, 2001

 

Lecture Room: LSRC D106

Lecture Times: Tuesdays, Thursdays 2:15-3:30 PM

 

Class Lecture Schedule and Lecture Notes

 

Thurs, January 11 Lecture 1:

Introduction

(Readings: Sipser, Chapter 0.).

 

Tues, January  16 Lecture 2:

Mathematical Notations for Computations

(Readings: Sipser, Chapter 0, pages 3-25).

 

Thurs, January 18 Lecture 3:

Finite State Automata (FSAs), Part 1

(Readings: Sipser, Chapter 1, pages 31-76).

 

Tues, January  23 Lecture 4:

Finite State Automata (FSAs), Part 2

(Readings: Sipser, Chapter 1, pages 76-83).

 

Thurs, January 25 Lecture 5:

  PDAs / CFLs, Part 1: Context Free Grammars

(Readings: Sipser, Chapter 2.1, pages 91-100).

 

Tues, January  30 Lecture 6:

  PDAs / CFLs, Part 2: Pushdown Automata

(Readings: Sipser, Chapter 2.2, pages 101-104).

 

Thurs, February 1 Lecture 7:

PDAs / CFLs, Part 3: The CFLs are the languages of the PDAs

(Readings: Sipser, Chapter 2.2, 2.3 pages 104-119).

 

Tues, February 6 Lecture 8:

Turing Machines  

(Readings: Sipser, Chapters 3.1, 3.2, pages 125-141).

See also Biography of Alan Turing

 

Thurs, February 8

Quiz on Automata, Regular & Context Free Languages

 

Tues, February 13 Lecture 9:

Decidability, Part 1: Decidable Problems

(Readings: Sipser, Chapter 3.3, pages 142-147, Chapter 4.1, pages 151-156).

 

Thurs, February 15 Lecture 10:

Decidability, Part 2: The Halting Problem

(Readings: Sipser, Chapter 4, pages 151-168).

 

Tues, February 20 Lecture 11:

Decidability, Part 3: The Halting Problem is Undecidable

(Readings: Sipser, Chapter 4.2, pages 159-168)

Background Reading:

Set Theory and Cantor's Diagonalization Method

 

Thurs, February 22 Lecture 12:

Reducibility, Part 1: Reductions Between Problems

(Readings: Sipser, Chapter 5, pages 171-195).

 

Tues, February 27 Lecture 13:

Reducibility, Part 2: Linear Bounded Automata

(Readings: Sipser, Chapter 5, pages 171-195).

 

Thurs, March 1 Lecture 14:

Reducibility, Part 3: Computable Functions and Enumerable Sets  (Readings: Sipser, Chapter 5, pages 171-195).

 

Tues, March 6 Lecture 15:

Review of Automata & Languages: Decidability & Undecidability

 

Thurs, March 7: In class Midterm Exam on Automata & Languages: Decidability & Undecidability

 

Also, Thurs, March 7, 6PM:

Makeup Quiz on Automata, Regular & Context Free Languages

 

March 9-19 Spring Recess

 

Prior to March 20, please review material on complexity of algorithms (CPS130 material):

Complexity, Part 1: Polynomial Time Computations

(Readings: Sipser, Chapter 7.1, pages 225-233, and Chapter 7.2, pages 234-240).

 

Tues, March 20 Lecture 16:

Complexity, Part 2: Nondeterministic Polynomial Time

and Complexity, Part 3: Satisfiability & Circuits

(Readings: Sipser, Chapter 7.4, pages 241-259).

 

Thurs, March 22 Lecture 17:

NP-completeness, Part 1: An NP Complete Problem

(Readings: Sipser, Chapter 7.4, pages 248-259).

 

Tues, March 27 Lecture 18:

NP-completeness, Part 2: Lots More NP Complete Problems

(Readings: Sipser, Chapter 7.5, pages 254-271).

 

Thurs, March 29 Lecture 19:

Space Complexity, Part 1: Deterministic and Nondet. Space

(Readings: Sipser, Chapters 8.1 pages 277-280).

 

Tues, April 3

Space Complexity, Part 2: PSPACE-Complete Problems

(Readings: Sipser, Chapters 8.2, 8.3, pages 281-283).

 

Thurs, April 5 Lecture 20:

Quiz on NP-Completeness

 

Tues, April 10 Lecture 21:

Space Complexity, Part 3: PSPACE Complete Games

(Readings: Sipser, Chapter 8.3, pages 283-289).

 

(Optional Extra reading: Space Complexity, Part 4:  NL and L  Sipser, Chapter 8.4,8.5,8.6, pages 294-302)

 

Thurs, April 12 Lecture 22:

Computations using Random Choice 

(Readings: Sipser, Chapter 10.2, pages 333-339).

 

(Optional Extra Reading:  Randomized Primality Testing )

 

Tues, April 17 Lecture 23:

 Approximately Optimal Computations

(Readings: Sipser, Chapter 10.1, pages 333-334).

 

(Optional Extra Reading:  Approximation Theory )

 

Thurs, April 19 Lecture 24:

Quiz on Space Complexity

 

Tues, April 24 Last Lecture 25:

Review of Course Material & Overview of Final Exam Topics