CSCI 265 - Introduction to the Theory of Computation

       



Class
Lectures: Tue, Fri 2:10 PM - 3:25 PM, HN 1516

Professor
Saad Mneimneh, HN 1090F
Office hours: Thu 3:30 pm - 5:30 pm,
or by appointment


Textbook
We will cover topics from the first 7 chapters of Micheal Sipser's book (any edition is ok).

Lectures
(Chapter 0)
- Lecture 0 (never happened): Read and understand Chapter 0.

(Chapter 1)
- Lecture 1: Finite automata, Formal definition of finite automaton, Examples of DFAs, Formal definition of computation with DFA, Regular languages, Regular operators.
- Lecture 2: Non determinism, Formal definition of NFA, Equivalence of NFAs and DFAs, Closure under regular operations.
Here and here you can create your own DFA and NFA and test them.
- Lecture 3: Regular expressions, Formal definition of regular expressions
- Lecture 4: Equivalence with finite automata, Non-regular languages and the pumping lemma.

(Chapter 2)
- Lecture 5: Context-free grammers, Formal definition, Examples, Ambiguity, Chomsky normal form
- Lecture 6: Pushdown automata
- Lecture 7: Equivalence of PDA and CFG, Pumping Lemma for CFL

(Chapter 3)
- Lecture 8: Turing machines
- Lecture 9: Example Turing machines, accepters vs. deciders
- Lecture 10: More examples of Turing machines
- Lecture 11: Turing machine variants and equivalence.
- Lecture 12: Turing machine vs. enumerators, and the notion of algorithms.

(Chapter 4)
- Lecture 13: Decidability, Acceptance, Emptiness, and Equivalence of DFAs and NFAs: A_DFA, A_NFA, E_DFA, EQ_DFA, A_CFG, (undecidable) E_CFG
- Lecture 14: Countable vs. uncountable, diagonalization, the Halting problem

(Chapter 5)
- Lecture 15: Reducibility, more undecidable problems, A_TM, HALT_TM, E_TM, REGULAR_TM, the complement of A_TM is not Turing recognizable
- Lecture 16: Reducibility by computation history, A_LBA is decidable, E_LBA is undecidable
- Lecture 17: Mapping reducibility, EQ_TM and it's complement are not Turing recognizable
- Lecture 18: More examples of mapping redicubility and computation history, ALL_CFG is undecidable
- Lecture 19: The PCP problem, undecidable

(Chapter 7)
- Lecture 20: Time complexity, Big O notation, example TMs time analysis
- Lecture 21: Running time equivalences among TM models, the class P
- Lecture 22: Examples of languages in P, the class NP, polynomial verifiers and polynomial non-determinitic TMs, example problems in NP
- Lecture 23: NP-completeness
- Lecture 24: Polynomial time reductions

Homework
Homework 1, Due 9/8/2017 Solution
Homework 2, Due 9/15/2017 Solution
Homework 3, Due 9/26/2017 Solution
Homework 4, Due 10/13/2017 Solution
Homework 5, Due 10/27/2017 Solution
Homework 6, Due 11/10/2017 Solution
Homework 7, Due 11/21/2017 Solution
Homework 8, Due 12/12/2017 Solution

Grading
Homework: 20%
Test 1: 20%
Test 2: 20%
Final Test: 40%