NFAs accept the Regular Languages

Post on 06-Feb-2016

37 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

NFAs accept the Regular Languages. Equivalence of Machines. Definition: Machine is equivalent to machine if. Example of equivalent machines. NFA. FA. We will prove:. Languages accepted by NFAs. Regular Languages. Languages accepted by FAs. NFAs and FAs have the - PowerPoint PPT Presentation

Transcript

1

NFAs accept the Regular Languages

2

Equivalence of Machines

Definition:

Machine is equivalent to machine

if

1M 2M

21 MLML

3

Example of equivalent machines

0q 1q

0

1

0q 1q 2q

0

11

0

1,0

NFA

FA

*}10{1 ML

*}10{2 ML

1M

2M

4

We will prove:

Languages acceptedby NFAs

RegularLanguages

NFAs and FAs have the same computation power

Languages acceptedby FAs

5

Languages acceptedby NFAs

RegularLanguages

Languages acceptedby NFAs

RegularLanguages

We will show:

6

Languages acceptedby NFAs

RegularLanguages

Proof-Step 1

Proof: Every FA is trivially an NFA

Any language accepted by a FAis also accepted by an NFA

L

7

Languages acceptedby NFAs

RegularLanguages

Proof-Step 2

Proof: Any NFA can be converted to anequivalent FA

Any language accepted by an NFAis also accepted by a FA

L

8

NFA to FA: Remarks

We are given an NFA

We want to convert it to an equivalent FA

With

M

M

)(MLML

9

If the NFA has states

the FA has states in the powerset

,...,, 210 qqq

,....,,,,,,, 7432110 qqqqqqq

10

Procedure NFA to FA

1. Initial state of NFA:

Initial state of FA:

0q

0q

11

Example

a

b

a

0q 1q 2q

NFA

FA

0q

M

M

12

Procedure NFA to FA

2. For every FA’s state

Compute in the NFA

Add transition to FA

},...,,{ mji qqq

...

,,*

,,*

aq

aq

j

i

},...,,{ mji qqq

},...,,{},,...,,{ mjimji qqqaqqq

13

Example

a

b

a

0q 1q 2q

NFA

0q 21,qqa

FA

},{),(* 210 qqaq

210 ,, qqaq

M

M

14

Procedure NFA to FA

Repeat Step 2 for all letters in alphabet,

untilno more transitions can be added.

15

Convert NFA to FA

),(* 0 bq

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

M

M

16

Example

)},({* 2,1 aqq

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

ab

M

M

21,qq

)},({* 2,1 bqq 0q

17

Example

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

ab

ba,

M

M

18

Procedure NFA to FA

3. For any FA state

If is accepting state in NFA

Then, is accepting state in FA

},...,,{ mji qqq

jq

},...,,{ mji qqq

19

Example

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

ab

ba,

Fq 1

Fqq 21,

M

M

20

Convert NFA to FA

a

b

a

0q 1q 2q

NFA

FA

0q

M

M

21

Convert NFA to FA

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

M

M

22

Convert NFA to FA

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

M

M

23

Convert NFA to FA

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

a

M

M

24

Convert NFA to FA

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

ab

M

M

25

Convert NFA to FA

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

ab

ba,

M

M

26

Convert NFA to FA

a

b

a

0q 1q 2q

NFA

FA

0q 21,qqa

b

ab

ba,

M

M

)(MLML

27

Theorem Take NFA M

Apply procedure to obtain FA M

Then and are equivalent :M M

MLML

28

Proof

MLML

MLML MLML AND

29

MLML First we show:

)(MLwTake arbitrary:

We will prove: )(MLw

30

)(MLw

w

kw 21

0q fq:M

:M 0q fq1 2 k

31

i

i

denotes

iq jq

iq jq

32

0q fq

kw 211 2 k

:M

}{ 0q

1 2 k:M

},{ fq

)(MLw

)(MLw

We will show that if

then

33

0q mq

naaav 211a 2a na:M

}{ 0q

1a 2a na:M },{ iq

iq jq lq

},{ jq },{ lq },{ mq

More generally, we will show that if in :M

(arbitrary string)

then

34

0q 1a:M

}{ 0q

1a:M },{ iq

iq

Proof by induction on

Induction Basis: 1av

|| v

Is true by construction of :M

35

Induction hypothesis: kv ||1

0q dq1a 2a ka:M iq jq cq

}{ 0q

1a 2a ka:M },{ iq },{ jq },{ cq },{ dq

kaaav 21

36

Induction Step: 1|| kv

0q dq1a 2a ka:M iq jq cq

}{ 0q

1a 2a ka:M },{ iq },{ jq },{ cq },{ dq

1121

kk

v

k avaaaav

v

v

37

Induction Step: 1|| kv

0q dq1a 2a ka:M iq jq cq

}{ 0q

1a 2a ka:M },{ iq },{ jq },{ cq },{ dq

1121

kk

v

k avaaaav

v

v

1ka

},{ eq

eq1ka

38

0q fq

kw 211 2 k

:M

}{ 0q

1 2 k:M

},{ fq

)(MLw

)(MLw

Therefore if

then

39

We have shown: MLML

We also need to show: MLML

(proof is similar)

40

Single Accepting State for NFAs

41

Any NFA can be converted

to an equivalent NFA

with a single accepting state

42

a

b

b

aNFA

Equivalent NFA

a

b

b

a

Example

43

NFAIn General

Equivalent NFA

Singleacceptingstate

44

Extreme Case

NFA without accepting state

Add an accepting statewithout transitions

45

Properties of Regular Languages

46

1L 2L

21LLConcatenation:

*1LStar:

21 LL Union:

Are regularLanguages

For regular languages and we will prove that:

1L

21 LL

Complement:

Intersection:

RL1Reversal:

47

We say: Regular languages are closed under

21LLConcatenation:

*1LStar:

21 LL Union:

1L

21 LL

Complement:

Intersection:

RL1Reversal:

48

1LRegular language

11 LML

1M

Single accepting state

NFA 2M

2L

Single accepting state

22 LML

Regular language

NFA

49

Example

baL 2ab

2M

}{1 baL na

b

1M0n

50

UnionNFA for

1M

2M

21 LL

51

Example

a

b

ab

}{1 baL n

}{2 baL

}{}{21 babaLL n NFA for

52

Concatenation

NFA for 21LL

1M 2M

53

Example NFA for

a

b ab

}{1 baL n}{2 baL

}{}}{{21 bbaababaLL nn

54

Star OperationNFA for *1L

1M

*1L

55

Example

NFA for *}{*1 baL n

a

b

}{1 baL n

1

21

Lw

wwww

i

k

56

Reverse

1M

RL1NFA for

1M

1. Reverse all transitions

2. Make initial state accepting state and vice versa

1L

57

Example

}{1 baL na

b

1M

1M

}{1nR baL

a

b

58

Complement

1. Take the FA that accepts 1L

1M1L

2. Make final states non-final, and vice-versa

1M1L

59

Example

}{1 baL n

a

b

1M

ba,

ba,

}{*},{1 babaL n a

b

1M

ba,

ba,

60

Intersection

1L regular

2L regular

We show 21 LL

regular

61

DeMorgan’s Law: 2121 LLLL

21 , LL regular

21 , LL regular

21 LL regular

21 LL regular

21 LL regular

62

Example

}{1 baL n

},{2 baabL

regular

regular

}{21 abLL

regular

63

1Lfor for 2LFA

1M

FA

2M

Construct a new FA that accepts

Machine Machine

M 21 LL

Msimulates in parallel and 1M 2M

Another Proof for Intersection Closure

64

States in M

ji pq ,

1M 2MState in State in

65

1M 2M

1q 2qa

transition

1p 2pa

transition

FA FA

11, pq a

transition

MFA

22 , pq

66

0q

initial state

0p

initial state

Initial state

00 , pq

1M 2MFA FA

MFA

67

iq

accept state

jp

accept states

accept states

ji pq ,

kp

ki pq ,

1M 2MFA FA

MFA

Both constituents must be accepting states

68

Example:

}{1 baL n

a

b

1M

0n

}{2mabL

b

b

2M

0q 1q 0p 1p

0m

2q 2pa

a

ba, ba,

ba,

69

00, pq

Automaton for intersection

}{}{}{ ababbaL nn

10, pqa

21, pq

b

ab 11, pq

20, pq

a

12, pq

22, pq

b

ba,

a

b

ba,

b

a

70

M simulates in parallel and 1M 2M

M accepts string w if and only if

accepts string and w1M

accepts string w2M

)()()( 21 MLMLML

top related