Module 36 - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

Module 36

Description:

Try and prove that these languages are CFL's and identify the ... Can be strengthened to Ogden's Lemma. In book. Choosing a good string x is first key step ... – PowerPoint PPT presentation

Number of Views:23
Avg rating:3.0/5.0
Slides: 28
Provided by: erict9
Learn more at: http://www.cse.msu.edu
Category:
Tags: module | ogden

less

Transcript and Presenter's Notes

Title: Module 36


1
Module 36
  • Non context-free languages
  • Examples and Intuition
  • Pumping lemma for CFLs
  • Pumping condition
  • No proof of pumping lemma
  • Applying pumping lemma to prove that some
    languages are not CFLs

2
Examples and Intuition
3
Examples
  • What are some examples of nonregular languages?
  • Can we build on any of these languages to create
    a non context-free language?

4
Intuition
  • Try and prove that these languages are CFLs and
    identify the stumbling blocks
  • Why cant we construct a CFG to generate this
    language?
  • Why cant we construct a PDA to accept this
    language?
  • Compare to similar CFL languages to try and
    identify differences.

5
Pumping Lemma for CFLs
6
Comparison to regular language pumping
lemma/condition
7
Whats different about CFLs than regular
languages?
  • In regular languages, a single substring pumps
  • Consider the language of even length strings over
    a,b
  • We can identify a single substring which can be
    pumped
  • In CFLs, multiple substrings can pump
  • Consider the language anbn n gt 0
  • No single substring can be pumped and allow us to
    stay in the language
  • However, there do exist pairs of substrings which
    can be pumped resulting in strings which stay in
    the language
  • This results in a modified pumping condition

8
Modified Pumping Condition
  • A language L satisfies the regular language
    pumping condition if
  • there exists an integer n gt 0 such that
  • for all strings x in L of length at least n
  • there exist strings u, v, w such that
  • x uvw and
  • uv lt n and
  • v gt 1 and
  • For all k gt 0, uvkw is in L
  • A language L satisfies the CFL pumping condition
    if
  • there exists an integer n gt 0 such that
  • for all strings x in L of length at least n
  • there exist strings u, v, w, y, z such that
  • x uvwyz and
  • vwy lt n and
  • vy gt 1 and
  • For all k gt 0, uvkwykz is in L

9
Pumping Lemma
  • All CFLs satisfy the CFL pumping condition

CFLs
10
Implications
Pumping
CFL
  • We can use the pumping lemma to prove a language
    L is not a CFL
  • Show L does not satisfy the CFL pumping condition
  • We cannot use the pumping lemma to prove a
    language is context-free
  • Showing L satisfies the pumping condition does
    not guarantee that L is context-free

11
Pumping Lemma
  • What does it mean?

12
Pumping Condition
  • A language L satisfies the CFL pumping condition
    if
  • there exists an integer n gt 0 such that
  • for all strings x in L of length at least n
  • there exist strings u, v, w, y, z such that
  • x uvwyz and
  • vwy lt n and
  • vy gt 1 and
  • For all k gt 0, uvkwykz is in L

13
v and y can be pumped
1) x in L2) x uvwyz3) For all k gt 0, uvkwykz
is in L
  • Let x abcdefg be in L
  • Then there exist 2 substrings v and y in x such
    that v and y can be repeated (pumped) in place
    any number of times and the resulting string is
    still in L
  • uvkwykz is in L for all k gt 0
  • For example
  • v cd and y f
  • uv0wy0z uwz abeg is in L
  • uv1wy1z uvwyz abcdefg is in L
  • uv2wy2z uvvwyyz abcdcdeffg is in L
  • uv3wy3z uvvvwyyyz abcdcdcdefffg is in L

14
What the other parts mean
  • A language L satisfies the CFL pumping condition
    if
  • there exists an integer n gt 0 such that
  • Since we skip this proof, we will not see what n
    really means
  • for all strings x in L of length at least n
  • x must be in L and have sufficient length
  • there exist strings u, v, w, y, z such that
  • x uvwyz and
  • vwy lt n and
  • v and y are contained within n characters of x
  • Note these are NOT necessarily the first n
    characters of x
  • vy gt 1 and
  • v and y cannot both be l,
  • One of them might be l, but not both
  • For all k gt 0, uvkwykz is in L

15
Example
  • Let L be the set of palindromes over a,b
  • Let x aabaa
  • Let n 3
  • What are the possibilities for v and y ignoring
    the pumping constraint?
  • Which ones satisfy the pumping lemma?

16
Pumping Lemma
  • Applying it to prove a specific language L is not
    context-free

17
How we use the Pumping Lemma
  • We choose a specific language L
  • For example, ajbjcj j gt 0
  • We show that L does not satisfy the pumping
    condition
  • We conclude that L is not context-free

