Introduction to automata theory, languages and computation - Hopcroft, John E. , 1939-; Motwani, Rajeev; Ullman, Jeffrey D. , 1942- (Pearson Addison Wesley, 2006)