Introduction to Languages and The Theory of Computation - MARTIN JOHN C (Tata McGraw Hill New Delhi, 2003)