Introduction to formal languages and automata - Linz, Peter (Narosa, 2011)