A recursive introduction to the theory of computation - Smith, Carl H. (Springer, 1994)