CMPS 260 (Theoretical Foundations of Computer Science)
Spring 2022
Syllabus
Student File Submission System
Test/Quiz Information
Final Exam, 3pm—5pm on Wednesday, May 18 (open book/notes/etc.)
Preview
Midterm exam on April 27:
Preview
Sample solutions
Quiz #1 (March 9)
Sample Solutions
Homework Assignments
Homework #1: Sets, Relations, Proofs
Sample Solutions
Homework #2: Deterministic Finite Automata
Sample Solutions
Homework #3: Nondeterministic Finite Automata
Sample Solutions
Homework #4: Regular Expressions
Sample Solutions
Homework #5: Regular Languages, Closure Properties, Pumping Lemma
Sample Solutions
Homework #6: DFA minimization, CFGs, q-grammars
Sample Solutions
Homework #7: Chomsky Normal Form, CYK, Pushdown Automata
Sample Solutions
Homework #8: Turing Machines, Recursive/RE Languages, Countable Sets
Programming Assignments
Program #1: DFA Simulation
Lecture Notes
Some Laws of Sets and Logic
Proof by Mathematical Induction
A few examples of proofs
Some Examples of Finite Automata
Subset Construction: Converting an NFA to a DFA
Example
Regular Expressions
Linz Figures: Equivalence of FA's and Regular Expressions
Linz Chapter 4
DFA Minimization
A second example
Pumping Lemma for Regular Languages:
Statement and Proof
Illustration
Removing Useless Symbols from a CFG
Exhaustive Breadth-first Parsing Algorithm for CFG's
Notes on Left-to-Right Top-Down Parsing
CFG to CNF: Algorithm and Example
CYK Algorithm and Example
PDA Examples
CFL Closure Properties
Pumping Lemma for CFL's
Notes on Linz Chapters 9-11
Linz Chapters 9-10
Hopcroft on Turing Machines
Items of Interest
Wikipedia entry for Finite-state machine
Applications of DFA/FSM:
paper by Eric Gribkoff at UC Davis
presentation by Eric Gribkoff at UC Davis