Computability and complexity : from a programming perspective. - Jones, Neil D. (Foundations of computing, 1997)