Computers and computation (W. H. Freeman and Company, 1971)