The Pillars of Computation Theory - Rosenberg, Arnold L. (Springer New York, 2010)