# Pumping Lemma - PowerPoint PPT Presentation

1 / 64

Pumping Lemma. Problem: Let B be the language of all palindromes over {0,1} containing an equal number of 0s and 1s. Show that B is not CFL Solution: We assume that B is a CFL and obtain a contradiction.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Pumping Lemma

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

### Pumping Lemma

Problem:

• Let B be the language of all palindromes over {0,1} containing an equal number of 0s and 1s. Show that B is not CFL

Solution:

• We assume that B is a CFL and obtain a contradiction.

• Let p be the pumping constant of B that is guaranteed to exist by the pumping lemma. Select the string s= 0p1p1p0p.

• Clearly sis a member of B and of length at least p . We can show that no matter how we divide sinto uvxyz, one of the conditions of the lemma is violated.

• Pumping lemma, | vxy |<= p , we can only place vxy in the following ways:

• vxy completely falls in the first 0p

• If we pump v and y , then the new string is no longer a palindrome, and the number of 0s will be greater than the number of 1s, which is a contradiction.

• vxy falls between 0pand 1p

• In this case, v will only contain 0s while y will only contain 1s. So if we pump s , the new string is no longer palindrome, which is a contradiction.

• vxy completely falls in the first 1p

• Similar to (1), after pumping s , the number of 1s will be greater than the number of 0s, which is a contradiction.

• vxy falls between 1pand 1p

• After pumping s , the number of 1s will be greater than the number of 0s, which is a contradiction.

• vxy completely falls in the second 1p

• This case is same with (3).

• vxy falls between 1pand 0p

• Similar to (2), v will only contain 1s while y will only contain 0s. So if we pump s , the new string is no longer palindrome, which is a contradiction.

• vxy completely falls in the second 0p

• This case is same with (1).

Hence, B is not context free.

• Let L = {w  {0; 1}* : w = wR}.

• (a) Show that L is context-free by giving a context-free grammar for L.

• (b) Show that L is context-free by giving a pushdown automaton for L.

• (c) Show that L is not regular.

### CFG

• L is a symmetric language. Consider a context-free grammar for L : (V, Σ, R, S) , where

i. V = {S}

ii. Σ = {0,1}

iii. Rules:

S  0S0 |1S1| 0 |1|ε

iv. S = S V

### Pumping Lemma

• Assume that L regular. Let p be the pumping constant given by the pumping lemma.

• Let sbe the string 1p-1101p.

• scan be split into three pieces, s =xyz , where for any i >= 0 the string xyiz is in L .

• According to the pumping lemma condition, we must have | xy |<= p . If this is the case, then y must consist only of 1’s, so xyyz L . Therefore scannot be pumped.

### Pushdown Automaton -- PDA

Input String

Stack

States

Initial Stack Symbol

Stack

Stack

stack

top

bottom

special symbol

Appears at time 0

### The States

Pop

symbol

Input

symbol

Push

symbol

input

stack

top

Replace

input

stack

top

Push

input

stack

top

Pop

input

stack

top

No Change

Empty Stack

input

stack

empty

Pop

top

The automaton HALTS

No possible transition after

A Possible Transition

input

stack

Pop

top

### Non-Determinism

PDAs are non-deterministic

Allowed non-deterministic transitions

### Example PDA

PDA

Basic Idea:

• Push the a’s

• on the stack

2. Match the b’s on input

with a’s on stack

3. Match

found

Input

Stack

Input

Stack

Input

Stack

Input

Stack

Input

Stack

Input

Stack

Input

Stack

Input

Stack

Input

Stack

accept

• A string is accepted if there is a computation such that:

• All the input is consumed

• The last state is an accepting state

• At the end of the computation,

• we do not care about the stack contents

• (the stack can be empty at the last state)

is the language accepted by the PDA:

reject

### Another PDA example

• Push v

• on stack

3. Match vR on input

with v on stack

2. Guess

middle

of input

4. Match

found

Guess the middle

of string

accept

Rejection Example:

Input

Guess the middle

of string

There is no possible transition.

Input is not consumed

Another computation on same string:

final state

is not reached

aab

abbb (r)

Pop

symbol

Input

symbol

Push

string

Example:

pushed

string

top

Push

abbbaa