690 likes | 1.3k Views
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.
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. • This is a contradiction.
Pushdown Automaton -- PDA Input String Stack States
Initial Stack Symbol Stack Stack stack head 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)
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
Rejection Example: Input