+ All Categories
Home > Documents > 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation,...

1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation,...

Date post: 30-Dec-2015
Category:
Upload: avice-dawson
View: 218 times
Download: 1 times
Share this document with a friend
122
1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012
Transcript
Page 1: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

1

CDT314

FABER

Formal Languages, Automata and Models of Computation

Lecture 5

School of Innovation, Design and Engineering Mälardalen University

2012

Page 2: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

2

Content

- More Properties of Regular Languages (RL)- Standard Representations of RL- Elementary Questions about RL- Non-Regular Languages- The Pigeonhole Principle- The Pumping Lemma- Applications of the Pumping Lemma- NFA-DFA repetition

Page 3: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

3

More Properties of

Regular Languages

Based on C Busch, RPI, Models of Computation

Page 4: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

4

We have shown

Regular languages are closed under

Union

Concatenation

Star operation

Reverse

Page 5: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

5

Namely, for regular languages and :1L 2L

21 LL

21LL

1L

Union

Concatenation

Star operation

Reverse RL1

Regular

Languages

Page 6: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

6

We will show that

Regular languages are also closed under

Complement

Intersection

Page 7: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

7

Namely, for regular languages and :1L 2L

1L

21 LL

Complement

Intersection

Regular

Languages

Page 8: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

8

Complement

Theorem For regular language

the complement is regular. LL

Proof

Take DFA that accepts and exchange:L

non-accepting states accepting states

LResulting DFA accepts

Page 9: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

9

Examplea

b ba,

ba,

