Introduction to Languages and the theory of Computation 3rd ed - Martin, Jhn C. (New Delhi TMH, 2009)