A question about truth

A concise tour through the history of logic and computation: from the ancient roots of logical reasoning to Hilbert's programme, Gödel's 1931 result, and the independent proofs of Church and Turing. We see how the quest for a complete and decidable mathematics was gradually dismantled over half a century of mathematical progress.

6 min read

Either mathematics is too big for the human mind, or the mind of man is something more than a mere machine.

Kurt Gödel, Kurt Gödel: Collected Works (1986)1

The history of this work blends two fields of philosophy and mathematics: logic and computer science.

Logic is one of the oldest branches of philosophy, developed in China, India, Greece, and the Islamic world. The theories of Aristotle were influential for millennia, while Stoics like Chrysippus of Soli began developing propositional logic. In 17th- and 18th-century Europe, Leibniz and Lambert worked toward formalizing logical operations, although their work remained isolated and little known2.

Computer science would not emerge until later. Although an approximation to the notion of an algorithm had been studied for millennia, it was not until the mid-19th century that the first forms of computing devices were designed, with the work of Charles Babbage and Ada Lovelace3.

In parallel, George Boole and Augustus De Morgan presented systematic treatises on logic, extending the Aristotelian logical doctrine to form a new field of mathematical study.

Shortly thereafter, flaws were discovered in the axioms of Euclidean geometry. In addition to the independence of the parallel postulate, established by Nikolai Lobachevsky in 18264, it was discovered that some theorems previously considered proven by Euclid were in fact not provable from the axioms. Among these theorems were results such as that a line contains at least two points, or that two circles of equal radius whose centers are that radius apart must intersect. At the end of the century, Hilbert2 published Grundlagen der Geometrie ("The Foundations of Geometry"), a complete set of axioms for geometry, based on the earlier work of Moritz Pasch.

It was at this time that Giuseppe Peano published a set of axioms for arithmetic (which we will discuss in Chapter 4).

Hilbert's success motivated him to seek complete axiomatizations of other areas of mathematics, such as number theory. This would be the seed of one of the most popular research areas of the early 20th century.

In 1900, this same mathematician published his famous list of 23 problems for the new century (known today as Hilbert's problems) at the Second International Congress of Mathematics in Paris. The second of these asked about the consistency of the axioms of arithmetic5.

In 1910, Bertrand Russell and Alfred Whitehead published the first volume of Principia Mathematica6, considered one of the most influential works of the 20th century.

In 1928, Hilbert reformulated his second problem at the International Congress in Bologna, posing three questions:

  1. Is mathematics complete? That is, can every mathematical statement or its negation be proved?
  2. Is mathematics consistent? That is, is it impossible to simultaneously prove a statement and its negation?
  3. Is mathematics decidable? That is, is there an automatic method that can be applied to any mathematical statement and determine whether it is true? This problem is known as the Entscheidungsproblem.

We explore the concepts of completeness, consistency, and decidability in Chapter 4. Hilbert's goal was to find a complete and consistent mathematical system in which statements can be expressed precisely and can be proven automatically.

In 1931, Kurt Gödel shattered Hilbert's dreams by publishing Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I ("On Formally Undecidable Propositions of Principia Mathematica and Related Systems")7. In this paper, Gödel proves the incompleteness of certain systems. This result establishes severe limitations on the axiomatic foundations of mathematics. Hilbert, however, did not recognize the importance of this result for some time. Shortly thereafter, Gödel introduced one of the first notions of recursive definitions (today called μ\mu-recursive functions).

The first proof of the undecidability of the Entscheidungsproblem was given by Alonzo Church in 19368, using the notion of λ\lambda-computable functions. In it, Church demonstrated the equivalence with Gödel's μ\mu-recursive functions, and ventured that these functions would be the only ones computable by an algorithm, a thesis that bears his name: the Church thesis.

One year later, Alan Turing attacked the same question from a different angle. In On Computable Numbers, with an Application to the Entscheidungsproblem9 he defined a Turing machine: an ideal device with finitely many internal states, a one-dimensional tape, and a head that reads and writes one symbol at a time. A computation is nothing more than following a finite table of instructions—exactly the kind of “automatic method” Hilbert's third question had asked for, made precise.

Turing used this model to show that several problems cannot be decided by any such machine. His argument is constructive: once computation is identified with machine runs, one can prove that no machine can settle certain questions about other machines—the Entscheidungsproblem among them. He also proposed what is now called Turing's thesis: that every function computable “by hand”, or by an algorithm in the intuitive sense, is computable by a Turing machine. Although the thesis cannot be proved, Turing gave many independent arguments for it in the same paper.

The abstract definition becomes much easier to grasp once one can watch a machine run. The simulator below is not taken from Turing's article—it is a modern encoding of a machine we analyze in Chapter 2—but it displays the same ingredients he had in mind: a finite graph of states and transitions, and a tape whose contents change step by step. Run it on abbaa to follow an accepting computation, or try another word over {a,b} to see how a single fixed program accepts some inputs and rejects others. That interplay between a finite program and an unbounded input is the heart of Turing's model.

Later, Church, Turing, and Stephen Kleene10 proved that the three models of computation introduced (μ\mu-recursive functions, λ\lambda-computable functions, and Turing machines) are equivalent, reinforcing the aforementioned theses and introducing the Church–Turing thesis.

The 20th century saw an exceptional development of computer science and the birth of informatics, leading to the revolution of personal computers and mobile devices today. All of this was made possible thanks to the work of, among others, the mathematicians mentioned in this brief overview.

Footnotes

  1. Feferman, S. et al. (eds.) (1986). Kurt Gödel: Collected Works, Volume I. Oxford University Press.

    ↩
  2. Katz, V.J. (2009). A History of Mathematics: An Introduction (3rd ed.). Addison-Wesley.

    ↩ ↩2
  3. Fuegi, J., & Francis, J. (2003). Lovelace & Babbage and the creation of the 1843 'notes'. IEEE Annals of the History of Computing, 25(4):16–26.

    ↩
  4. Bonola, R. (1955). Non-Euclidean Geometry. Dover Publications. (Trans. H.S. Carslaw; originally published 1906.)

    ↩
  5. Hilbert, D. (1902). Mathematical problems. Bulletin of the American Mathematical Society, 8:437–479.

    ↩
  6. Whitehead, A.N., & Russell, B. (1927). Principia Mathematica (2nd ed.). Cambridge University Press.

    ↩
  7. Gödel, K. (1931). Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I. Monatshefte für Mathematik und Physik, 38:173–198.

    ↩
  8. Church, A. (1936). An unsolvable problem of elementary number theory. American Journal of Mathematics, 58(2):345–363.

    ↩
  9. Turing, A.M. (1937). On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Society, 42(1):230–265.

    ↩
  10. Kleene, S.C. (1971). Introduction to Metamathematics. North-Holland.

    ↩