Introduction to automata theory, languages, and computation. - Hopcroft, John E.; Ullman, Jeffrey D. (London : Addison-Wesley Publishing Company, Inc., 2001)