Before a machine could be taught to think, mathematicians had to discover what thinking mathematically meant. In the century spanning from 1850 to 1950, logic underwent a profound metamorphosis: breaking free from linguistic philosophy and reconstituting itself as an exact symbolic calculus. This mathematical revolution would culminate in Alan Turing’s 1936 paper, simultaneously establishing the theoretical blueprint for the digital computer and exposing the inescapable mathematical boundaries of automated reason.

1. George Boole and the Algebra of Logic

In 1854, an English mathematician named George Boole published an audaciously titled monograph: An Investigation of the Laws of Thought on Which Are Founded the Mathematical Theories of Logic and Probabilities. Boole realized that Aristotle’s two-thousand-year-old categorical syllogisms could be represented as an algebraic system where variables take on truth values rather than real numbers.

Boole defined a binary universe of discourse where propositions evaluate strictly to $1$ (True) or $0$ (False). In Boolean algebra, logical operations correspond directly to algebraic operations:

  • Conjunction (AND): Logical multiplication land y quiv x cdot y$
  • Disjunction (OR): Logical addition lor y quiv x + y – x cdot y$
  • Negation (NOT): Algebraic complementation $ eg x quiv 1 – x$

Boole’s breakthrough established that logical deductions are not mystical cognitive phenomena; they are algebraic transformations governed by strict laws of associativity, commutativity, and distributivity. Nearly a century later, in 1937, a young MIT graduate student named Claude Shannon realized that Boolean algebra mapped isomorphic to electromechanical switching circuits: a closed switch represented $1$, an open switch represented $0$, and series/parallel configurations could physically compute any Boolean logic function.

2. Frege, Peano, and the Formalist Dream of David Hilbert

As the 19th century drew to a close, Gottlob Frege introduced modern predicate calculus in his 1879 Begriffsschrift (Concept Notation), inventing quantifiers ($orall, xists$) and formal function-argument notation. Giuseppe Peano and subsequently Bertrand Russell and Alfred North Whitehead in their monumental Principia Mathematica (1910–1913) attempted to reconstruct all of human mathematics on an unassailable, non-contradictory axiomatic foundation of pure logic.

At the 1928 International Congress of Mathematicians in Bologna, the undisputed titan of modern mathematics, David Hilbert, issued a supreme challenge known as the Formalist Program. Hilbert asked whether mathematics could be proven:

  1. Complete: Can every true mathematical statement be formally proven within the axiomatic system?
  2. Consistent: Can it be proven that no contradiction ( land eg P$) can ever be derived?
  3. Decidable (Das Entscheidungsproblem): Does there exist a general, definite mechanical procedure (an effective algorithm) that, given any arbitrary formal proposition, can determine in a finite number of steps whether that proposition is provable?

Hilbert firmly believed the answer to all three was a resounding yes. His famous epitaph in Göttingen declared: “Wir müssen wissen. Wir werden wissen.” (We must know. We will know.)

3. Gödel’s Earthquake: The Incompleteness Theorems (1931)

Hilbert’s dream of an invincible, self-contained axiomatic fortress was shattered in 1931 by a 25-year-old Austrian logician named Kurt Gödel. In his epochal paper Über formal unentscheidbare Sätze der Principia Mathematica, Gödel invented a method to encode mathematical formulas and proof sequences into unique integers (Gödel numbering).

By arithmetizing syntax, Gödel constructed a self-referential mathematical sentence $ that asserted its own unprovability within the formal system $:

$ iff eg ext{Prov}_F(ulcorner G ulcorner)$$

If the formal system is consistent, $ cannot be proven, which means $ is true. Gödel’s First Incompleteness Theorem delivered an astonishing revelation: any consistent formal axiomatic system capable of doing basic arithmetic is necessarily incomplete. There will always exist mathematical truths that cannot be proven within the rules of the system itself. Hilbert’s first two questions were settled in the negative. But what of the third: the Entscheidungsproblem?

4. Alan Turing and the Universal Machine (1936)

To answer whether a mechanical decision procedure exists, one first had to rigorously define what a “mechanical procedure” actually is. In Cambridge in 1936, a 24-year-old fellow named Alan Mathison Turing published a paper that founded modern theoretical computer science: On Computable Numbers, with an Application to the Entscheidungsproblem.

Turing analyzed what a human clerk (a “computer”) does when calculating numbers with pencil and paper. He abstracted this physical process into an extraordinarily elegant mathematical model: the Turing Machine.

A Turing Machine consists of:

  1. An infinitely long tape divided into discrete squares, each containing a symbol from a finite alphabet $Sigma$.
  2. A read/write head positioned over a single square that can read the current symbol, write a new symbol, and move one square left ($) or right ($).
  3. A finite state control unit possessing a finite set of internal states $.
  4. A deterministic transition function $delta: Q imes Sigma o Q imes Sigma imes {L, R}$.

Turing’s genius was demonstrating that one did not need separate physical machines for different mathematical tasks. He conceptualized the Universal Turing Machine (UTM): a machine that takes as input a coded description of any specific Turing machine $ along with an input string $ on its tape, and faithfully simulates the step-by-step execution of $ on $:

$$mathcal{U}(langle M, w angle) = M(w)$$

The UTM was the foundational theoretical discovery of the stored-program digital computer: hardware could remain fixed and universal, while software programs encoded as data on tape could reconfigure the machine into any arbitrary computational tool.

5. The Halting Problem and the Limits of Mechanical Reason

Having defined the ultimate mechanical computer, Turing utilized it to resolve Hilbert’s Entscheidungsproblem. He formulated the Halting Problem: Can there exist a general Turing machine $ that, given the description of an arbitrary machine $ and input $, can always determine in finite time whether $ will eventually halt or loop infinitely?

Turing devised a brilliant proof by contradiction using Cantor’s diagonal method. Assume such an algorithm (M, w)$ exists. We can construct an adversarial diagonal machine $ that takes the description of a machine $langle M angle$ as input:

  1. $ runs (M, langle M angle)$ as an internal subroutine.
  2. If $ outputs that $ halts on its own description, $ deliberately enters an infinite loop.
  3. If $ outputs that $ loops forever, $ immediately halts and returns true.

Now, what happens if we feed the diagonal machine its own description: (langle D angle)$?

$$ ext{If } D(langle D angle) ext{ halts} implies H ext{ outputs “halts”} implies D ext{ loops forever (Contradiction)}$$

$$ ext{If } D(langle D angle) ext{ loops} implies H ext{ outputs “loops”} implies D ext{ halts immediately (Contradiction)}$$

The contradiction is absolute. No such decision algorithm $ can mathematically exist. Hilbert’s Entscheidungsproblem was decisively answered: mechanical computation has intrinsic, insurmountable limits. Automated reasoning can compute anything that is algorithmic, but it cannot solve all mathematical truths.

Turing had forged a double-edged sword. He had proven that thinking machines have formal limits that no algorithm can ever exceed. Yet simultaneously, he had proven that any process that is computable can be executed by a single universal physical machine. The stage was now set: if biological intelligence is a physical, computable process, then a Universal Machine could, in principle, become an Artificial Mind.