Finite Automata
See
FiniteStateMachine