Introduction to Automata Theory, Languages and Computation (Addison-Wesley series in computer science) by John E. Hopcroft, Jeffrey D. Ulman - WordSea