Professional Documents
Culture Documents
Mahi 3B
Mahi 3B
79
Equivalence of Machines
if L M1 L M 2
80
Example
NFA M1
LM1 {10} * 0
q0 q1 0, 1 q2
1
DFA M2 0,1
LM 2 {10} * 0
q0 q1 1 q2
1
0 81
Since LM1 LM 2 10*
0
NFA M1 q0 q1 0, 1 q2
1
0,1
0
DFA M2 q0 q1 1 q2
1
0 82
Equivalence of NFAs and DFAs
Same power?
Accept the same languages?
83
Equivalence of NFAs and DFAs
Same power?
Accept the same languages?
84
We will prove:
Languages Languages
accepted accepted
by NFAs by DFAs
85
Step 1
Languages Languages
accepted accepted
by NFAs by DFAs
Languages Languages
accepted accepted
by NFAs by DFAs
DFA M
q0
88
NFA to DFA
NFA M a
q0 a q1 q2
b
DFA M
q0 a
q1, q2
89
NFA to DFA
NFA M a
q0 a q1 q2
b
DFA M
q0 a
q1, q2
b
90
NFA to DFA
NFA M a
q0 a q1 q2
b
a
DFA M
q0 a
q1, q2
b
91
NFA to DFA
NFA M a
q0 a q1 q2
b
a
DFA M b
q0 a
q1, q2
b
92
NFA to DFA
NFA M a
q0 a q1 q2
b
a
DFA M b
q0 a
q1, q2
b
a, b
93
NFA to DFA
NFA M a LM L(M )
q0 a q1 q2
b
a
DFA M b
q0 a
q1, q2
b
a, b
94
NFA to DFA: Remarks
We want to convert it
to an equivalent DFA M
q0 , q1, q2 ,...
96
Procedure NFA to DFA
97
Example
NFA M a
q0 a q1 q2
b
DFA M
q0
98
Procedure NFA to DFA
2. For every DFA’s state {qi , q j ,..., qm }
q0 a
q1, q2
q0 , a q1, q2
100
Procedure NFA to DFA
101
Example
NFA M a
q0 a q1 q2
b
a
DFA M b
q0 a
q1, q2
b
a, b
102
Procedure NFA to DFA
3. For any DFA state {qi , q j ,..., qm }
4. If the NFA
accepts the empty
Then, {qi , q j ,..., qm } string, then the
vertex {q0} is also
is a final state in the DFA made a final vertex.
q0 a
q1, q2
b q1, q2 F
a, b
104
Theorem
Take NFA M
LM LM
105
Finally
We have proven
Languages Languages
accepted accepted
by NFAs by DFAs
106
We have proven
Languages Languages
accepted accepted
by NFAs by DFAs
Regular Languages
107
We have proven
Languages Languages
accepted accepted
by NFAs by DFAs
108
We have proven
Languages Languages
accepted accepted
by NFAs by DFAs
109