Theory of Computation - Kozen, Dexter C.; Gries, David; Schneider, Fred B. (Springer London, 2006)