RegToy

Regular expression: (a|b)*aa(a|b)*

Initial NFA

fsm Start Start 1 1 Start->1 4 4 1->4 ε 4->4 b 4->4 a 3 3 4->3 ε 2 2 5 5 3->5 a 6 6 5->6 a 7 7 6->7 ε 7->2 ε 7->7 b 7->7 a

Cleaned up NFA

fsm Start Start 4 4 Start->4 4->4 a 4->4 b 3 3 4->3 ε 2 2 5 5 3->5 a 7 7 5->7 a 7->2 ε 7->7 a 7->7 b

DFA

fsm Start Start 3 3 Start->3 3->3 b 4 4 3->4 a 1 1 1->1 a 2 2 1->2 b 2->1 a 2->2 b 4->3 b 4->1 a