MTH401A Theory of Computation. Lecture 17
|
|
- Corey Fowler
- 5 years ago
- Views:
Transcription
1 MTH401A Theory of Computation Lecture 17
2 Chomsky Normal Form for CFG s
3 Chomsky Normal Form for CFG s For every context free language, L, the language L {ε} has a grammar in which every production looks like, either 1. S AB, or 2. B a
4 Chomsky Normal Form for CFG s For every context free language, L, the language L {ε} has a grammar in which every production looks like, either 1. S AB, or 2. B a Further, the grammar has no useless symbols.
5 Chomsky Normal Form for CFG s Eliminating useless symbols : A symbol is useful if it appears in some derivation of some terminal string from the start symbol. It is useless, otherwise. Eliminate all useless symbols by : 1. Eliminate symbols that derive no terminal string. 2. Eliminate unreachable symbols.
6 Chomsky Normal Form for CFG s Example : Eliminate Variables S AB C A 0A 0 B 1B C 1 Basis : A and C are identified because of A 0 and C 1. Induction : S is identified because of S C. Nothing else can be identified. S C A 0A 0 C 1
7 Chomsky Normal Form for CFG s Algorithm to eliminate unreachable symbols : 1. Basis : We can reach S (the start symbol). 2. Induction : If we can reach A and A α then we can reach all symbols in α. 3. Algorithm : Remove from the grammar all symbols not reachable from S and all productions that involve these symbols.
8 Chomsky Normal Form for CFG s Example : Eliminate Useless Symbols S AB 0 A C 0 B 0B C 1 1. If we eliminate unreachable symbols first we would find that everything is reachable. 2. A, C, 1 would never get eliminated.
9 Chomsky Normal Form for CFG s Discovering Nullable Symbols : 1. To eliminate all ε- productions, we first need to discover all nullable variables (variables A such that A * ε). 2. Basis : If there is a production A ε then A is nullable. 3. Induction : If there is a production A α and all symbols in α are nullable then A is nullable.
10 Chomsky Normal Form for CFG s Example : Eliminate ε- Productions S ABC A 0A ε B 1B ε C ε 1. A, B, C, S are nullable. 2. New grammar S ABC AB AC BC A B C A 0A 0 B 1B 1
11 Chomsky Normal Form for CFG s Example : Eliminate ε- Productions S ABC A 0A ε B 1B ε C ε 1. A, B, C, S are nullable. 2. New grammar S ABC AB AC BC A B C A 0A 0 B 1B 1 C is now useless. Eliminate its productions
12 Chomsky Normal Form for CFG s Example : Eliminate ε- Productions S ABC A 0A ε B 1B ε C ε 1. A, B, C, S are nullable. 2. New grammar S ABC AB AC BC A B C A 0A 0 B 1B 1 C is now useless. Eliminate its productions
13 Chomsky Normal Form for CFG s Unit Productions : A unit production is one whose right side consists of exactly one variable. Algorithm : Find all pairs (A,B) such that A * B by a sequence of unit productions only. Basis : Pairs (A,A) are there. Induction : If we have found (A,B) and B C is a unit production then add (A,C).
14 Chomsky Normal Form for CFG s Example : Unit Productions S A B CC DD B BOZO CC ABC
15 Chomsky Normal Form for CFG s Example : Unit Productions S A B CC DD B BOZO CC ABC Unit Productions sequences S * B
16 Chomsky Normal Form for CFG s Example : Unit Productions S A B CC DD BOZO CC ABC 0 B BOZO CC ABC S A B CC DD B BOZO CC ABC
17 Chomsky Normal Form for CFG s Example : Unit Productions S A 11 A B 1 B S 0
18 Chomsky Normal Form for CFG s Example : Unit Productions S A 11 A B 1 B S 0 Unit Productions sequences S * A, S * B; A * B, A * S; B * S, B * A;
19 Chomsky Normal Form for CFG s Example 5 : Useless Symbols S A A B B S S A 11 A B 1 B S 0
20 Chomsky Normal Form for CFG s Example 5 : Useless Symbols S A A B B S A and B are useless symbols. No way to get them from S. S A 11 A B 1 B S 0
21 Chomsky Normal Form for CFG s Cleaning Up a Grammar : Theorem : If L is a CFL, then there is a CFG for L {ε} that has No useless symbols. No ε- productions. No unit productions. In other words, every right side is either a single terminal or has length 2.
22 Chomsky Normal Form for CFG s Chomsky Normal Form Steps: Step 1 : Clean up the grammar. Step 2 : For each right side that is not a single terminal, make it all variables. For each terminal symbol a, create a new variable A a and a production A a a. Replace a by A a in right sides of length 2. Step 3 : Break right sides of length longer than 2 into a chain of productions with right sides of two variables.
23 Chomsky Normal Form for CFG s Example : Terminals S 0A1B DEF A CC
24 Chomsky Normal Form for CFG s Example : Terminals S 0A1B DEF A CC Z 0 O 1
25 Chomsky Normal Form for CFG s Example : Terminals S ZAOB DEF A CC Z 0 O 1
26 Chomsky Normal Form for CFG s Example : Long productions S ZAOB DEF A CC Z 0 O 1
27 Chomsky Normal Form for CFG s Example : Long productions S ZAOB DEF A CC Z 0 O 1 Too long.
28 Chomsky Normal Form for CFG s Example : Long productions S ZAOB DEF A CC Z 0 O 1 Too long. New group of symbols.
29 Chomsky Normal Form for CFG s Example : Long productions S ZM DEF A CC Z 0 O 1 M AOB
30 Chomsky Normal Form for CFG s Example : Long productions S ZM DEF A CC Z 0 O 1 M AOB New group of symbols.
31 Chomsky Normal Form for CFG s Example : Long productions S ZM DH A CC Z 0 O 1 M AN N OB H EF
32 Chomsky Normal Form for CFG s Chomsky Normal Form : CFG is said to be in a Chomsky Normal Form if the grammar has no useless symbols and every production is of one of these two forms : 1. A BC (right side is two variables), 2. A a (right side is a single terminal). Theorem : If L is a CFL, then L {ε} has a CFG in Chomsky normal form.
33 Pushdown Machines
34 Pushdown Machines
35 Pushdown Machines Finite State Machine
36 Pushdown Machines Finite State Machine
37 Pushdown Machines
38 Pushdown Machines Finite Pushdown State Machine
39 Formalism : Pushdown Machines A pushdown machine is described by: 1. A finite set of states (Q, typically). 2. An input alphabet (Σ, typically). 3. A stack alphabet (Γ, typically). 4. A transition function (δ, typically). 5. A start state (q 0, in Q, typically). 6. A start symbol (Z 0 in Γ, typically). 7. A set of final states (F Q, typically).
40 Convention : Pushdown Machines a, b, c, are input symbols. Sometimes, we also allow ε as a possible value., X, Y, Z are stack symbols., w, x, y, z are strings of input symbols. α, β, γ, are strings of stack symbols.
41 Pushdown Machines The Transition Function :
42 Pushdown Machines The Transition Function : Takes three input arguments. 1. A state, in Q. 2. An input, which is either a symbol in Σ or ε. 3. A stack symbol in Γ.
43 Pushdown Machines The Transition Function : Takes three input arguments. 1. A state, in Q. 2. An input, which is either a symbol in Σ or ε. 3. A stack symbol in Γ. δ(q, a, Z) is a set of zero or more actions of the form (p, α). p is a state and α is a string of stack symbols.
44 Pushdown Machines Actions of The Pushdown Machine : If δ(q, a, Z) contains (p, α) among its actions, then one thing the pushdown machine can do in state q, with a at the front of the input, and Z on top of the stack is : 1. Change the state to p. 2. Remove a from the front of the input (a may be ε). 3. Replace Z on the top of the stack by α.
45 Example : Pushdown Machines Construct a pushdown machine to accept {0 n 1 n : n 1}.
46 Example : Pushdown Machines Construct a pushdown machine to accept {0 n 1 n : n 1}. The states :
47 Example : Pushdown Machines Construct a pushdown machine to accept {0 n 1 n : n 1}. The states : 1. q = start state. We are in state q if we have seen only 0 s so far.
48 Example : Pushdown Machines Construct a pushdown machine to accept {0 n 1 n : n 1}. The states : 1. q = start state. We are in state q if we have seen only 0 s so far. 2. p = we have seen at least one 1 and may now proceed only if the inputs are 1 s.
49 Example : Pushdown Machines Construct a pushdown machine to accept {0 n 1 n : n 1}. The states : 1. q = start state. We are in state q if we have seen only 0 s so far. 2. p = we have seen at least one 1 and may now proceed only if the inputs are 1 s. 3. f = final state; accept.
50 Pushdown Machines Example (continued) : The stack symbols :
51 Pushdown Machines Example (continued) : The stack symbols : 1. Z 0 = start symbol. Also marks the bottom of the stack.
52 Pushdown Machines Example (continued) : The stack symbols : 1. Z 0 = start symbol. Also marks the bottom of the stack. 2. X = marker, used to count the number of 0 s seen on the input.
53 Pushdown Machines Example (continued) : The transitions :
54 Pushdown Machines Example (continued) : The transitions : 1. δ(q, 0, Z 0 ) = {(q, XZ 0 )}.
55 Pushdown Machines Example (continued) : The transitions : 1. δ(q, 0, Z 0 ) = {(q, XZ 0 )}. 2. δ(q, 0, X) = {(q, XX)}. These two rules make sure that one X is pushed into the stack for each 0 read from the input.
56 Pushdown Machines Example (continued) : The transitions : 1. δ(q, 0, Z 0 ) = {(q, XZ 0 )}. 2. δ(q, 0, X) = {(q, XX)}. These two rules make sure that one X is pushed into the stack for each 0 read from the input. 3. δ(q, 1, X) = {(p, ε)}. When we see a 1, go to state p and pop one X.
57 Pushdown Machines Example (continued) : The transitions : 1. δ(q, 0, Z 0 ) = {(q, XZ 0 )}. 2. δ(q, 0, X) = {(q, XX)}. These two rules make sure that one X is pushed into the stack for each 0 read from the input. 3. δ(q, 1, X) = {(p, ε)}. When we see a 1, go to state p and pop one X. 4. δ(p, 1, X) = {(p, ε)}. Pop one X per 1.
58 Pushdown Machines Example (continued) : The transitions : 1. δ(q, 0, Z 0 ) = {(q, XZ 0 )}. 2. δ(q, 0, X) = {(q, XX)}. These two rules make sure that one X is pushed into the stack for each 0 read from the input. 3. δ(q, 1, X) = {(p, ε)}. When we see a 1, go to state p and pop one X. 4. δ(p, 1, X) = {(p, ε)}. Pop one X per δ(p, ε, Z 0 ) = {(f, Z 0 )}. Accept at bottom.
59 Pushdown Machines Example (continued) : In action Z q
60 Pushdown Machines Example (continued) : In action Z q δ(q, 0, Z 0 )
61 Pushdown Machines Example (continued) : In action Z q δ(q, 0, Z 0 ) = {(q, XZ 0 )}
62 Pushdown Machines Example (continued) : In action X Z 0 q
63 Pushdown Machines Example (continued) : In action X Z 0 q δ(q, 0, X)
64 Pushdown Machines Example (continued) : In action X Z 0 q δ(q, 0, X) = {(q, XX)}
65 Pushdown Machines Example (continued) : In action X X Z 0 q
66 Pushdown Machines Example (continued) : In action X X Z 0 q δ(q, 0, X)
67 Pushdown Machines Example (continued) : In action X X Z 0 q δ(q, 0, X) = {(q, XX)}
68 Pushdown Machines Example (continued) : In action X X X Z 0 q
69 Pushdown Machines Example (continued) : In action X X X Z 0 q δ(q, 1, X)
70 Pushdown Machines Example (continued) : In action X X X Z 0 q δ(q, 1, X) = {(p, ε)}
71 Pushdown Machines Example (continued) : In action X X 1 1 Z 0 p
72 Pushdown Machines Example (continued) : In action X X 1 1 Z 0 p δ(p, 1, X)
73 Pushdown Machines Example (continued) : In action X X 1 1 Z 0 p δ(p, 1, X) = {(p, ε)}
74 Pushdown Machines Example (continued) : In action X 1 Z 0 p
75 Pushdown Machines Example (continued) : In action X 1 Z 0 p δ(p, 1, X)
76 Pushdown Machines Example (continued) : In action X 1 Z 0 p δ(p, 1, X) = {(p, ε)}
77 Pushdown Machines Example (continued) : In action Z 0 p
78 Pushdown Machines Example (continued) : In action Z 0 p δ(p, ε, Z 0 )
79 Pushdown Machines Example (continued) : In action Z 0 p δ(p, ε, Z 0 ) = {(f, Z 0 )}
80 Pushdown Machines Example (continued) : In action Z 0 f
81 Pushdown Machines Instantaneous Descriptions : We can formalize the pictures just seen with an instantaneous description (ID). An ID is a 3-tuple (q, w, α), where: 1. q is the current state. 2. w is the remaining input. 3. α is the stack contents, top at the left.
82 Pushdown Machines The Goes-To relation: To say that ID I can become ID J in one move of the pushdown machine, we write I J.
83 Pushdown Machines The Goes-To relation: To say that ID I can become ID J in one move of the pushdown machine, we write I J. Formally, (q, aw, Xα) (p, w, βα), for any w and α, if δ(q, a, X) contains (p, β).
84 Pushdown Machines The Goes-To relation: To say that ID I can become ID J in one move of the pushdown machine, we write I J. Formally, (q, aw, Xα) (p, w, βα), for any w and α, if δ(q, a, X) contains (p, β). Extend to *, meaning zero or more moves by Basis : I * I. Induction : If I * J and J K, then I * K.
Introduction to Formal Languages, Automata and Computability p.1/42
Introduction to Formal Languages, Automata and Computability Pushdown Automata K. Krithivasan and R. Rama Introduction to Formal Languages, Automata and Computability p.1/42 Introduction We have considered
More informationCFG Simplification. (simplify) 1. Eliminate useless symbols 2. Eliminate -productions 3. Eliminate unit productions
CFG Simplification (simplify) 1. Eliminate useless symbols 2. Eliminate -productions 3. Eliminate unit productions 1 Eliminating useless symbols 1. A symbol X is generating if there exists: X * w, for
More informationLecture 12 Simplification of Context-Free Grammars and Normal Forms
Lecture 12 Simplification of Context-Free Grammars and Normal Forms COT 4420 Theory of Computation Chapter 6 Normal Forms for CFGs 1. Chomsky Normal Form CNF Productions of form A BC A, B, C V A a a T
More informationCFGs and PDAs are Equivalent. We provide algorithms to convert a CFG to a PDA and vice versa.
CFGs and PDAs are Equivalent We provide algorithms to convert a CFG to a PDA and vice versa. CFGs and PDAs are Equivalent We now prove that a language is generated by some CFG if and only if it is accepted
More informationSection 1 (closed-book) Total points 30
CS 454 Theory of Computation Fall 2011 Section 1 (closed-book) Total points 30 1. Which of the following are true? (a) a PDA can always be converted to an equivalent PDA that at each step pops or pushes
More informationUNIT-VI PUSHDOWN AUTOMATA
Syllabus R09 Regulation UNIT-VI PUSHDOWN AUTOMATA The context free languages have a type of automaton that defined them. This automaton, called a pushdown automaton, is an extension of the nondeterministic
More information(pp ) PDAs and CFGs (Sec. 2.2)
(pp. 117-124) PDAs and CFGs (Sec. 2.2) A language is context free iff all strings in L can be generated by some context free grammar Theorem 2.20: L is Context Free iff a PDA accepts it I.e. if L is context
More informationTheory of Computation - Module 3
Theory of Computation - Module 3 Syllabus Context Free Grammar Simplification of CFG- Normal forms-chomsky Normal form and Greibach Normal formpumping lemma for Context free languages- Applications of
More informationDefinition: A grammar G = (V, T, P,S) is a context free grammar (cfg) if all productions in P have the form A x where
Recitation 11 Notes Context Free Grammars Definition: A grammar G = (V, T, P,S) is a context free grammar (cfg) if all productions in P have the form A x A V, and x (V T)*. Examples Problem 1. Given the
More informationEquivalence of CFG s and PDA s
Equivalence of CFG s and PDA s Mridul Aanjaneya Stanford University July 24, 2012 Mridul Aanjaneya Automata Theory 1/ 53 Recap: Pushdown Automata A PDA is an automaton equivalent to the CFG in language-defining
More information(pp ) PDAs and CFGs (Sec. 2.2)
(pp. 117-124) PDAs and CFGs (Sec. 2.2) A language is context free iff all strings in L can be generated by some context free grammar Theorem 2.20: L is Context Free iff a PDA accepts it I.e. if L is context
More informationParsing. Context-Free Grammars (CFG) Laura Kallmeyer. Winter 2017/18. Heinrich-Heine-Universität Düsseldorf 1 / 26
Parsing Context-Free Grammars (CFG) Laura Kallmeyer Heinrich-Heine-Universität Düsseldorf Winter 2017/18 1 / 26 Table of contents 1 Context-Free Grammars 2 Simplifying CFGs Removing useless symbols Eliminating
More informationCSE 211. Pushdown Automata. CSE 211 (Theory of Computation) Atif Hasan Rahman
CSE 211 Pushdown Automata CSE 211 (Theory of Computation) Atif Hasan Rahman Lecturer Department of Computer Science and Engineering Bangladesh University of Engineering & Technology Adapted from slides
More informationNPDA, CFG equivalence
NPDA, CFG equivalence Theorem A language L is recognized by a NPDA iff L is described by a CFG. Must prove two directions: ( ) L is recognized by a NPDA implies L is described by a CFG. ( ) L is described
More informationCS5371 Theory of Computation. Lecture 7: Automata Theory V (CFG, CFL, CNF)
CS5371 Theory of Computation Lecture 7: Automata Theory V (CFG, CFL, CNF) Announcement Homework 2 will be given soon (before Tue) Due date: Oct 31 (Tue), before class Midterm: Nov 3, (Fri), first hour
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
15-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY REVIEW for MIDTERM 1 THURSDAY Feb 6 Midterm 1 will cover everything we have seen so far The PROBLEMS will be from Sipser, Chapters 1, 2, 3 It will be
More informationComputability and Complexity
Computability and Complexity Push-Down Automata CAS 705 Ryszard Janicki Department of Computing and Software McMaster University Hamilton, Ontario, Canada janicki@mcmaster.ca Ryszard Janicki Computability
More informationPushdown Automata. Reading: Chapter 6
Pushdown Automata Reading: Chapter 6 1 Pushdown Automata (PDA) Informally: A PDA is an NFA-ε with a infinite stack. Transitions are modified to accommodate stack operations. Questions: What is a stack?
More informationPlan for 2 nd half. Just when you thought it was safe. Just when you thought it was safe. Theory Hall of Fame. Chomsky Normal Form
Plan for 2 nd half Pumping Lemma for CFLs The Return of the Pumping Lemma Just when you thought it was safe Return of the Pumping Lemma Recall: With Regular Languages The Pumping Lemma showed that if a
More informationHomework. Context Free Languages. Announcements. Before We Start. Languages. Plan for today. Final Exam Dates have been announced.
Homework Context Free Languages PDAs and CFLs Homework #3 returned Homework #4 due today Homework #5 Pg 169 -- Exercise 4 Pg 183 -- Exercise 4c,e,i (use JFLAP) Pg 184 -- Exercise 10 Pg 184 -- Exercise
More information60-354, Theory of Computation Fall Asish Mukhopadhyay School of Computer Science University of Windsor
60-354, Theory of Computation Fall 2013 Asish Mukhopadhyay School of Computer Science University of Windsor Pushdown Automata (PDA) PDA = ε-nfa + stack Acceptance ε-nfa enters a final state or Stack is
More informationPushdown Automata. Notes on Automata and Theory of Computation. Chia-Ping Chen
Pushdown Automata Notes on Automata and Theory of Computation Chia-Ping Chen Department of Computer Science and Engineering National Sun Yat-Sen University Kaohsiung, Taiwan ROC Pushdown Automata p. 1
More informationPushdown Automata (2015/11/23)
Chapter 6 Pushdown Automata (2015/11/23) Sagrada Familia, Barcelona, Spain Outline 6.0 Introduction 6.1 Definition of PDA 6.2 The Language of a PDA 6.3 Euivalence of PDA s and CFG s 6.4 Deterministic PDA
More informationCS481F01 Prelim 2 Solutions
CS481F01 Prelim 2 Solutions A. Demers 7 Nov 2001 1 (30 pts = 4 pts each part + 2 free points). For this question we use the following notation: x y means x is a prefix of y m k n means m n k For each of
More informationLecture 17: Language Recognition
Lecture 17: Language Recognition Finite State Automata Deterministic and Non-Deterministic Finite Automata Regular Expressions Push-Down Automata Turing Machines Modeling Computation When attempting to
More informationTheory of Computation Turing Machine and Pushdown Automata
Theory of Computation Turing Machine and Pushdown Automata 1. What is a Turing Machine? A Turing Machine is an accepting device which accepts the languages (recursively enumerable set) generated by type
More information1. Draw a parse tree for the following derivation: S C A C C A b b b b A b b b b B b b b b a A a a b b b b a b a a b b 2. Show on your parse tree u,
1. Draw a parse tree for the following derivation: S C A C C A b b b b A b b b b B b b b b a A a a b b b b a b a a b b 2. Show on your parse tree u, v, x, y, z as per the pumping theorem. 3. Prove that
More informationBefore We Start. The Pumping Lemma. Languages. Context Free Languages. Plan for today. Now our picture looks like. Any questions?
Before We Start The Pumping Lemma Any questions? The Lemma & Decision/ Languages Future Exam Question What is a language? What is a class of languages? Context Free Languages Context Free Languages(CFL)
More informationOctober 6, Equivalence of Pushdown Automata with Context-Free Gramm
Equivalence of Pushdown Automata with Context-Free Grammar October 6, 2013 Motivation Motivation CFG and PDA are equivalent in power: a CFG generates a context-free language and a PDA recognizes a context-free
More informationContext-Free Grammars: Normal Forms
Context-Free Grammars: Normal Forms Seungjin Choi Department of Computer Science and Engineering Pohang University of Science and Technology 77 Cheongam-ro, Nam-gu, Pohang 37673, Korea seungjin@postech.ac.kr
More informationProperties of Context-Free Languages. Closure Properties Decision Properties
Properties of Context-Free Languages Closure Properties Decision Properties 1 Closure Properties of CFL s CFL s are closed under union, concatenation, and Kleene closure. Also, under reversal, homomorphisms
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2017 http://cseweb.ucsd.edu/classes/sp17/cse105-ab/ Review of CFG, CFL, ambiguity What is the language generated by the CFG below: G 1 = ({S,T 1,T 2 }, {0,1,2}, { S
More informationPushdown automata. Twan van Laarhoven. Institute for Computing and Information Sciences Intelligent Systems Radboud University Nijmegen
Pushdown automata Twan van Laarhoven Institute for Computing and Information Sciences Intelligent Systems Version: fall 2014 T. van Laarhoven Version: fall 2014 Formal Languages, Grammars and Automata
More informationIntroduction to Theory of Computing
CSCI 2670, Fall 2012 Introduction to Theory of Computing Department of Computer Science University of Georgia Athens, GA 30602 Instructor: Liming Cai www.cs.uga.edu/ cai 0 Lecture Note 3 Context-Free Languages
More informationCPS 220 Theory of Computation
CPS 22 Theory of Computation Review - Regular Languages RL - a simple class of languages that can be represented in two ways: 1 Machine description: Finite Automata are machines with a finite number of
More informationCS 373: Theory of Computation. Fall 2010
CS 373: Theory of Computation Gul Agha Mahesh Viswanathan Fall 2010 1 1 Normal Forms for CFG Normal Forms for Grammars It is typically easier to work with a context free language if given a CFG in a normal
More informationFinite Automata and Formal Languages TMV026/DIT321 LP Useful, Useless, Generating and Reachable Symbols
Finite Automata and Formal Languages TMV026/DIT321 LP4 2012 Lecture 13 Ana Bove May 7th 2012 Overview of today s lecture: Normal Forms for Context-Free Languages Pumping Lemma for Context-Free Languages
More informationMiscellaneous. Closure Properties Decision Properties
Miscellaneous Closure Properties Decision Properties 1 Closure Properties of CFL s CFL s are closed under union, concatenation, and Kleene closure. Also, under reversal, homomorphisms and inverse homomorphisms.
More informationOutline. CS21 Decidability and Tractability. Machine view of FA. Machine view of FA. Machine view of FA. Machine view of FA.
Outline CS21 Decidability and Tractability Lecture 5 January 16, 219 and Languages equivalence of NPDAs and CFGs non context-free languages January 16, 219 CS21 Lecture 5 1 January 16, 219 CS21 Lecture
More informationSimplification and Normalization of Context-Free Grammars
implification and Normalization, of Context-Free Grammars 20100927 Slide 1 of 23 Simplification and Normalization of Context-Free Grammars 5DV037 Fundamentals of Computer Science Umeå University Department
More informationContext Free Grammars
Automata and Formal Languages Context Free Grammars Sipser pages 101-111 Lecture 11 Tim Sheard 1 Formal Languages 1. Context free languages provide a convenient notation for recursive description of languages.
More informationTHEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET
THEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET Regular Languages and FA A language is a set of strings over a finite alphabet Σ. All languages are finite or countably infinite. The set of all languages
More informationFormal Languages and Automata
Formal Languages and Automata Lecture 6 2017-18 LFAC (2017-18) Lecture 6 1 / 31 Lecture 6 1 The recognition problem: the Cocke Younger Kasami algorithm 2 Pushdown Automata 3 Pushdown Automata and Context-free
More informationCPS 220 Theory of Computation Pushdown Automata (PDA)
CPS 220 Theory of Computation Pushdown Automata (PDA) Nondeterministic Finite Automaton with some extra memory Memory is called the stack, accessed in a very restricted way: in a First-In First-Out fashion
More informationVTU QUESTION BANK. Unit 1. Introduction to Finite Automata. 1. Obtain DFAs to accept strings of a s and b s having exactly one a.
VTU QUESTION BANK Unit 1 Introduction to Finite Automata 1. Obtain DFAs to accept strings of a s and b s having exactly one a.(5m )( Dec-2014) 2. Obtain a DFA to accept strings of a s and b s having even
More informationNote: In any grammar here, the meaning and usage of P (productions) is equivalent to R (rules).
Note: In any grammar here, the meaning and usage of P (productions) is equivalent to R (rules). 1a) G = ({R, S, T}, {0,1}, P, S) where P is: S R0R R R0R1R R1R0R T T 0T ε (S generates the first 0. R generates
More informationThis lecture covers Chapter 7 of HMU: Properties of CFLs
This lecture covers Chapter 7 of HMU: Properties of CFLs Chomsky Normal Form Pumping Lemma for CFs Closure Properties of CFLs Decision Properties of CFLs Additional Reading: Chapter 7 of HMU. Chomsky Normal
More informationAC68 FINITE AUTOMATA & FORMULA LANGUAGES DEC 2013
Q.2 a. Prove by mathematical induction n 4 4n 2 is divisible by 3 for n 0. Basic step: For n = 0, n 3 n = 0 which is divisible by 3. Induction hypothesis: Let p(n) = n 3 n is divisible by 3. Induction
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2016 http://cseweb.ucsd.edu/classes/sp16/cse105-ab/ Today's learning goals Sipser Ch 2 Define push down automata Trace the computation of a push down automaton Design
More informationComputational Models - Lecture 4
Computational Models - Lecture 4 Regular languages: The Myhill-Nerode Theorem Context-free Grammars Chomsky Normal Form Pumping Lemma for context free languages Non context-free languages: Examples Push
More informationProperties of Context-free Languages. Reading: Chapter 7
Properties of Context-free Languages Reading: Chapter 7 1 Topics 1) Simplifying CFGs, Normal forms 2) Pumping lemma for CFLs 3) Closure and decision properties of CFLs 2 How to simplify CFGs? 3 Three ways
More informationNon-context-Free Languages. CS215, Lecture 5 c
Non-context-Free Languages CS215, Lecture 5 c 2007 1 The Pumping Lemma Theorem. (Pumping Lemma) Let be context-free. There exists a positive integer divided into five pieces, Proof for for each, and..
More informationTheory of Computation (IV) Yijia Chen Fudan University
Theory of Computation (IV) Yijia Chen Fudan University Review language regular context-free machine DFA/ NFA PDA syntax regular expression context-free grammar Pushdown automata Definition A pushdown automaton
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
15-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Chomsky Normal Form and TURING MACHINES TUESDAY Feb 4 CHOMSKY NORMAL FORM A context-free grammar is in Chomsky normal form if every rule is of the form:
More informationPushdown Automata (Pre Lecture)
Pushdown Automata (Pre Lecture) Dr. Neil T. Dantam CSCI-561, Colorado School of Mines Fall 2017 Dantam (Mines CSCI-561) Pushdown Automata (Pre Lecture) Fall 2017 1 / 41 Outline Pushdown Automata Pushdown
More informationEinführung in die Computerlinguistik Kontextfreie Grammatiken - Formale Eigenschaften
Normal forms (1) Einführung in die Computerlinguistik Kontextfreie Grammatiken - Formale Eigenschaften Laura Heinrich-Heine-Universität Düsseldorf Sommersemester 2013 normal form of a grammar formalism
More informationDecidable and undecidable languages
The Chinese University of Hong Kong Fall 2011 CSCI 3130: Formal languages and automata theory Decidable and undecidable languages Andrej Bogdanov http://www.cse.cuhk.edu.hk/~andrejb/csc3130 Problems about
More informationEinführung in die Computerlinguistik
Einführung in die Computerlinguistik Context-Free Grammars (CFG) Laura Kallmeyer Heinrich-Heine-Universität Düsseldorf Summer 2016 1 / 22 CFG (1) Example: Grammar G telescope : Productions: S NP VP NP
More informationCPSC 313 Introduction to Computability
CPSC 313 Introduction to Computability Grammars in Chomsky Normal Form (Cont d) (Sipser, pages 109-111 (3 rd ed) and 107-109 (2 nd ed)) Renate Scheidler Fall 2018 Chomsky Normal Form A context-free grammar
More informationFoundations of Informatics: a Bridging Course
Foundations of Informatics: a Bridging Course Week 3: Formal Languages and Semantics Thomas Noll Lehrstuhl für Informatik 2 RWTH Aachen University noll@cs.rwth-aachen.de http://www.b-it-center.de/wob/en/view/class211_id948.html
More informationComputational Models: Class 5
Computational Models: Class 5 Benny Chor School of Computer Science Tel Aviv University March 27, 2019 Based on slides by Maurice Herlihy, Brown University, and modifications by Iftach Haitner and Yishay
More informationFormal Definition of a Finite Automaton. August 26, 2013
August 26, 2013 Why a formal definition? A formal definition is precise: - It resolves any uncertainties about what is allowed in a finite automaton such as the number of accept states and number of transitions
More information(b) If G=({S}, {a}, {S SS}, S) find the language generated by G. [8+8] 2. Convert the following grammar to Greibach Normal Form G = ({A1, A2, A3},
Code No: 07A50501 R07 Set No. 2 III B.Tech I Semester Examinations,MAY 2011 FORMAL LANGUAGES AND AUTOMATA THEORY Computer Science And Engineering Time: 3 hours Max Marks: 80 Answer any FIVE Questions All
More informationEinführung in die Computerlinguistik
Einführung in die Computerlinguistik Context-Free Grammars formal properties Laura Kallmeyer Heinrich-Heine-Universität Düsseldorf Summer 2018 1 / 20 Normal forms (1) Hopcroft and Ullman (1979) A normal
More informationCDM Parsing and Decidability
CDM Parsing and Decidability 1 Parsing Klaus Sutner Carnegie Mellon Universality 65-parsing 2017/12/15 23:17 CFGs and Decidability Pushdown Automata The Recognition Problem 3 What Could Go Wrong? 4 Problem:
More informationComputational Models - Lecture 5 1
Computational Models - Lecture 5 1 Handout Mode Iftach Haitner and Yishay Mansour. Tel Aviv University. April 10/22, 2013 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationAccept or reject. Stack
Pushdown Automata CS351 Just as a DFA was equivalent to a regular expression, we have a similar analogy for the context-free grammar. A pushdown automata (PDA) is equivalent in power to contextfree grammars.
More informationContext-Free Grammar
Context-Free Grammar CFGs are more powerful than regular expressions. They are more powerful in the sense that whatever can be expressed using regular expressions can be expressed using context-free grammars,
More informationPushdown Automata (PDA) The structure and the content of the lecture is based on
Pushdown Automata (PDA) The structure and the content of the lecture is based on http://www.eecs.wsu.edu/~ananth/cpts317/lectures/index.htm 1 Excursion: Previous lecture n Context-free grammar G=(V,T,P,S),
More information5 Context-Free Languages
CA320: COMPUTABILITY AND COMPLEXITY 1 5 Context-Free Languages 5.1 Context-Free Grammars Context-Free Grammars Context-free languages are specified with a context-free grammar (CFG). Formally, a CFG G
More informationCISC4090: Theory of Computation
CISC4090: Theory of Computation Chapter 2 Context-Free Languages Courtesy of Prof. Arthur G. Werschulz Fordham University Department of Computer and Information Sciences Spring, 2014 Overview In Chapter
More informationMA/CSSE 474 Theory of Computation
MA/CSSE 474 Theory of Computation CFL Hierarchy CFL Decision Problems Your Questions? Previous class days' material Reading Assignments HW 12 or 13 problems Anything else I have included some slides online
More informationTheory of Computation
Theory of Computation Lecture #10 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 43 Lecture 10: Overview Linear Bounded Automata Acceptance Problem for LBAs
More informationFinite Automata Theory and Formal Languages TMV026/TMV027/DIT321 Responsible: Ana Bove
Finite Automata Theory and Formal Languages TMV026/TMV027/DIT321 Responsible: Ana Bove Tuesday 28 of May 2013 Total: 60 points TMV027/DIT321 registration VT13 TMV026/DIT321 registration before VT13 Exam
More informationPart 4 out of 5 DFA NFA REX. Automata & languages. A primer on the Theory of Computation. Last week, we showed the equivalence of DFA, NFA and REX
Automata & languages A primer on the Theory of Computation Laurent Vanbever www.vanbever.eu Part 4 out of 5 ETH Zürich (D-ITET) October, 12 2017 Last week, we showed the equivalence of DFA, NFA and REX
More informationComputability Theory
CS:4330 Theory of Computation Spring 2018 Computability Theory Decidable Problems of CFLs and beyond Haniel Barbosa Readings for this lecture Chapter 4 of [Sipser 1996], 3rd edition. Section 4.1. Decidable
More informationFundamentele Informatica II
Fundamentele Informatica II Answer to selected exercises 5 John C Martin: Introduction to Languages and the Theory of Computation M.M. Bonsangue (and J. Kleijn) Fall 2011 5.1.a (q 0, ab, Z 0 ) (q 1, b,
More informationContext Sensitive Grammar
Context Sensitive Grammar Aparna S Vijayan Department of Computer Science and Automation December 2, 2011 Aparna S Vijayan (CSA) CSG December 2, 2011 1 / 12 Contents Aparna S Vijayan (CSA) CSG December
More informationChomsky Normal Form and TURING MACHINES. TUESDAY Feb 4
Chomsky Normal Form and TURING MACHINES TUESDAY Feb 4 CHOMSKY NORMAL FORM A context-free grammar is in Chomsky normal form if every rule is of the form: A BC A a S ε B and C aren t start variables a is
More informationTheory of Computation
Thomas Zeugmann Hokkaido University Laboratory for Algorithmics http://www-alg.ist.hokudai.ac.jp/ thomas/toc/ Lecture 10: CF, PDAs and Beyond Greibach Normal Form I We want to show that all context-free
More informationPushdown Automata: Introduction (2)
Pushdown Automata: Introduction Pushdown automaton (PDA) M = (K, Σ, Γ,, s, A) where K is a set of states Σ is an input alphabet Γ is a set of stack symbols s K is the start state A K is a set of accepting
More informationUndecidable Problems and Reducibility
University of Georgia Fall 2014 Reducibility We show a problem decidable/undecidable by reducing it to another problem. One type of reduction: mapping reduction. Definition Let A, B be languages over Σ.
More informationAutomata Theory (2A) Young Won Lim 5/31/18
Automata Theory (2A) Copyright (c) 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later
More informationPush-down Automata = FA + Stack
Push-down Automata = FA + Stack PDA Definition A push-down automaton M is a tuple M = (Q,, Γ, δ, q0, F) where Q is a finite set of states is the input alphabet (of terminal symbols, terminals) Γ is the
More informationContext-Free Languages
CS:4330 Theory of Computation Spring 2018 Context-Free Languages Pushdown Automata Haniel Barbosa Readings for this lecture Chapter 2 of [Sipser 1996], 3rd edition. Section 2.2. Finite automaton 1 / 13
More informationOgden s Lemma for CFLs
Ogden s Lemma for CFLs Theorem If L is a context-free language, then there exists an integer l such that for any u L with at least l positions marked, u can be written as u = vwxyz such that 1 x and at
More informationContext-Free Languages (Pre Lecture)
Context-Free Languages (Pre Lecture) Dr. Neil T. Dantam CSCI-561, Colorado School of Mines Fall 2017 Dantam (Mines CSCI-561) Context-Free Languages (Pre Lecture) Fall 2017 1 / 34 Outline Pumping Lemma
More informationProperties of context-free Languages
Properties of context-free Languages We simplify CFL s. Greibach Normal Form Chomsky Normal Form We prove pumping lemma for CFL s. We study closure properties and decision properties. Some of them remain,
More informationPushdown Automata. Pushdown Automata. Pushdown Automata. Pushdown Automata. Pushdown Automata. Pushdown Automata. The stack
A pushdown automata (PDA) is essentially: An NFA with a stack A move of a PDA will depend upon Current state of the machine Current symbol being read in Current symbol popped off the top of the stack With
More informationSYLLABUS. Introduction to Finite Automata, Central Concepts of Automata Theory. CHAPTER - 3 : REGULAR EXPRESSIONS AND LANGUAGES
Contents i SYLLABUS UNIT - I CHAPTER - 1 : AUT UTOMA OMATA Introduction to Finite Automata, Central Concepts of Automata Theory. CHAPTER - 2 : FINITE AUT UTOMA OMATA An Informal Picture of Finite Automata,
More informationLanguages, regular languages, finite automata
Notes on Computer Theory Last updated: January, 2018 Languages, regular languages, finite automata Content largely taken from Richards [1] and Sipser [2] 1 Languages An alphabet is a finite set of characters,
More informationSCHEME FOR INTERNAL ASSESSMENT TEST 3
SCHEME FOR INTERNAL ASSESSMENT TEST 3 Max Marks: 40 Subject& Code: Automata Theory & Computability (15CS54) Sem: V ISE (A & B) Note: Answer any FIVE full questions, choosing one full question from each
More informationSFWR ENG 2FA3. Solution to the Assignment #4
SFWR ENG 2FA3. Solution to the Assignment #4 Total = 131, 100%= 115 The solutions below are often very detailed on purpose. Such level of details is not required from students solutions. Some questions
More informationLecture 13: Turing Machine
Lecture 13: Turing Machine Instructor: Ketan Mulmuley Scriber: Yuan Li February 19, 2015 Turing machine is an abstract machine which in principle can simulate any computation in nature. Church-Turing Thesis:
More informationHarvard CS 121 and CSCI E-207 Lecture 10: Ambiguity, Pushdown Automata
Harvard CS 121 and CSCI E-207 Lecture 10: Ambiguity, Pushdown Automata Salil Vadhan October 4, 2012 Reading: Sipser, 2.2. Another example of a CFG (with proof) L = {x {a, b} : x has the same # of a s and
More informationProblem Session 5 (CFGs) Talk about the building blocks of CFGs: S 0S 1S ε - everything. S 0S0 1S1 A - waw R. S 0S0 0S1 1S0 1S1 A - xay, where x = y.
CSE2001, Fall 2006 1 Problem Session 5 (CFGs) Talk about the building blocks of CFGs: S 0S 1S ε - everything. S 0S0 1S1 A - waw R. S 0S0 0S1 1S0 1S1 A - xay, where x = y. S 00S1 A - xay, where x = 2 y.
More informationCS Pushdown Automata
Chap. 6 Pushdown Automata 6.1 Definition of Pushdown Automata Example 6.2 L ww R = {ww R w (0+1) * } Palindromes over {0, 1}. A cfg P 0 1 0P0 1P1. Consider a FA with a stack(= a Pushdown automaton; PDA).
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2016 http://cseweb.ucsd.edu/classes/sp16/cse105-ab/ Today's learning goals Sipser Ch 2 Design a PDA and a CFG for a given language Give informal description for a PDA,
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Lecture 14 Ana Bove May 14th 2018 Recap: Context-free Grammars Simplification of grammars: Elimination of ǫ-productions; Elimination of
More informationHarvard CS 121 and CSCI E-207 Lecture 10: CFLs: PDAs, Closure Properties, and Non-CFLs
Harvard CS 121 and CSCI E-207 Lecture 10: CFLs: PDAs, Closure Properties, and Non-CFLs Harry Lewis October 8, 2013 Reading: Sipser, pp. 119-128. Pushdown Automata (review) Pushdown Automata = Finite automaton
More information