0q 1q 2q

)*( baLL

a

b ba,

ba,

0q 1q 2q

)))((( bababaaLL

Page 10: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

10

Intersection

Theorem For regular languages and

the intersection is regular. 21 LL 1L 2L

Proof Apply DeMorgan’s Law:

2121 LLLL

Page 11: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

11

21 , LL regular

21 , LL regular

21 LL regular

21 LL regular

21 LL regular

Page 12: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

12

Standard Representations of

Regular Languages

Page 13: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

13

Regular Language Representations

DFA

NFA

Regular

Expression

Regular

Grammar

Regular

Language

Page 14: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

14

Elementary Questionsabout

Regular Languages

Page 15: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

15

Membership Question

Question: Given regular language

and string

how can we check if ?

L

Lw w

Answer: Take the DFA that accepts

and check if is accepted.

Lw

Page 16: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

16

Lw

DFAw

Lw

DFAw

Page 17: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

17

Take the DFA that accepts .

Check if there is a path from

the initial state to a final state.

L

Given regular language

how can we check

if is empty: ?

L

L )( L

Question:

Answer:

Empty Language Question

Page 18: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

18

DFA

L

L

DFA

Page 19: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

19

Given regular language

how can we check

if is finite?

L

L

Take the DFA that accepts .

Check if there is a walk with a cycle

from the initial state to a final state.

L

Question:

Answer:

Finiteness Question

Page 20: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

20

DFA

L is infinite

DFA

L is finite

Page 21: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

21

Given regular languages and

how can we check if ? 1L 2L

21 LL Question:

)()( 2121 LLLLFind ifAnswer:

Equality Question

Page 22: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

22

)()( 2121 LLLL

21 LL 21 LLand

21 LL

1L2L 1L2L

21 LL 12 LL 2L 1L

Page 23: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

23

)()( 2121 LLLL

21 LL 21 LLor

1L2L 1L2L

21 LL 12 LL

21 LL

Page 24: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

24

Non-Regular Languages

Page 25: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

25

Regular languages

ba * acb *

...etc

*)( bacb

Non-regular languages???

Page 26: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

26

How can we prove that a language

is not regular?

L

Prove that there is no DFA that accepts L

Problem: this is not easy to prove.

Solution: the Pumping Lemma !

a

b

b

a

a

b

}0:{ nbaL nn

Page 27: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

27

The Pigeonhole Principle

Page 28: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

28

The Pigeonhole Principle

Page 29: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

29

pigeons

pigeonholes

4

3

Page 30: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

30

A pigeonhole must

contain at least two pigeons

Page 31: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

31

...........

...........

pigeonsn

pigeonholesm mn

Page 32: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

32

The Pigeonhole Principle

...........

pigeons

pigeonholes

n

m

mn There is a pigeonhole

with at least 2 pigeons

Page 33: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

33

The Pigeonhole Principleand DFAs

Page 34: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

34

DFA with states 4

1q 2q 3qa

b

4q

b

b b

b

a a

Page 35: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

35

1q 2q 3qa

b

4q

b

b

b

a a

a

In walks of strings:

aab

aa

ano state

is repeated

Page 36: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

36

In walks of strings:

1q 2q 3qa

b

4q

b

b

b

a a

a

...abbbabbabb

abbabb

bbaa

aabb a state

is repeated

Page 37: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

37

If the walk of string has length

1q 2q 3qa

b

4q

b

b

b

a a

a

w 4|| w

then a state is repeated

Page 38: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

38

If in a walk of a string

transitions states of DFA

then a state is repeated

Pigeonhole principle for any DFA:

w

Page 39: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

39

In other words for a string

transitions are pigeons

states are pigeonholesq

a

w

Page 40: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

40

A string has length number of states w

A state must be repeated in the walk of wq

In general

...... ......

walk of w

q

Page 41: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

41

The Pumping Lemmafor Regular Languages

see alsohttp://www.math.uu.se/~salling/Movies/Nonregularity.mov

Page 42: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

42

Take an infinite regular language L

DFA that accepts L

nstates

Page 43: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

43

Take string with w Lw

There is a walk with label w

.........

walk w

Page 44: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

44

If string has length w1|| nmw

then, from the pigeonhole principle:

a state is repeated in the walkq w

...... ......

walk w

( number of states)

q

n

Page 45: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

45

Write zyxw

...... ......

x

y

z

q

Page 46: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

46

myx ||

Lengths:

1|| y

...... ......

x

y

z

q

(from pigeon principle, as q is the first repetition in sequence)

(there is a walk in the graph)

Page 47: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

47

The string is accepted zxObservation:

...... ......

x

y

z

q

Page 48: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

48

The string

is accepted

zyyxObservation:

...... ......

x

y

z

q

Page 49: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

49

The string

is accepted

zyyyxObservation:

...... ......

x

y

z

q

Page 50: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

50

The string

zyx iGenerally:

...,2,1,0i

...... ......

x

y

z

q

is accepted

Page 51: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

51

The Pumping Lemma

Given an infinite regular language L

there exists an integer such that m

for any string with length Lw mw ||

we can write zyxw

with andmyx || 1|| y

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

Page 52: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

52

Applications of

the Pumping Lemma

Page 53: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

53

Theorem

The language}0:{ nbaL nn

is not regular.

Proof

Use the Pumping Lemma!

Page 54: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

54

Assume to the contrary,

that is a regular language.L

Since is infinite

we can apply the Pumping Lemma.

L

}0:{ nbaL nn

Page 55: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

55

Let be the integer in the Pumping Lemma

Pick a string such that: w Lw

mw ||with length

mmbaw e.g. pick

m

}0:{ nbaL nn

Page 56: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

56

Write: zyxba mm

it must be that length

From the Pumping Lemma

1||,|| ymyx

Therefore:

1, kay k

babaaaaba mm ............

x y z

m m

Page 57: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

57

From the Pumping Lemma: Lzyx i ...,2,1,0i

We can choose

mmbazyx

0i

We have:

1, kay k

Lbaw mkm

CONTRADICTION!

Page 58: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

58

Therefore: Our assumption that

is a regular language is not true.

L

Conclusion

L is not a regular language.

END OF PROOF

Page 59: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

59

Regular languages

ba * acb *

...etc

*)( bacb

Non-regular languages

}0:{ nba nn

Page 60: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

60

Theorem The language

Proof

Use the Pumping Lemma!

is not regular.

*}:{ wwwL R },{ ba

Page 61: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

61

*}:{ wwwL R

Assume to the contrary,

that is a regular language.

Since is infinite

we can apply the Pumping Lemma.

L

L

Page 62: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

62

mmmm abbaw pick

Pick a string such that: w Lw

mw ||length

Let be the integer in the Pumping Lemma.m

*}:{ wwwL R

Page 63: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

63

Write zyxabba mmmm

it must be that length

From the Pumping Lemma

ababbabaaaaabba mmmm ..................

x y z

m m m m

1||,|| ymyx

1, kay k

Page 64: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

64

ababbabaaaaabba mmmm ..................

x y z

m m m m

1, kay k

We can choose 0i

CONTRADICTION!

So we get a’s on the left,

while is on the right:

km m

Page 65: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

65

Conclusion

L is not a regular language.

Our assumption that

is a regular language is not true.

Therefore:

END OF PROOF

L

Page 66: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

66

Regular languages

ba * acb *

...etc

*)( bacb

Non-regular languages

}0:{ nba nn *}:{ wwwR

Page 67: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

67

Theorem The language

is not regular.

Proof

Use the Pumping Lemma.

}0,:{ lncbaL lnln

Page 68: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

68

Assume to the contrary

that is a regular language.L

Since is infinite

we can apply the Pumping Lemma.

L

}0,:{ lncbaL lnln

Page 69: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

69

mmm cbaw 2Pick

Let be the integer in the Pumping Lemma.

Pick a string such that: w Lw

mw ||length

m

}0,:{ lncbaL lnln

Page 70: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

70

Write zyxcba mmm 2

cccbcabaaaaacba mmm ..................2

x y z

m m m2

it must be that length

From the Pumping Lemma

1||,|| ymyx

1, kay k

Page 71: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

71

From the Pumping Lemma

Lzyx i ...,2,1,0i

Thus:

Lcbazxzyx mmkm 20

Lzyx 0

mmm cbazyx 2We have:

1, kay k

Page 72: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

72

Lcba mmkm 2Therefore:

Lcba mmkm 2

BUT:

CONTRADICTION!

}0,:{ lncbaL lnln

Page 73: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

73

Conclusion

L is not a regular language.

LTherefore: Our assumption that

is a regular language is not true.

END OF PROOF

Page 74: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

74

Regular languages

Non-regular languages

}0,:{ lncba lnln

*}:{ wwwR

}0:{ nba nn

Page 75: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

75

Theorem

The language

is not regular.

ProofUse the Pumping Lemma.

}0:{ ! naL n

nnn )1(21!

Factorial of n, (n!) is the product of all positive integers less than or equal to n. For example, 5! = 5 x 4 x 3 x 2 x 1 = 120 The value of 0! is 1.

Page 76: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

76

Assume to the contrary

that is a regular language.L

Since is infinite

we can apply the Pumping Lemma.

L

}0:{ ! naL n

Page 77: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

77

!maw Pick

Pick a string such that: w

Lw mw ||length

Let be the integer in the Pumping Lemma.m

}0:{ ! naL n

Page 78: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

78

Write zyxam !

From the Pumping Lemma

aaaaaaaaaaam ...............!

x y z

m mm !

it must be that length 1||,|| ymyx

mkay k 1,

Page 79: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

79

From the Pumping Lemma:

Lzyx i ...,2,1,0i

Thus:

!mazyx

Lazyyxzyx km !2

Lzyx 2

We have:

mkay k 1,

Page 80: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

80

La km !Therefore:

!! pkm

}0:{ ! naL nSince:

mk 1

mk 1There is p

Page 81: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

81

However

)!1( += m)1(! += mm!! +< mmm

!!+£ mm!+£ mmkm !

for 1m

! ! ( 1)!m m k m

!! pkm for any p

Page 82: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

82

La km !

Therefore: La km !

BUT:

CONTRADICTION!

}0:{ ! naL n mk 1and

Page 83: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

83

Conclusion

L is not a regular language.

Our assumption that

is a regular language is not true.LTherefore:

END OF PROOF

Page 84: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

84

Regular languages

Non-regular languages

}0:{ ! nan}0,:{ lncba lnln

*}:{ wwwR}0:{ nba nn

Page 85: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

85

Theorem

The language

is not regular.

ProofUse the Pumping Lemma.

}:{ primeiaL i

Page 86: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

86

Assume to the contrary,

that is a regular language.L

Since is infinite

we can apply the Pumping Lemma.

L

}:{ primeiaL i

Page 87: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

87

it must be that length 1||,|| ymyx

Lw mw ||length

From the Pumping Lemma:

Lzyx i ...,2,1,0i

The length of zxyw k 1

must be prime for each string of .

mk

L

Page 88: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

88

Thus:

But, choosing

which is not prime!

CONTRADICTION!

))(1(

))((

)()(

)()( 1

ylengthk

ylengthkk

ylengthxyzlength

zxyylengthzxylengthk

kk

)( mk

Lw

( )length xyz k

Page 89: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

89

Conclusion

L is not a regular language.

Our assumption that

is a regular language is not true.LTherefore:

END OF PROOF

Page 90: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

90

Regular languages

Non-regular languages

}0:{ ! nan}0,:{ lncba lnln

*}:{ wwwR}0:{ nba nn

}:{ primeiaL i

Page 91: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

91

Theorem

The language}0:{ nbaL nn

is not regular.

Proof

Use the Pumping Lemma!

For your exercise:An alternative variant of proof from slide 53.

Page 92: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

92

Assume to the contrary

that is a regular language.L

Since is infinite

we can apply the Pumping Lemma.

L

}0:{ nbaL nn

Page 93: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

93

Pick a string such that: w Lw

mw ||length

mmbaw Pick

Let be the integer in the Pumping Lemma.m

}0:{ nbaL nn

Page 94: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

94

Write: zyxba mm

it must be that: length

From the Pumping Lemma

1||,|| ymyx

Therefore: babaaaaba mm ............

1, kay kx y z

m m

Page 95: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

95

From the Pumping Lemma: Lzyx i

...,2,1,0i

Thus:

mmbazyx

Lbazyyxzyx mkm 2

Lzyx 2

We have: 1, kay k

Page 96: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

96

Lba mkm Therefore:

}0:{ nbaL nnBUT:

Lba mkm

CONTRADICTION

Page 97: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

97

Our assumption that

is a regular language is not true.

L

Conclusion: L is not a regular language.

Therefore:

END OF PROOF

Page 98: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

98

Pumping Lemma, in short

Page 99: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

99

Observation:

Every language of finite size has to be regular.

(We can easily construct an NFA that accepts every string in the language, or a union of regular expressions)

Therefore, every non-regular language

has to be of infinite size. (contains an infinite number of strings)

Page 100: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

100

Suppose you want to prove that

An 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 101: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

101

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 102: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

102

Note: It suffices to show that

only one string

gives a contradiction Lw

You don’t need to obtain

contradiction for every Lw

Page 103: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

103

Extra Examples on Regular Languages

Page 104: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

104

FA RE

Page 105: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

105

FA RE

or

Page 106: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

106

NFA DFA

Subset Construction

Delmängdkonstruktion

Page 107: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

107

Convert an NFA to DFAusing the subset construction

Page 108: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

108

Each state of the DFA is a set of states of the NFA.

Start by the initial state of the DFA which is the -closure of the initial state of the NFA (all the states you reach by -transitions from the initial state) .

CLOSE{0}={0, 1, 3}=S0

Page 109: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

109

Determine the transition function of the DFA on all inputs. Begin with the initial state S0, and determine the transition on input a.

CLOSE{0} = {0, 1, 3} = S0

(S0, a) = CLOSE{1, 2}

Page 110: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

110

The e-closure of the set {1, 2} is {1, 2, 3}This is a new state in the DFA, call it S1.

CLOSE{0} = {0, 1, 3} = S0

(S0, a) = CLOSE{1, 2} = {1, 2, 3} = S1

Page 111: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

111

With the initial state S0, determine the transition on input b. CLOSE{0} = {0, 1, 3} = S0

(S0, a) = CLOSE{1, 2} = {1, 2, 3} = S1

(S0, b) = CLOSE{3}

Page 112: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

112

The -closure of the set {3} is {1, 3}. This is a new state in the DFA, call it S2.

CLOSE{0} = {0, 1, 3} = S0

(S0, a) = CLOSE{1, 2} = {1, 2, 3} = S1

(S0, b) = CLOSE{3} = {1, 3} = S2

Page 113: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

113

Determine the transition function of the DFA from state S1 oninputs a and b. On a there is no where to go in the NFA, so wecreate a “sink“(“trap”) state for DFA.

(S0, a) = CLOSE{1, 2} = {1, 2, 3} = S1

(S0, b) = CLOSE{3} = {1, 3} = S2

(S1, a) = CLOSE{} = = S3

Page 114: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

114

Determine the transition function of the DFA from state S1 oninputs a and b. On b there is a transition to an existing state S2.

(S0, a) = CLOSE{1, 2} = {1, 2, 3} = S1

(S0, b) = CLOSE{3} = {1, 3} = S2

(S1, a) = CLOSE{} = = S3

(S1, b) = CLOSE{3} = {1, 3} = S2

Page 115: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

115

Determine the transition from state S2 on inputs a and b.

(S0, a) = CLOSE{1, 2} = {1, 2, 3} = S1

(S0, b) = CLOSE{3} = {1, 3} = S2

(S1, a) = CLOSE{} = = S3

(S1, b) = CLOSE{3} = {1, 3} = S2

(S2, a) = CLOSE{} = = S3

(S2, b) = CLOSE{3} = {1, 3} = S2

Page 116: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

116

Determining the transition from state S2 on inputs a and b is easy;from the empty set of states there are no transitions in the NFA. Inthe DFA this is represented by a transition from the empty setback to itself.

Page 117: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

117

The final states of the DFA are determined from the final states of the NFA. State 3 was the only final state in the NFA. (Any set of NFA states containing a final state is a final state in the DFA.)

Page 118: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

118

NFA DFA RESULT

Page 119: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

State elimination

l+10* 0*11

0*1

q0 q1 q2

01

q0 q2

01

(l+10*)(0*1)*0*11

q0 q2

(l+10*)(0*1)*0*11 + 01

Page 120: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

Example 7

Convert the following NFA to DFA.

s

p

0

ε0 ε

0

1

1

ε

0

r

srp

0 qrp

1

s

q, r, p

0

10

1

q

Page 121: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

s

p

0

0

0

1

10

r

q

0q

1

q r p

0

1

0

1

Converting the NFA to DFA

p r sp r s

Page 122: 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 5 School of Innovation, Design and Engineering Mälardalen University 2012.

122

Application: Lex - lexical analyzer

Lex

RE NFA DFAMinimalDFA

The final states of the DFA are associated with actions.


Recommended