Computing is one of the most popular fields of study today, and for good reason: computers have changed the way that humanity deals with each other and with problems. Nearly every facet of life today is affected by computing and number theory, but the events leading up to the computer-heavy world that exists today is checkered and fascinating. The Universal Computer: The Road from Leibniz to Turing by Martin Davis is a text that explores the history of number theory and computing, from the early days of number theory right up to the birth of modern programming. There is no doubt that this is a fascinating subject, and the text explores many of the struggles that these mathematicians and number theorists experienced on the road to mathematical understanding.
Davis’ text explores the role of logic—particularly mathematical logic—in the development of the modern computer (Davis). According to Davis, “A computing machine is really a logic machine. Its circuits embody the distilled insights of a remarkable collection of logicians, developed over centuries. Nowadays as we admire the truly remarkable accomplishments of the engineers, it is all too easy to overlook the logicians whose ideas made it all possible” (Davis 12). The text investigates the role of the logician in the development of the modern computer—perhaps more importantly, it investigates the role of the logician in the role of the thinking infrastructure of the modern computer. This is, of course, a fascinating way to look at the modern computer: sometimes people are so fascinated by the physical, engineering aspects of the modern computer that the logical structures that make up modern computing software become lost (Davis). Davis, with his credentials as one of the foremost logicians and computer science theorists of today, is quite qualified to discuss the role of logic in the modern programming world.
Davis begins his discussion of the modern computing world with Leibniz, who is the father of modern algebraic logic (Davis). According to Davis, Leibniz was a forefather to the modern logician because he viewed logic as something that could be mathematically expressed; the expression of logic in mathematical form is what drives the modern computational infrastructure in programming (Davis). For Leibniz, algebra was sufficient to embody and give language to every facet of logic—today, computer languages are those artificial structures that allow programmers to express logic in programs (Davis).
Frege’s assertion that mathematics is nothing but logic is the inverse of what Leibniz suggests, but it is equally important. From Frege’s assertion, Cantor was able to develop set theory based on logical structures; Cantor was also able to develop the concept of infinite sets and infinite sets of the same cardinality, both of which are very important for modern programming (Davis). He was also heavily concerned with ranking, which is something that computer programmers use quite frequently—Cantor developed the structures that made mathematical modeling of ranking possible (Davis). Without these developments, the world of modern programming would be quite different—if it existed at all.
In the same way that it would be unfair to ignore the contributions of the logicians and early computer scientists, Davis suggests, it would be immensely unfair to ignore the contribution of the early engineers who were responsible for developing the earliest versions of the universal computer (Davis). These engineers worked against all odds in the middle of the conflicts in World War I and World War II to bring the idea of a universal computer to fruition; Turing’s sad personal narrative is inextricably linked to the realities of these conflicts as well (Davis). Turing’s sad persecution and demise as a result is not heavily considered by Davis, who seems more concerned with his philosophical, logical, and mathematical contributions; however, there is no doubt that Turing is held in high esteem by Davis, as he worked on many of the projects that allowed the universal computer to be constructed (Davis). Perhaps one of the most fascinating aspects of this text overall is that all the logicians and engineers that are considered throughout the text really come to life in Davis’ writing; it is easy to see how their personal lives contributed to their philosophical and mathematical development, which is something that many similar texts might lack. It becomes easy to be invested in each theorist and his wins and losses when the reader can care about the person as an individual.
Turing is perhaps one of the most famous names discussed in the text, and because his story is so sad and engaging, Davis uses him to weave the final discussion of engineering and the completion of the universal computer. Davis attributes the idea of the stored program to John von Neumann, although he does note that there has long been contention about exactly who developed the stored program concept and how much each individual contributed to the program. The final part of the text is very concerned with the idea of the stored program and the idea of computational memory; it is clear that, for Davis, the stored program concept is the final link between a theoretical universal computer and the modern computer that humanity has come to enjoy to this day. This is a fascinating way to look at the development of these machines, and it is certainly very different from the way computers are normally examined; the development and evolution of logical, computational thought is certainly very separate from the engineering aspect of computational development (Davis).
Works Cited
Davis, Martin. The universal computer: the road from Leibniz to Turing. WW Norton & Company, 2000.