Fall 200, CSE 468: Lectures

The following is the summary of lectures given so far. For each lecture you find the list of topics covered, and the reference material. The numbers indicate sections in Martin's book. The notes contain a detailed list of the topics, and explain the notions which are not explained (or explained differently) in the book.

  1. Wed, Aug 23 Overview of the Syllabus. Contents of the course. [ Notes ]
  2. Mon, Aug 28 Preliminary notions: Basic mathematical objects (sets, relations, functions). [ 1.1. 1.3, 1.4, Notes ]
  3. Wed, Aug 30 Preliminary notions: Correspondence between equivalence relations and partitions. Classical propositional logic. [ 1.4.1, 1.2.1, 1.2.2, Notes ]
  4. Fri, Sep 1 Preliminary notions: First-Order Logic. Principle of Mathematical induction. Inductive definitions and Principle of Structural Induction. [ 1.2.3, 2.2, 2.4, 2.5, Notes ]
  5. Wed, Sep 6 The concept of alphabet, string and language. Operations on languages. Regular expressions and regular languages. [ 1.5, 3.1, Notes ]
  6. Fri, Sep 8 Use of Regular Languages in Computer Science. Language recognition. Examples of automata recognizing regular languages. [ 3.2 Notes ] Assignment 1 distributed. Due Sep 20 in class.
  7. Mon, Sep 11 Formal definition of Finite Automata. Distinguishing one string from another. Lower bound on the number of states of a Finite Automaton recognizing a given language. [ 3.3, 3.4 ]
  8. Wed, Sep 13 FA for the recognition of union, intersection and difference of languages. [ 3.5 ]
  9. Fri, Sep 15 Nondeterministic Finite Automata. Transforming a NFA into an equivalent FA. [ 4.1 ]
  10. Mon, Sep 18 Nondeterministic Finite Automata with lambda transitions. Constructing a NFA-lambda corresponding to a given regular expression. [4.2, 4.3]
  11. Wed, Sep 20 Transforming a NFA-lambda into an equivalent NFA. The Theorem of Kleene. Construction of a regular expression representing the language recognized by a given FA. [4.3]
  12. Fri, Sep 22 The indistinguishability relation associated to a language, and the corresponding partition. Deriving a FA from the indistinguishability relation (when the partition is finite). The theorem of Myhill-Nerode. [ 5.1 ] Assignment 2 distributed. Due Oct 4 in class.
  13. Mon, Sep 25 Exercises in class solved by Mihaela Herescu
  14. Wed, Sep 27 Exercises in class solved by Mihaela Herescu
    Fri, Sep 29 Class canceled
  15. Mon, Oct 2 The theorem of Myhill-Nerode (cont'd). Example of language whose indistinguishability relation has an infinite number of equivalence classes: L1 = {anbn | n natural number}. Example of language whose indistinguishability relation has a finite number of equivalence classes: L2 = {ambn | m, n natural numbers}. Deriving a FA for L2. [5.1]
  16. Wed, Oct 4 Proof of the theorem of Myhill-Nerode. Constructing a FA from the indistinguishability relation associated to a language. [5.1]
  17. Fri, Oct 6 Minimization of FA. [ 5.2 ] Assignment 3 distributed. Due Oct 18 in class.
    Mon, Oct 9 Fall break
  18. Wed, Oct 11 The pumping lemma for FA. Using the pumping lemma for proving that a language is not regular. [ 5.3 ]
  19. Fri, Oct 13 Decision problems. The notion of decidability. Decidable properties of FA: Emptyness of L(M). [ 5.4 ]
  20. Mon, Oct 16 Decidable properties for FA: Finiteness of L(M). Equivalence of FA. Set-theoretic properties of regular languages. [ 5.4 ]
  21. Wed, Oct 18 Uses of Regular Languages in Computer Science. Limitations of Regular Languages. Example of a language which is not regular: the language of balanced parentheses. Other examples: L1 = {anbn| n is a natural number}. L2 = {x in {a,b}*| #a(x) = #b(x)}. L3 = {x in {a,b}*| x is a palindrome}. Expressing the above langauges inductively. Expressing the above languages by using a grammar. Context-free grammars. Language generated by a context-free grammar. [ 5.5, 6.1 ] Assignment 4 distributed. Due Nov 6 in class.
  22. Fri, Oct 20 Exercises of preparation for the Midterm exam.
  23. Mon, Oct 23 Midterm exam (in class)
  24. Wed, Oct 25 Example of a context free language: arithmetical expressions. Derivation trees and ambiguity. Elimination of ambiguity from the language of expressions: enforcing precedence and associativity rules on the operators. [ 6.2, 6.4, 6.5 ]
  25. Fri, Oct 27 Generating the language L of strings with the same number of a's and b's with a non-ambiguous grammar G. Proof by induction that G generates L [ Notes ]
  26. Mon, Oct 30 Proof by induction that G generates L (Cont'ed). Proof by induction that G is non-ambiguous. [ Notes ]
  27. Wed, Nov 1 Other examples of proving by induction that a CF grammar generates a given language.
    Example 1: the grammar   S -> lambda | a S b
    Example 2: the grammar   S -> lambda | a S b | b S a | S S.
  28. Fri, Nov 3 Union, concatenation, and Klenee's star of context-free languages. Regular languages are context-free. Recognition of palindromes by using a FA with the auxilium of a stack. Other example: recognition of the language {anbn | n >= 0}. Introduction to the concept of Pushdown Automaton. [ 6.3, 7.1 ]
  29. Mon, Nov 6 Formal definition of Pushdown Automaton. Deterministic PDAs. Some context-free languages are inherently nondeterministic. Example: the language of (even) palindromes. [ 7.2, 7.3 ] Assignment 5 distributed. Due Nov 17 in class.
  30. Wed, Nov 8 Correspondence between context-free languages and PDA. Construction of a PDA corresponding to a given CF grammar. Example: the language of balanced parentheses. The pumping lemma for CF langauges. Example: proof that the language L = {anbncn | n > 0} is not CF. [ 7.4, 7.5, 8.1 ]
  31. Fri, Nov 10 Proof of the pumping lemma for CFL. Example: proof that the language L = {xx | x in {a,b}*} is not CF. The class of CFL is not closed wrt the operations of intersection. Example: consider L1 = {anbnck | n, k> 0} and L2 = {akbncn | n, k> 0}: they are both context-free but their intersection is not. The class of CF languages is closed wrt the operation of intersection with a Regular language. Decidable properties of CFL: emptyness and finitness. [ 8.2, 8.3 ]
  32. Mon, Nov 13 The class of CF languages is not closed wrt the operations of complement. Decidable properties of CF languages: membership, emptyness and finitness. Undecidable properties of CF languages: equality, emptyness of intersection, regularity. Introduction to Parsing: example of LL(1) grammar:   S -> T$     T -> lambda | ( T ) T
    [ 8.3 ]
  33. Wed, Nov 15 Elimination of non-determinism with the Look-Ahead technique. LL(1) Grammars. Recursive-descent parsing [ 7.6 ]
  34. Fri, Nov 17 Turing Machines. Computability and the Church-Turing thesis. Formal definition of Turing machine. Turing machines as language acceptors. [ 9.1, 9.2 ] Assignment 6 distributed. Due Dec 4 in class.
  35. Mon, Nov 20 Example: a Turing machine recognizing the language {xx | x in {a,b}*}. Computing functions on strings with Turing machines. [ 9.2, 9.4 ]
    Wed, Nov 22 No class (Thanksgiving break)
    Fri, Nov 24 No class (Thanksgiving break)
  36. Mon, Nov 27 Computable functions. Definition of a TM which computes the sum of two numbers. Extended notions of TM (nondeterministic, multihead, multitape, multidimentional tape, etc.). The extensions do not increase the computational power. Universal TM. [ 9.4-7 ]
  37. Wed, Nov 29 Recursive and recursively enumerable languages. Not all languages are RE. Definition of cardinality (or size) of a set. Countable and uncountable sets. Proof of Cantor that [0,1] is uncountable. [ 10.1, 10.3 ]
  38. Fri, Dec 1 Not all languages are RE (Cont'ed). The set of RE langauges is countable. The set of all languagesis uncountable. Example of a langauge which is not RE: The language NSA. [ 10.3, 10.4 ]
  39. Mon, Dec 4 The language NSA is not RE (Cont'ed). The set SA is not Rec. Techniques for proving that a set is / is not RE / not Rec: Reduction of one language to another. The language H and the Halting problem. Proof by reduction that the set H is not Recursive. The theorem of Rice and undecidable problems. [ 10.4, 12.1, 12.2, 12.4 ]
    Wed, Dec 6 No class
    Fri, Dec 8 No class