COSC 3340: Introduction to Theory of Computation

Slides:



Advertisements
Similar presentations
CS 3240: Languages and Computation Properties of Context-Free Languages.
Advertisements

1 Introduction to Computability Theory Lecture7: The Pumping Lemma for Context Free Languages Prof. Amos Israeli.
Lecture 3UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 3.
Lecture 15UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 15.
Transparency No. P2C5-1 Formal Language and Automata Theory Part II Chapter 5 The Pumping Lemma and Closure properties for Context-free Languages.
1 The Pumping Lemma for Context-Free Languages. 2 Take an infinite context-free language Example: Generates an infinite number of different strings.
CS5371 Theory of Computation Lecture 9: Automata Theory VII (Pumping Lemma, Non-CFL)
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.3: Non-Context-Free Languages) David Martin With.
Transparency No. P2C5-1 Formal Language and Automata Theory Part II Chapter 5 The Pumping Lemma and Closure properties for Context-free Languages.
Lecture 7UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 7.
Lecture 9UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 9.
1 Background Information for the Pumping Lemma for Context-Free Languages Definition: Let G = (V, T, P, S) be a CFL. If every production in P is of the.
Lecture 5UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 5.
Prof. Busch - LSU1 Pumping Lemma for Context-free Languages.
Today Chapter 2: (Pushdown automata) Non-CF languages CFL pumping lemma Closure properties of CFL.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
CSE 3813 Introduction to Formal Languages and Automata Chapter 8 Properties of Context-free Languages These class notes are based on material from our.
The Pumping Lemma for Context Free Grammars. Chomsky Normal Form Chomsky Normal Form (CNF) is a simple and useful form of a CFG Every rule of a CNF grammar.
CSCI 2670 Introduction to Theory of Computing September 22, 2005.
Lecture 10UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 10.
1 L= { w c w R : w  {a, b}* } is accepted by the PDA below. Use a construction like the one for intersection for regular languages to design a PDA that.
Closure Properties Lemma: Let A 1 and A 2 be two CF languages, then the union A 1  A 2 is context free as well. Proof: Assume that the two grammars are.
Non-CF Languages The language L = { a n b n c n | n  0 } does not appear to be context-free. Informal: A PDA can compare #a’s with #b’s. But by the time.
CS355 - Theory of Computation Regular Expressions.
Critique this PDA for L= { u u R v v R : u ∈ {0,1}* and v ∈ {0,1}+ } u0εu0 u1εu1 uεεvε v00vε v11vε vεεfε sεεtε t0εt0 t1εt1 t00tε t11tε tεεuε After you.
CSCI 2670 Introduction to Theory of Computing September 23, 2004.
Costas Busch - LSU1 Pumping Lemma for Context-free Languages.
Chapter 8 Properties of Context-free Languages These class notes are based on material from our textbook, An Introduction to Formal Languages and Automata,
Transparency No. P2C5-1 Formal Language and Automata Theory Part II Chapter 5 The Pumping Lemma and Closure properties for Context-free Languages.
January 20, 2016CS21 Lecture 71 CS21 Decidability and Tractability Lecture 7 January 20, 2016.
Donghyun (David) Kim Department of Mathematics and Physics North Carolina Central University 1 Chapter 2 Context-Free Languages Some slides are in courtesy.
CS 154 Formal Languages and Computability March 17 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
 2004 SDU Lecture8 NON-Context-free languages.  2004 SDU 2 Are all languages context free? Ans: No. # of PDAs on  < # of languages on  Pumping lemma:
Bottom-up parsing Pumping Theorem for CFLs MA/CSSE 474 Theory of Computation.
Lecture 8UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 8.
Complexity and Computability Theory I Lecture #12 Instructor: Rina Zviel-Girshin Lea Epstein.
Context-Free and Noncontext-Free Languages Chapter 13.
Nonregular Languages Section 2.4 Wed, Oct 5, 2005.
Standard Representations of Regular Languages
CSE322 PUMPING LEMMA FOR REGULAR SETS AND ITS APPLICATIONS
Deterministic FA/ PDA Sequential Machine Theory Prof. K. J. Hintz
Lecture 15 Pumping Lemma.
Lecture 17 Oct 25, 2011 Section 2.1 (push-down automata)
COSC 3340: Introduction to Theory of Computation
Non-Context-Free Languages
Context-free Languages
Chapter Fourteen: The Context-Free Frontier
COSC 3340: Introduction to Theory of Computation
Definition: Let G = (V, T, P, S) be a CFL
Context-Free Grammars
فصل دوم Context-Free Languages
COSC 3340: Introduction to Theory of Computation
Pumping Lemma for Context-free Languages
Properties of Context-Free Languages
Bottom-up parsing Pumping Theorem for CFLs
CS21 Decidability and Tractability
Chapter 2 Context-Free Language - 02
CS21 Decidability and Tractability
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
Applications of Regular Closure
Pumping Theorem for CFLs
COSC 3340: Introduction to Theory of Computation
Intro to Theory of Computation
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
Presentation transcript:

COSC 3340: Introduction to Theory of Computation University of Houston Fall 2003, Dr. Verma Lecture 15 Lecture 15 UofH - COSC 3340 - Dr. Verma

Are all languages context-free? Ans: No. How do we know this? Ans: Cardinality arguments. Let C(CFG) = {G | G is a CFG}. C(CFG) is a countable set. Why? Let AL = { L | L is a subset of *}. AL is uncountable. Lecture 15 UofH - COSC 3340 - Dr. Verma

