Introduction to formal languages and automata - Linz, Peter (Jones and Bartlett, 2006)