Study Material
Introduction to The Theory of Computation - Michael Sipser
An Introduction to Formal Languages and Automata