+ All Categories
Home > Documents > Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf ·...

Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf ·...

Date post: 27-Mar-2019
Category:
Upload: lyxuyen
View: 287 times
Download: 0 times
Share this document with a friend
78
1 Non-Deterministic Finite Automata EC303, Lecture - 14 http://users.comlab.ox.ac.uk/luke. ong/teaching/moc/nfa2up.pdf
Transcript
Page 1: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

1

Non-Deterministic Finite Automata

EC303, Lecture - 14

http://users.comlab.ox.ac.uk/luke.ong/teaching/moc/nfa2up.pdf

Page 2: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

2

1q 2q

3q

a

a

a

0q

}{aAlphabet =

NondeterministicFinite Automaton (NFA)

EC303, Lecture - 14

Page 3: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

3

1q 2q

3q

a

a

a

0q

Two choices

}{aAlphabet =

EC303, Lecture - 14

Page 4: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

4

No transition

1q 2q

3q

a

a

a

0q

Two choicesNo transition

}{aAlphabet =

EC303, Lecture - 14

Page 5: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

5

a a

0q

1q 2q

3q

a

a

First Choice

a

EC303, Lecture - 14

Page 6: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

6

a a

0q

1q 2q

3q

a

a

a

First Choice

EC303, Lecture - 14

Page 7: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

7

a a

0q

1q 2q

3q

a

a

First Choice

a

EC303, Lecture - 14

Page 8: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

8

a a

0q

1q 2q

3q

a

a

a “accept”

First Choice

All input is consumed

EC303, Lecture - 14

Page 9: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

9

a a

0q

1q 2q

3q

a

a

Second Choice

a

EC303, Lecture - 14

Page 10: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

10

a a

0q

1q 2qa

a

Second Choice

a

3q

EC303, Lecture - 14

Page 11: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

11

a a

0q

1q 2qa

a

a

3q

Second Choice

No transition:

the automaton hangs

EC303, Lecture - 14

Page 12: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

12

a a

0q

1q 2qa

a

a

3q

Second Choice

“reject”

Input cannot be consumed

EC303, Lecture - 14

Page 13: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

13

An NFA accepts a string:

when there is a computation of the NFA

that accepts the string

all the input is consumed and the automaton

is in an accepting state

There is a computation:

EC303, Lecture - 14

Page 14: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

14

Example

aa is accepted by the NFA:

0q

1q 2q

3q

a

a

a

“accept”

0q

1q 2qa

a

a

3q “reject”because this

computation

accepts aaEC303, Lecture - 14

Page 15: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

15

a

0q

1q 2q

3q

a

a

Rejection example

a

EC303, Lecture - 14

Page 16: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

16

a

0q

1q 2q

3q

a

a

a

First Choice

EC303, Lecture - 14

Page 17: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

17

a

0q

1q 2q

3q

a

a

a

First Choice

“reject”

EC303, Lecture - 14

Page 18: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

18

Second Choice

a

0q

1q 2q

3q

a

a

a

EC303, Lecture - 14

Page 19: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

19

Second Choice

a

0q

1q 2qa

a

a

3q

EC303, Lecture - 14

Page 20: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

20

Second Choice

a

0q

1q 2qa

a

a

3q “reject”

EC303, Lecture - 14

Page 21: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

21

An NFA rejects a string:

when there is no computation of the NFA

that accepts the string.

• All the input is consumed and the

automaton is in a non final state

• The input cannot be consumed

OR

For each computation:

EC303, Lecture - 14

Page 22: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

22

Example

a is rejected by the NFA:

0q

1q 2qa

a

a

3q “reject”

0q

1q 2qa

a

a

3q

“reject”

All possible computations lead to rejectionEC303, Lecture - 14

Page 23: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

23

Rejection example

a a

0q

1q 2q

3q

a

a

a

a

EC303, Lecture - 14

Page 24: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

24

a a

0q

1q 2q

3q

a

a

a

First Choice

a

EC303, Lecture - 14

Page 25: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

25

a a

0q

1q 2q

3q

a

a

First Choice

a

a

No transition:

the automaton hangs

EC303, Lecture - 14

Page 26: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

26

a a

0q

1q 2q

3q

a

a

a “reject”

First Choice

a

Input cannot be consumed

EC303, Lecture - 14

Page 27: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

27

a a

0q

1q 2q

3q

a

a

Second Choice

a

a

EC303, Lecture - 14

Page 28: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

28

a a

0q

1q 2qa

a

Second Choice

a

3q

a

EC303, Lecture - 14

Page 29: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

29

a a

0q

1q 2qa

a

a

3q

Second Choice

No transition:

the automaton hangs

a

EC303, Lecture - 14

Page 30: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

30

a a

0q

1q 2qa

a

a

3q

Second Choice

“reject”

a

Input cannot be consumed

EC303, Lecture - 14

Page 31: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

31

aaa is rejected by the NFA:

0q

1q 2q

3q

a

a

a

“reject”

0q

1q 2qa

a

a

3q “reject”

All possible computations lead to rejectionEC303, Lecture - 14

Page 32: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

32

1q 2q

3q

a

a

a

0q

Language accepted: }{aaL

EC303, Lecture - 14

Page 33: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

33

Lambda Transitions

1q 3qa0q 2q a

EC303, Lecture - 14

Page 34: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

34

a a

1q 3qa0q 2q a

EC303, Lecture - 14

Page 35: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

35

a a

1q 3qa0q 2q a

EC303, Lecture - 14

Page 36: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

36

a a

1q 3qa0q 2q a

(read head does not move)

EC303, Lecture - 14

Page 37: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

37

a a

1q 3qa0q 2q a

EC303, Lecture - 14

Page 38: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

38

a a

1q 3qa0q 2q a

“accept”

String is acceptedaa

all input is consumed

EC303, Lecture - 14

Page 39: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

39

a a

1q 3qa0q 2q a

Rejection Example

a

EC303, Lecture - 14

Page 40: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

40

a a

1q 3qa0q 2q a

a

EC303, Lecture - 14

Page 41: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

41

a a

1q 3qa0q 2q a

(read head doesn’t move)

a

EC303, Lecture - 14

Page 42: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

42

a a

1q 3qa0q 2q a

a

No transition:

the automaton hangsEC303, Lecture - 14

Page 43: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

43

a a

1q 3qa0q 2q a

“reject”

String is rejectedaaa

a

Input cannot be consumed

EC303, Lecture - 14

Page 44: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

44

Language accepted: }{aaL

1q 3qa0q 2q a

EC303, Lecture - 14

Page 45: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

45

Another NFA Example

0q 1q 2qa b3q

EC303, Lecture - 14

Page 46: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

46

a b

0q 1q 2qa b3q

EC303, Lecture - 14

Page 47: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

47

0q 2qa b3q

a b

1q

EC303, Lecture - 14

Page 48: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

48

a b

0q 1qa b3q2q

EC303, Lecture - 14

Page 49: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

49

a b

0q 1qa b3q2q

“accept”

EC303, Lecture - 14

Page 50: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

50

0q a b

a b

Another String

a b

1q 2q 3q

EC303, Lecture - 14

Page 51: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

51

0q a b

a b a b

1q 2q 3q

EC303, Lecture - 14

Page 52: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

52

0q a b

a b a b

1q 2q 3q

EC303, Lecture - 14

Page 53: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

53

0q a b

a b a b

1q 2q 3q

EC303, Lecture - 14

Page 54: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

54

0q a b

a b a b

1q 2q 3q

EC303, Lecture - 14

Page 55: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

55

0q a b

a b a b

1q 2q 3q

EC303, Lecture - 14

Page 56: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

56

0q a b

a b a b

1q 2q 3q

EC303, Lecture - 14

Page 57: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

57

a b a b

0q a b1q 2q 3q

“accept”

EC303, Lecture - 14

Page 58: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

58

ab

ababababababL ...,,,

Language accepted

0q 1q 2qa b3q

EC303, Lecture - 14

Page 59: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

59

Another NFA Example

0q 1q 2q

0

11,0

EC303, Lecture - 14

Page 60: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

60

{ }

{ }*10=

...,101010,1010,10,λ=)(ML

0q 1q 2q

0

11,0

Language accepted

(redundant

state)

EC303, Lecture - 14

Page 61: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

61

Remarks:

•The symbol never appears on the

input tape

0q

2M

0q

1M

{}=)M(L 1 }λ{=)M(L 2

•Simple automata:

EC303, Lecture - 14

Page 62: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

62

0q

2q

1qa

a

a

0q 1qa

}{=)( 1 aML

2M1M

}{=)( 2 aML

NFA FA

•NFAs are interesting because we can

express languages easier than FAs

EC303, Lecture - 14

Page 63: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

63

Formal Definition of NFAs

FqQM ,,,, 0

:Q

:

:0q

:F

Set of states, i.e. 210 ,, qqq

: Input aplhabet, i.e. ba,

Transition function

Initial state

Accepting statesEC303, Lecture - 14

Page 64: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

64

10 1, qq

0

11,0

Transition Function

0q 1q 2q

EC303, Lecture - 14

Page 65: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

65

0q

0

11,0

},{)0,( 201 qqq

1q 2q

EC303, Lecture - 14

Page 66: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

66

0q

0

11,0

1q 2q

},{),( 200 qqq

EC303, Lecture - 14

Page 67: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

67

0q

0

11,0

1q 2q

)1,( 2q

EC303, Lecture - 14

Page 68: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

68

Extended Transition Function *

0q

5q4q

3q2q1qa

aa

b

10 ,* qaq

EC303, Lecture - 14

Page 69: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

69

540 ,,* qqaaq

0q

5q4q

3q2q1qa

aa

b

EC303, Lecture - 14

Page 70: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

70

0320 ,,,* qqqabq

0q

5q4q

3q2q1qa

aa

b

EC303, Lecture - 14

Page 71: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

71

Formally

wqq ij ,* : there is a walk from to

with label iq jq

w

iq jq

w

kw 21

1 2 k

iq jq

EC303, Lecture - 14

Page 72: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

72

The Language of an NFA

0q

5q4q

3q2q1qa

aa

b

540 ,,* qqaaq

M

)(MLaa

50,qqF

FEC303, Lecture - 14

Page 73: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

73

0q

5q4q

3q2q1qa

aa

b

0320 ,,,* qqqabq MLab

50,qqF

FEC303, Lecture - 14

Page 74: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

74

0q

5q4q

3q2q1qa

aa

b

50,qqF

540 ,,* qqabaaq )(MLaaba

FEC303, Lecture - 14

Page 75: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

75

0q

5q4q

3q2q1qa

aa

b

50,qqF

10,* qabaq MLaba

FEC303, Lecture - 14

Page 76: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

76

0q

5q4q

3q2q1qa

aa

b

}{* aaabML

EC303, Lecture - 14

Page 77: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

77

Formally

The language accepted by NFA is:

where

and there is some

M

,...,, 321 wwwML

},,...,,{),(* 0 kjim qqqwq

Fqk (accepting state)

EC303, Lecture - 14

Page 78: Non-Deterministic Finite Automata - uranchimeg.comuranchimeg.com/ec303/ec303Lec14.pdf · Non-Deterministic Finite Automata EC303, Lecture - 14 . ... when there is a computation of

78

0q kq

w

w

w

),(* 0 wqMLw

Fqk

iq

jq

EC303, Lecture - 14


Recommended