Cover – Introduction to Automata Theory, Formal Languages and Computation