Introduction to automated theory, languages and computation - Hopcroft, John E. (Addison-Wesley Publishing Company, 1979)