18
Showing L does not pump
  • A language L satisfies the CFL pumping condition
    if
  • there exists an integer n gt 0 such that
  • for all strings x in L of length at least n
  • there exist strings u, v, w, y, z such that
  • x uvwyz and
  • vwy lt n and
  • vy gt 1 and
  • For all k gt 0, uvkwykz is in L
  • A language L does not satisfy the CFL pumping
    condition if
  • for all integers n of sufficient size
  • there exists a string x in L of length at least n
    such that
  • for all strings u, v, w, y, z such that
  • x uvwyz and
  • vwy lt n and
  • vy gt 1
  • There exists a k gt 0 such that uvkwykz is not in
    L

19
Example Proof
  • Proof that L aibici igt0 does not satisfy
    the CFL pumping condition
  • Let n be the integer from the pumping lemma
  • Choose x anbncn
  • Consider all strings u, v, w, y, z s.t.
  • x uvwyz and
  • vwy lt n and
  • vy gt 1
  • Argue that uvkwykz is not in L for some k gt 0
  • Argument must apply to all possible u,v,w,y,z
  • Continued on next slide
  • A language L does not satisfy the CFL pumping
    condition if
  • for all integers n of sufficient size
  • there exists a string x in L of length at least n
    such that
  • for all strings u, v, w, y, z such that
  • x uvwyz and
  • vwy lt n and
  • vy gt 1
  • There exists a k gt 0 such that uvkwykz is not in
    L

20
Example Proof Continued
  • Proof that L aibici igt0 does not satisfy
    the CFL pumping condition
  • Let n be the integer from the pumping lemma
  • Choose x anbncn
  • Consider all strings u, v, w, y, z s.t.
  • x uvwyz and
  • vwy lt n and
  • vy gt 1
  • Argue that uvkwykz is not in L for some k gt 0
  • Argument must apply to all possible u,v,w,y,z
  • Continued next column
  • Identify possible cases for vwy
  • What is impossible for vwy?
  • Case 1
  • vwy contains no as
  • Case 2
  • vwy contains no cs
  • Must argue uvkwykz is not in L for both cases
    described above
  • Can use different values of k
  • Continued on next slide

21
Example Proof Continued
  • Identify possible cases for vwy
  • What is impossible for vwy?
  • Case 1
  • vwy contains no as
  • Case 2
  • vwy contains no cs
  • Must argue uvkwykz is not in L for both cases
    described above
  • Can use different values of k
  • Continued next column
  • Case 1 vwy contains no as
  • vy contains at least 1 b or c
  • follows from
  • vwy contains no as and
  • vy gt 1
  • uwz is not in L
  • uwz has n as
  • follows from fact vwy contains no as and x
    originally had n as
  • uwz has fewer than n bs or fewer than n cs
  • follows from vy contains at least 1 b or c and x
    originally only had n bs and n cs
  • Continued next slide

22
Example Proof Continued
  • Case 1 vwy contains no as
  • vy contains at least 1 b or c
  • follows from
  • vwy contains no as and
  • vy gt 1
  • uwz is not in L
  • uwz has n as
  • follows from fact vwy contains no as and x
    originally had n as
  • uwz has fewer than n bs or fewer than n cs
  • follows from vy contains at least 1 b or c and x
    originally only had n bs and n cs
  • Continued next column
  • Case 2 vwy contains no cs
  • vy contains at least
  • uv2wy2z is not in L
  • uv2wy2z has n cs
  • follows from fact vwy contains no cs and x
    originally had n cs
  • uv2wy2z has more than n as or more than n bs
  • follows from vy contains at least 1 a or b and x
    originally has n as and n bs
  • Continued next slide

23
Example Proof Completed
  • For all possible u, v, w, y, z, we have shown
    there exists a kgt0 such that
  • uvkwykz is not in L
  • Note, we used a different value of k for each
    case (though we didnt have to)
  • Therefore L does not satisfy the CFL pumping
    condition
  • There L is not a CFL
  • Case 2 vwy contains no cs
  • vy contains at least
  • uv2wy2z is not in L
  • uv2wy2z has n cs
  • follows from fact vwy contains no cs and x
    originally had n cs
  • uv2wy2z has more than n as or more than n bs
  • follows from vy contains at least 1 a or b and x
    originally has n as and n bs
  • Continued next column

24
Other example languages
  • TWOCOPIES ww w is in a,b
  • abbabb is in TWOCOPIES but abaabb is not
  • EQUAL3 the set of strings over a, b, c such
    that the number of as equals the number of bs
    equals the number of cs
  • aibjck i lt j lt k

25
Pumping Lemma
  • Two rules of thumb

26
Two Rules of Thumb
  • Try to use blocks of at least n characters in x
  • For TWOCOPIES, choose x anbnanbn rather than
    anbanb
  • Guarantees v and y cannot be in more than 2
    blocks of x
  • Try k0 or k2
  • k0
  • This reduces number of occurrences of v and y
  • k2
  • This increases number of occurrences of v and y

27
Summary
  • We use the Pumping Lemma to prove a language is
    not a CFL
  • Note, does not work for all non CFL languages
  • Can be strengthened to Ogdens Lemma
  • In book
  • Choosing a good string x is first key step
  • Choosing a good k is second key step
  • Typically have several cases for v, w, y
Write a Comment
User Comments (0)
About PowerShow.com