tk prasadpumping lemma1 nonregularity proofs. tk prasadpumping lemma2 grand unification regular...
TRANSCRIPT
TK Prasad Pumping Lemma 1
Nonregularity Proofs
TK Prasad Pumping Lemma 2
Regular Languages: Grand UnificationGrand Unification
)(
)()(
DFAsL
NFAsLsNFAL
)()( RELFAL
(Parallel Simulation) (Rabin and Scott’s work)
(Collapsing graphs; Structural Induction)(S. Kleene’s work)
)()( RGLFAL (Construction)(Solving linear equations))()( RELRGL
TK Prasad Pumping Lemma 3
Role of various representations for Regular Languages
• Closure under complemention. (DFAs)• Closure under union, concatenation, and Kleene
star. (NFA-s, Regular expression.)• Consequence:
Closure under intersection by De Morgan’s Laws.
• Relationship to context-free languages. (Regular Grammars.)
• Ease of specification. (Regular expression.)
• Building tokenizers/lexical analyzers. (DFAs)
TK Prasad Pumping Lemma 4
regular.not is }0|{Show ibaL ii
Consider pairs of strings:
......:'
......:'n
si
nsi
bbbbv
aaaau
jiFbaq
Fbaqji
M
iiM
if ),(
),(
0*
0*
If L were regular, then there exists a DFA MM accepting L with the following property:
jibaqbaq jiM
iiM if ),(),( 0
*0
*
TK Prasad Pumping Lemma 5
jiaqaq jM
iM if ),(),( 0
*0
*
jibaqbaq ijM
iiM for ),(),( 0
*0
*
JUSTIFICATION: Otherwise, from the definition of DFA,
CLAIM:
which contradicts the earlier conclusion.
In order to satisfy
jiaqaq jM
iM if ),(),( 0
*0
*
the machine M must have a unique state for every i.Thus, M must have infiniteinfinite number of states, if Lis regular. This violates the definition of DFA.So, L must be non-regular.
TK Prasad Pumping Lemma 6
Using Closure Properties• Regular languages are closed under set-intersection.
• Note that regularity is a property of a collection, and not a property of an individual string in the collection.
21
21
21
LL
LL
LLL
L1=bit strings with even parityL2=bit strings with number of 1’s divisible by 3L=bit strings with number of 1’s a multiple of 6
TK Prasad Pumping Lemma 7
• Show that
is not regular. • Proof: If L were regular, ought to be
regular. However, is known to be non-regular. Hence, L cannot be regular.
• If R is a regular language and C is context-free, then may not be regular.
• Proof:
CR
CCR
ibaC
baRii
}0|{
**
} in s'# in '# | *},{{ bsabaL
RL CRL
TK Prasad Pumping Lemma 8
Prelude to Pumping Lemma
• Is 46551 divisible by 46?
• Is 46554 divisible by 46?
• Is 46552 divisible by 46?
Necessary vs sufficient condition
TK Prasad Pumping Lemma 9
Pumping Lemma for Regular Languages
• It is a necessary condition.– Every regular language satisfies it.– If a language violates it, it is not regular.
• RL => PL not PL => not RL
• It is not a sufficient condition.– Not every non-regular language violates it.
• not RL =>? PL or not PL (no conclusion)
TK Prasad Pumping Lemma 10
Basic Idea:
q0
b a
a
a,b
bb
a
q2 q3
q1
)(MLababbaaab
3102312310 qqqqqqqqqqbaaabbaba
TK Prasad Pumping Lemma 11
3102312310 qqqqqqqqqqbaaabbaba
Note,
)(MLababbSo,
)(MLabaaab3102312310 qqqqqqqqqq
baaabbaba
)()()( :, MLaaababbabji ji
TK Prasad Pumping Lemma 12
Fundamental Observation
• Given a “sufficiently” long string, the states of a DFA must repeat in an accepting computation. These cycles can then be used to predict (generate) infinitely many other strings in (of) the language.
Pigeon-Hole Principle
TK Prasad Pumping Lemma 13
Pumping Lemma
• Let L be a regular language that is accepted by a DFA M with k states. Let z be any string in L with . Then z can be decomposed as uvw with
Lwuvi
vlength
kuvlength
i
:0
and ,0)(
,)(
kzlength )(
TK Prasad Pumping Lemma 14
)0 :(
0) || ( ) || (
)( :
|| :
Lwuvii
vkuv
suvwu,v,w
ksLs
i
For all sufficiently long strings (z) There exists non-null prefix (uv) and substring (v) For all repetitions of the substring (v), we get strings in the language.
TK Prasad Pumping Lemma 15
Proving non-regularity
• If there exists an arbitrarily long string s L, and for each decomposition s = uvw, there exists an i such that , then L is non-regular.
)0 :(
0) || ( ) || (
)( :
|| :
Lwuvii
vkuv
suvwu,v,w
ksLs
i
Negation of the necessary condition:
Lwuvi
TK Prasad Pumping Lemma 16
Examples
Applying Pumping Lemma
TK Prasad Pumping Lemma 17
Proof by contradiction:
• Let be accepted by a k-state DFA.
• Choose
• For all prefixes of length
• show there exists such that
• i.e.,
regular.not is
}number primea is |{ paL pp
pLk nas n primea is where,
,kj ,ji p
jnij Laa j )(
number. compositea is )( jnij j
TK Prasad Pumping Lemma 18
• Choose (For this specific problem happens to be
independent of j, but that need not always be the case.)
• is non-regular because it violates the necessary condition.
1ni j
ji
number! composite
)1(*
)1(
jn
nn*jjnnj*
pL
,...)( , 21211p
nnp
nn LaaLaa
TK Prasad Pumping Lemma 19
Proof : (For this example, choice of initial string is crucial.)
• For this choice of s, the pumping lemma cannot generate a contradiction!
• However, let instead.
}|{ mnbaL mnp
DFAof states ofnumber where nas n
1 nn bas
:String Pumped
:String Original1*
1
njnji
njnj
baa
baas
TK Prasad Pumping Lemma 20
• For
• Thus, by pumping the substring containing a’s 0 times (effectively deleting it), the number of a’s can be made smaller than the number of b’s.
• So, by pumping lemma, L is non-regular.
njn
jni
1
1 0
TK Prasad Pumping Lemma 21
• Proof by contradiction:– If is regular, then so is , the complement of
– But which is known to be non-regular.
– So, cannot be regular.
regular.not is
}number compositea is |{ caL cc
pc LLa cLa
cL .cL
cL
TK Prasad Pumping Lemma 22
Summary: Proof Techniques
• Counter Examples
• Constructions/Simulations
• Induction Proofs
• Impossibility Proofs
• Proofs by Contradiction
• Reduction Proofs : Closure Properties