Pumping Lemma First technique to show that specific given languages are not context-free. Cardinality arguments show existence of languages that are not context-free. There is a big difference between the two! Lecture 15 UofH - COSC 3340 - Dr. Verma

Statement of Pumping Lemma If A is an infinite context-free language, then there is a number p (the pumping length) where, if s is any string in A of length at least p, then s may be divided into five pieces s = uvxyz satisfying the conditions. For each i  0, uvixyiz ε A, |vy| > 0, and |vxy| <= p. Lecture 15 UofH - COSC 3340 - Dr. Verma

Statement of Pumping Lemma (contd.) When s is divided into uvxyz, cond. 2 says -either v or y is not the empty string. Otherwise the theorem would be trivially true. Cond. 3 say - the pieces v, x, and y together have length at most p. This condition is useful in proving that certain languages are not context free. Lecture 15 UofH - COSC 3340 - Dr. Verma

Proof of pumping lemma Idea: If a sufficiently long string s of is derived by a CFG then there is a repeated nonterminal on a path in the parse tree. One such repeated nonterminal must have a nonempty yield “on the sides” – v, y. This nonterminal can be used to build infinitely many longer strings (and one shorter string, i = 0 case) derived by the CFG. Uses: Pigeon-hole principle Lecture 15 UofH - COSC 3340 - Dr. Verma

Details of Proof of Pumping Lemma. Let A be a CFL and let G be a CFG that generates it. We must how any sufficiently long string s in A can be pumped and remain in A. Let s be a very long string in A. Since s is in A, it is derivable from G and so has a parse tree. The parse tree for s must be very tall because s is very long. Lecture 15 UofH - COSC 3340 - Dr. Verma

Details of Proof of Pumping Lemma (contd). How long does s have to be? Let b be the maximum number of symbols in the right-hand side of a rule. Assume b  2. A parse tree using this grammar can have no more than b children. At least b leaves are 1 step from the start variable; at most b2 leaves are at most 2 steps from the start variable; at most bh leaves are at most h steps from the start variable. Lecture 15 UofH - COSC 3340 - Dr. Verma

Details of Proof of Pumping Lemma (contd). So, if the height of the parse tree is at most h, the length of the string generated is at most bh Let |V | = number of nonterminals in G Set p = b|V|+2 Because b  2, we know that p > b|V|+1, so a parse tree for any string in A of length at least p requires height at least |V | + 2. Therefore, let s in A be of length at least p. Lecture 15 UofH - COSC 3340 - Dr. Verma

Details of Proof of Pumping Lemma (contd). The parse tree must contain some long path from the start variable at the root of the tree to one of the terminal symbol at a leaf. On this long path some variable symbol R must repeat because of the pigeonhole principle. T R . u x v y z We start with a smallest parse tree with yield w Lecture 15 UofH - COSC 3340 - Dr. Verma

Details of Proof of Pumping Lemma (contd). This repetition of R allows us to replace the subtree under the 2nd occurrence of R with the subtree under the 1st occurrence of R and still get a legal parse tree. Therefore we may cut s into 5 pieces uvxyz as the figure indicates and we may repeat the 2nd and 4th pieces and obtain a sting in the language. T . . . . R . . . R u v R y z v x y Lecture 15 UofH - COSC 3340 - Dr. Verma

Details of Proof of Pumping Lemma (contd). In other words, uvixyiz is in A for any i  0. even if i = 0. T . . . . R x u z Lecture 15 UofH - COSC 3340 - Dr. Verma

Some Applications of Pumping Lemma The following languages are not context-free. 1. {anbncn | n  0 }. 2. {a{n2} | n  0}. 3. {w in {a,b,c}* | w has equal a’s, b’s and c’s}. Lecture 15 UofH - COSC 3340 - Dr. Verma

Example: CFL L = {anbncn | n  0 }. L is not context free. To show this, assume L is a CFL. L is infinite. Let w = apbpcp, p is the pumping length |vy|  0 a … a b … b c … c |vxy|  p p p p |w| = 3p  p Lecture 15 UofH - COSC 3340 - Dr. Verma

Example (contd.) a … a b … b c … c Case 1: Both v and y contain only one type of alphabet symbols, v does not contain both a’s and b’s or both b’s and c’s and the same holds for y. In this case the string uv2xy2z cannot contain equal number of a’s, b’s and c’s. Therefore, uv2xy2z  L a … a b … b c … c v x y Lecture 15 UofH - COSC 3340 - Dr. Verma

Example (contd.) a … a b b b… b c … c Case 2: Either v or y contain more that one type of alphabet symbols. In this case the string uv2xy2z may contain equal number of the three alphabet symbols but won’t contain them in the correct order. Therefore, uv2xy2z  L a … a b b b… b c … c v x y Lecture 15 UofH - COSC 3340 - Dr. Verma

CFL’s not closed under intersection and complement Let Σ = {a,b,c}. L = {w over Σ | w has equal a’s and b’s}. L’ = {w over Σ | w has equal b’s and c’s}. L, L’ are CFLs. L intersect L’ = {w over Σ | w has equal a’s, b’s and c’s}, which is not a CFL. Because of closure under Union and DeMorgan’s law, CFLs are not closed under complement also. CFLs are closed under intersection with regular languages. Lecture 15 UofH - COSC 3340 - Dr. Verma

Tips of the trade -- Do not forget! Closure properties can be used effectively for: (1) Shortening cumbersome Pumping lemma arguments. Example: {w in {a, b, c}* | w has equal a's, b's, and c's}. (2) For showing that certain languages are context-free. Example: {w in {a, b, c}* | w has equal a's and b's or equal b's and c's }. Lecture 15 UofH - COSC 3340 - Dr. Verma