A recursive introduction to the theory of computation - Smith, Carl H. (Graduate texts in computer science, 1994)