// fig2_9.nfa Book, page 25, figure 2.9, diagram 2.8 // regular expression 0*1*2* // any string of 0's followed by 1's followed by 2's // including empty string start q0 final q2 q0 0 q0 q0 #e q1 q1 1 q1 q1 #e q2 q2 2 q2 enddef tape 012 // accept tape 000 // accept tape 111 // accept tape 222 // accept tape 010 // reject tape 210 // reject tape 21 // reject tape // null, accept