Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 22 Pumping Lemma for Context Free Languages

Similar presentations


Presentation on theme: "Lecture 22 Pumping Lemma for Context Free Languages"— Presentation transcript:

1 Lecture 22 Pumping Lemma for Context Free Languages
CSCE 355 Foundations of Computation Lecture 22 Pumping Lemma for Context Free Languages Topics: Normal forms Pumping Lemma for CFLs Closure properties November 19, 2008

2 Last Time: New: Useless symbols:
generating symbols, useful symbols Algorithm for generating and reachable symbols Removal of useless symbols Removal of epsilon productions; Removal of unit productions Chomsky normal form New: Chomsky Hierarchy Pumping Lemma for Context Free Languages

3 Algorithm for generating and reachable symbols
Useless symbols: generating symbols, useful symbols Algorithm for generating and reachable symbols Removal of useless symbols Removal of epsilon productions; Removal of unit productions Chomsky normal form

4 Chomsky Normal Form A CFG (Context Free Grammar) is in Chomsky Normal form if productions are one of the following two forms: A  BC A  a References

5 Conversion to Chomsky Normal Form
Remove: ε-productions, unit productions A  BCDE A  abc In general For each terminal ‘a’ create a new non-terminal Na with Na  a added as a production A  B1B2…Bk create a new non-terminals C1C2…Ck and replace the production with A  B1C1 and Ci  Bi+1Ci+1 for i=1,…k-3 Ck-2  Bk-1Bk

6 Example

7

8

9 Regular Grammars A CFG is regular if all productions are of the form:
A  a or A  aB Note sentential forms in a derivation based on a regular grammar have a unique form! What is it ? Grammar  NFA construction Create a state for each nonterminal. A  aB means δ(A, a) = B and A  a means δ(A, a) = Qfinal and

10 Example

11 Chomsky Hierarchy http://en.wikipedia.org/wiki/Chomsky_hierarchy
Grammar Languages Automaton Production rules (constraints) Type-0 Recursively enumerable Turing machine α  β no restrictions Type-1 Context-sensitive Linear-bounded non-deterministic Turing machine αAβ  αγβ Type-2 Context-free Non-deterministic pushdown automaton A  α Type-3 Regular DFA A  a or A  aB

12 Chomsky Hierarchy Venn Diagram

13 Backus Naur Form (BNF) Backus Naur Form John Backus Peter Naur
N ::= α | … | β (just a CFG) John Backus Fortran compiler Peter Naur

14 Greibach Normal Form Each production RHS starts with a terminal
A  aα or S ε

15 Showing Languages are not CFLs
Recursive productions A  a A | b B  B a | b D  aDb | d A * α A β

16 Pumping Lemma for CFLs Let L be a CFL. Then there exists a constant n such that if z is a string in L of length at least n, then we can write z = uvwxy such that |vwx| =< n |vx| > 0 uviwxi y is in L for all i >= 0.

17 Idea behind proof Assume CNF (or do for L(G)-{ε}) Consider Parse Tree
Sufficiently long string z, means the parse tree must be sufficiently big.

18 Similarities to Pumping Lemma for Regular Languages
Given an arbitrary n. Carefully choose z in L (depending on n) with |z| >= n. Then for any partition z = uvwxy that satisfies |vx| > 0 |vwx| <= n We must be able to “pump”, i.e. uviwxiy is in L for all i >= 0

19 Example L = {anbncn | n > 0}
Given L as above, suppose we chose n for the Pumping Lemma (for CFLs). Choose z = Consider arbitrary partition of z = uvwxy satisfying | vwx| =< n |vx| > 0 Then show …

20 Example

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36 Homework 7.1.4 7.1.3 7.1.6


Download ppt "Lecture 22 Pumping Lemma for Context Free Languages"

Similar presentations


Ads by Google