Regular Pumping

46
Fall 2005 Costas Busch - RPI 1 Non-regular languages (Pumping Lemma)

Transcript of Regular Pumping

Page 1: Regular Pumping

Fall 2005 Costas Busch - RPI 1

Non-regular languages

(Pumping Lemma)

Page 2: Regular Pumping

Fall 2005 Costas Busch - RPI 2

Regular languages

ba* acb *

...etc

*)( bacb

Non-regular languages}0:{ nba nn

}*},{:{ bavvvR

Page 3: Regular Pumping

Fall 2005 Costas Busch - RPI 3

How can we prove that a languageis not regular?

L

Prove that there is no DFA or NFA or RE that accepts L

Difficulty: this is not easy to prove (since there is an infinite number of them)

Solution: use the Pumping Lemma !!!

Page 4: Regular Pumping

Fall 2005 Costas Busch - RPI 4

The Pigeonhole Principle

Page 5: Regular Pumping

Fall 2005 Costas Busch - RPI 5

pigeons

pigeonholes

4

3

Page 6: Regular Pumping

Fall 2005 Costas Busch - RPI 6

A pigeonhole mustcontain at least two pigeons

Page 7: Regular Pumping

Fall 2005 Costas Busch - RPI 7

...........

...........

pigeons

pigeonholes

n

m mn

Page 8: Regular Pumping

Fall 2005 Costas Busch - RPI 8

The Pigeonhole Principle

...........

pigeons

pigeonholes

n

m

mn There is a pigeonhole with at least 2 pigeons

Page 9: Regular Pumping

Fall 2005 Costas Busch - RPI 9

The Pigeonhole Principle

and

DFAs

Page 10: Regular Pumping

Fall 2005 Costas Busch - RPI 10

Consider a DFA with states 4

1q 2q 3qa

b

4q

b

a b

b

a a

Page 11: Regular Pumping

Fall 2005 Costas Busch - RPI 11

Consider the walk of a “long’’ string:

1q 2q 3qa

b

4q

b

b

b

a a

a

aaaab

1q 2q 3q 2q 3q 4qa a a a b

A state is repeated in the walk of

(length at least 4)

aaaab

Page 12: Regular Pumping

Fall 2005 Costas Busch - RPI 12

aaaab

1q 2q 3q 2q 3q 4qa a a a b

1q 2q 3q 4q

Pigeons:

Nests:(Automaton states)

Are more than

Walk of

The state is repeated as a result of the pigeonhole principle

(walk states)

Repeatedstate

Page 13: Regular Pumping

Fall 2005 Costas Busch - RPI 13

Consider the walk of a “long’’ string:

1q 2q 3qa

b

4q

b

b

b

a a

a

aabb

1q 2q 3q 4q 4qa a b b

A state is repeated in the walk of

(length at least 4)

Due to the pigeonhole principle:aabb

Page 14: Regular Pumping

Fall 2005 Costas Busch - RPI 14

aabb

1q 2q 3q 4qAutomaton States

Pigeons:

Nests:(Automaton states)

Are more than

Walk of

The state is repeated as a result of the pigeonhole principle

(walk states)1q 2q 3q 4q 4qa a b b

Repeatedstate

Page 15: Regular Pumping

Fall 2005 Costas Busch - RPI 15

iq...... ......

Repeated state

kw 21

1 2 k

Walk of

iq.... iq.... ....1 2 ki j1i 1j

Arbitrary DFA

DFA of states#|| wIf ,by the pigeonhole principle,a state is repeated in the walk

In General:

1q zq

zq1q

w

Page 16: Regular Pumping

Fall 2005 Costas Busch - RPI 16

mDFA of states#|| w

1q 2q 1mq mq

Walk of wPigeons:

Nests:(Automaton states)

Are morethan

(walk states)

iq.... iq.... ....1q

iq.... ....

zq

A state is repeated

Page 17: Regular Pumping

Fall 2005 Costas Busch - RPI 17

The Pumping Lemma

Page 18: Regular Pumping

Fall 2005 Costas Busch - RPI 18

Take an infinite regular languageL

There exists a DFA that accepts L

mstates

(contains an infinite number of strings)

Page 19: Regular Pumping

Fall 2005 Costas Busch - RPI 19

mw ||(number of states of DFA)

then, at least one state is repeated in the walk of w

q...... ......1 2 k

Take string with Lw

kw 21Walk in DFA of

Repeated state in DFA

Page 20: Regular Pumping

Fall 2005 Costas Busch - RPI 20

q

q....

Take to be the first state repeated

w

There could be many states repeated

q.... ....

Second

occurrence

First

occurrence

Unique states

One dimensional projection of walk :

1 2 ki j1i 1j

Page 21: Regular Pumping

Fall 2005 Costas Busch - RPI 21

q.... q.... ....

Second

occurrence

First

occurrence 1 2 ki j1i 1j

wOne dimensional projection of walk :

ix 1 jiy 1 kjz 1

xyzwWe can write

Page 22: Regular Pumping

Fall 2005 Costas Busch - RPI 22

zyxw

q... ...

x

y

z

In DFA:

...

...

1 ki1ij

1j

Page 23: Regular Pumping

Fall 2005 Costas Busch - RPI 23

Observation: myx ||length numberof statesof DFA

Since, in no state is repeated (except q)

xy

Unique States

q...

x

y

...

1 i1ij

Page 24: Regular Pumping

Fall 2005 Costas Busch - RPI 24

Observation: 1|| ylength

Since there is at least one transition in loop

q

y

...

1ij

Page 25: Regular Pumping

Fall 2005 Costas Busch - RPI 25

We do not care about the form of string z

q...

x

y

z

...

zmay actually overlap with the paths of and x y

Page 26: Regular Pumping

Fall 2005 Costas Busch - RPI 26

The string is accepted

zxAdditional string:

q... ...

x z

...

Do not follow loopy

...

1 ki1ij

1j

Page 27: Regular Pumping

Fall 2005 Costas Busch - RPI 27

The string is accepted

zyyx

q... ... ...

x z

Follow loop2 times

Additional string:

y

...

1 ki1ij

1j

Page 28: Regular Pumping

Fall 2005 Costas Busch - RPI 28

The string is accepted

zyyyx

q... ... ...

x z

Follow loop3 times

Additional string:

y

...

1 ki1ij

1j

Page 29: Regular Pumping

Fall 2005 Costas Busch - RPI 29

The string is accepted

zyx iIn General:

...,2,1,0i

q... ... ...

x z

Follow loop timesi

y

...

1 ki1ij

1j

Page 30: Regular Pumping

Fall 2005 Costas Busch - RPI 30

Lzyx i Therefore: ...,2,1,0i

Language accepted by the DFA

q... ... ...

x z

y

...

1 ki1ij

1j

Page 31: Regular Pumping

Fall 2005 Costas Busch - RPI 31

In other words, we described:

The Pumping Lemma !!!

Page 32: Regular Pumping

Fall 2005 Costas Busch - RPI 32

The Pumping Lemma:

• Given a infinite regular language L

• there exists an integer m

• for any string with length Lw mw ||

• we can write zyxw

• with andmyx || 1|| y

• such that: Lzyx i ...,2,1,0i

Page 33: Regular Pumping

Fall 2005 Costas Busch - RPI 33

Applications

of

the Pumping Lemma

Page 34: Regular Pumping

Fall 2005 Costas Busch - RPI 34

Observation:Every language of finite size has to be regular

Therefore, every non-regular languagehas to be of infinite size (contains an infinite number of strings)

(we can easily construct an NFA that accepts every string in the language)

Page 35: Regular Pumping

Fall 2005 Costas Busch - RPI 35

Suppose you want to prove thatAn infinite language is not regular

1. Assume the opposite: is regular

2. The pumping lemma should hold for

3. Use the pumping lemma to obtain a contradiction

L

L

L

4. Therefore, is not regular L

Page 36: Regular Pumping

Fall 2005 Costas Busch - RPI 36

Explanation of Step 3: How to get a contradiction

with pumping lemma

i. Find a particular string which satisfies

the conditions of the pumping lemma Lw

ii. Write xyzw

iii. Show that Lzxyw i for some 1i

iv. This gives a contradiction, since from

pumping lemma Lzxyw i

Page 37: Regular Pumping

Fall 2005 Costas Busch - RPI 37

Note: It suffices to show that only one stringgives a contradiction

Lw

You don’t need to obtaincontradiction for every Lw

Page 38: Regular Pumping

Fall 2005 Costas Busch - RPI 38

Theorem:The language }0:{ nbaL nn

is not regular

Proof: Use the Pumping Lemma

Example of Pumping Lemma application

Page 39: Regular Pumping

Fall 2005 Costas Busch - RPI 39

Assume for contradictionthat is a regular languageL

Since is infinitewe can apply the Pumping Lemma

L

}0:{ nbaL nn

Page 40: Regular Pumping

Fall 2005 Costas Busch - RPI 40

Let be the integer in the Pumping Lemma

Pick a string such that: w Lw

mw ||length

mmbawWe pick

m

}0:{ nbaL nn

Page 41: Regular Pumping

Fall 2005 Costas Busch - RPI 41

it must be that length

From the Pumping Lemma 1||,|| ymyx

babaaaaabaxyz mm ............

1, kay k

x y z

m m

Write: zyxba mm

Thus:

Page 42: Regular Pumping

Fall 2005 Costas Busch - RPI 42

From the Pumping Lemma: Lzyx i

...,2,1,0i

Thus:

mmbazyx

Lzyx 2

1, kay k

Page 43: Regular Pumping

Fall 2005 Costas Busch - RPI 43

From the Pumping Lemma:

Lbabaaaaaaazxy ...............2

x y z

km m

Thus:

Lzyx 2

mmbazyx 1, kay k

y

Lba mkm

Page 44: Regular Pumping

Fall 2005 Costas Busch - RPI 44

Lba mkm

}0:{ nbaL nnBUT:

Lba mkm

CONTRADICTION!!!

1≥k

Page 45: Regular Pumping

Fall 2005 Costas Busch - RPI 45

Our assumption thatis a regular language is not true

L

Conclusion: L is not a regular language

Therefore:

Page 46: Regular Pumping

Fall 2005 Costas Busch - RPI 46

Regular languages

Non-regular language }0:{ nba nn

)( **baL