Introduction to the Theory of Computation Peter recommended this book by Sipser. You might also like some of these