# fa_exec.py: use the class FA
import sys
import fa_class
fa = fa_class.FA("dfa1.auto")
input = "ababaabbabaaa$"
fa.dfa_sim(input)
fa.nfa_sim(input)
% python fa_exec.py
DFA: States 4, Symbols: ab
0s :(1, [('a', 1), ('b', 2)])
1 :(0, [('a', 3), ('b', 2)])
2 :(0, [('a', 1), ('b', 3)])
3 t:(2, [('a', 3), ('b', 3)])
Input: ababaabbabaaa$
Simulate DFA:
0
0 a 1
1 b 2
2 a 1
1 b 2
2 a 1
1 a 3 term
3 b 3 term
3 b 3 term
3 a 3 term
3 b 3 term
3 a 3 term
3 a 3 term
3 a 3 term
Input: ababaabbabaaa$
Simulate as NFA:
Start:
[0]
a: [1]
b: [2]
a: [1]
b: [2]
a: [1]
a: [3] term
b: [3] term
b: [3] term
a: [3] term
b: [3] term
a: [3] term
a: [3] term
a: [3] term
| # fa_exec.py: use the class FA
import sys
import fa_class
fa = fa_class.FA("nfa1.auto")
input = "aacacbccbab$"
fa.dfa_sim(input)
fa.nfa_sim(input)
% python fa_exec.py
NFA: States 4, Symbols: abc
0s :(1, [('a', 0), ('b', 0),
('c', 0), ('a', 1), ('b', 2)])
1 :(0, [('c', 2), ('a', 3)])
2 :(0, [('c', 1), ('b', 3)])
3 t:(2, [])
Input: aacacbccbab$
Simulate DFA:
Not DFA!
Input: aacacbccbab$
Simulate as NFA:
Start:
[0]
a: [0, 1]
a: [0, 1, 3] term
c: [0, 2]
a: [0, 1]
c: [0, 2]
b: [0, 2, 3] term
c: [0, 1]
c: [0, 2]
b: [0, 2, 3] term
a: [0, 1]
b: [0, 2]
| # fa_exec.py: use the class FA
import sys
import fa_class
fa = fa_class.FA("nfa3.auto")
input = "aaaabaababbabbbb$"
fa.dfa_sim(input)
fa.nfa_sim(input)
% python fa_exec.py
NFA: States 5, Symbols: ab
0s :(1, [('a', 0), ('a', 1),
('b', 0)])
1 :(0, [('a', 2), ('b', 2)])
2 :(0, [('a', 3), ('b', 3)])
3 :(0, [('a', 4), ('b', 4)])
4 t:(2, [])
Input: aaaabaababbabbbb$
Not DFA!
Input: aaaabaababbabbbb$
Simulate NFA
St:[0]
a: [0, 1]
a: [0, 1, 2]
a: [0, 1, 2, 3]
a: [0, 1, 2, 3, 4] term
b: [0, 2, 3, 4] term
a: [0, 1, 3, 4] term
a: [0, 1, 2, 4] term
b: [0, 2, 3]
a: [0, 1, 3, 4] term
b: [0, 2, 4] term
b: [0, 3]
a: [0, 1, 4] term
b: [0, 2]
b: [0, 3]
b: [0, 4] term
b: [0]
|