North Carolina Central University Department of Mathematics & Computer Science CISG 5115 - Theory of Computation Fall 2008 Topics Covered Date Aug 19 Aug 21 Aug 26 Aug 28 Sep 02 Sep 04 Sep 09 Sep 11 Sep 16 Sep 18 Sep 23 Sep 25 Sep 30 Oct 02 Oct 07 Oct 09 Oct 14 Topics Covered Introduction to the Course; Methods of Proof – Overview More on Methods of Proof; Proving Equivalence; Proof and Disproof; General Proof and (Counter)Example; Mathematical Induction; Structural and Mutual Induction Central Concepts of Automata Theory: Alphabets, Strings, Languages; Problems as Languages; Informal Introduction to Finite Automata; Marble Rolling Toy Example Deterministic Finite Automata - Formal Definition; Transition Function; Generalized Transition Function Non-Deterministic Finite Automata: Formal Definition, Need of Non-Determinism in Computation; Transition Function; Generalized Transition Function; Equivalence of NDFA and DFA; Subset Construction Greedy Version of the Subset Construction; Application: Automata Recognizing Patterns in Text; Finite Automata with ²-transitions: Formal Notation; Examples; ²-closures Generalized Transition Function for ²-NDFA’s; Constructing a DFA, Equivalent to Given ²-NDFA; Examples Regular Expressions; Operations: Closures, Concatenation, Union; Languages Corresponding to Regular Expressions; Building Regular Expressions; Examples Converting Finite Automata to Regular Expressions: General Recursive Construction; Time and Space Analysis Converting Finite Automata to Regular Expressions by Eliminating States; Converting Regular Expressions to ²-NDFA Algebraic Laws for Regular Expressions; The Test for a RegularExpression Algebraic Law The Pumping Lemma for Regular Languages; Proving that a Language is Not Regular; Applications of the Pumping Lemma: L01 = {0i 1i |i ≥ 0} is Not a Regular Language Examples of Non-Regular Languages and Use of Pumping Lemma to Prove them Not Being Regular; Closure Properties of Regular Languages; Closure Under Union, Intersection, Complement, Difference, Reversal, Closure (Kleene Star) and Concatenation Homomorphism; Inverse Homomorphism; Closure of the Regular Languages Under Homomorphism and Inverse Homomorphism; Automata Accepting Languages Defined with Respect to a Regular Language: half (L) Time and Space Complexity of the Conversions Between Different Representations of Regular Languages; Decision Properties of Regular Languages; Testing for Emptiness; Membership Testing Midterm Exam Minimization of DFA’s; State Equivalence; Table-Filling Algorithm; Testing Equivalence of Regular Languages Exercises 1.16, pp. 20–21; 1.21, pp. 24–25 1.23 pp. 26–27 Examples from p. 32; Ex. 2.2.1, pp. 52–53 Ex. 2.2.4(a), p. 53 Ex. 2.2.8, p. 54 Ex. 2.3.1, p. 65 Ex. 2.4.1, 2.4.2, p. 72; Ex. 2.5.1(a, b), p. 79 Ex. Ex. Ex. Ex. 2.5.1(c), 2.5.2, p. 79; 2.5.3(b), p. 80 3.1.1(b, c), p. 91; 3.1.4(b), p. 92 Ex. 3.2.1(a, b, c, d), p. 107 3.2.1(e), p. 107; 3.2.4, p. 108 3.4.1(d, f, g, h), 3.4.2(a, c), 3.4.3, p. 122 4.1.2(f), 4.1.4, p. 132 Ex. 41.5, p. 143, 4.2.8, p. 148 4.3.1–4.3.5, p. 155 4.4.1, 4.4.2, p. 165 Oct 16 Oct 21 Oct 23 Oct 28 Oct 30 Nov 04 Nov 06 Nov 11 Nov 13 Nov 18 Nov 20 Nov 25 Nov 27 Dec 02 Dec 04 Context-Free Grammars: Definition, Notational Conventions, Examples; Grammars for 0n 1n and the Palindromes; Derivations; Leftmost and Rightmost Derivations; Sentential Forms; Languages of Context-Free Grammars Parse Trees; Definition, Examples; Equivalence Between Parse Trees and Derivations; Remarks on Parsing; General Task of Parsing, Requirements; Ambiguity; Ambiguous Grammars, Examples; Inherently Ambiguous Grammars; Removing Ambiguity Pushdown Automata(PDA): Informal Introduction, Discussion of Their Computational Power, and Differences with the Finite Automata; The Language LwwR , and the PDA for it; Formal Description of a PDA; Graphical Representation of a PDA; Configurations and Instantaneous Descriptions of a PDA; Computation on a PDA Instantaneous Descriptions of Pushdown Automata (Configurations); Legal Computations; Languages of Pushdown Automata; Acceptance by Final State Class Canceled Discussion of the Online Homeworks on Context-Free Grammars; Proofs of Equivalence of Languages Acceptance by Empty Stack; Equivalence of Acceptance by Empty Stack and by Final State; Restriction on the Size of the Stack Alphabet (Binary Coded Stack Alphabet); Restrictions on the Size of the String Pushed; Examples Equivalence of Pushdown Automata and Context-Free Grammars; Constructing a PDA that Accepts the Language of a CFG; Constructing a CFG, whose Language is the Language of a Given PDA Constructing a Context-Free Grammar from a Given PDA: Complete Discussion of Exercise 6.3.3, p. 251; Deterministic PDA and Their Languages Chomsky Normal Form of a Context-Free Grammar; Converting a CFG to CNF; Eliminating Useless Symbols; Eliminating ²Productions; Eliminating Unit Productions; Generating, Reachable and Nullable Symbols Comments on Some Problems from Gradiance Homework; Greibach Normal Form (GNF); Converting a Grammar to a Greibach Normal Form Pumping Lemma for the Context-Free Languages; Proving that Languages are not Context-Free, Examples: 0n 1n 2n , 0i 1j 2i 3j , Lww ; Closure Properties of the ContextFree Languages; The Intersection of two CFL’s is Not Necessarily a CFL; Intersection of a CFL and Regular Language is a CFL; Closure Under Substitution; Closures Under Union, Concatenation, Homomorphism, and Closure; Closure Under Reversal; Inverse Homomorphism Thanksgiving - No classes Algorithmic Issues in Context-Free Languages; Complexity of Conversions from PDA to CFG and vice versa; Complexity of Conversions Between PDA’s; Complexity of Converting a CFG to CNF; Linear Time Test for Emptiness; Testing Membership in a CFL: CYK Algorithm; Examples Turing Machines: Definition, Notation, Instantaneous Description; Classes of Problems Computable on Turing Machines; Halting 5.1.2, p. 182 5.1.8, p. 183 5.2.2, p. 193; 5.4.5, p. 216 Examples 6.1-6.4, pp.227–231 Example 6.7, p. 235 6.2.1, p. 241; 6.2.4, 6.2.7, 6.2.8, p. 242 6.3.1, 6.3.3, p. 251 7.1.1, 7.1.2, p. 275 7.1.11, 7.1.12, pp. 278–279 Examples 7.19–7.21, pp. 284–285