ON COMPUTABLE NUMBERS, WITH AN APPLICATION TO THE ENTSCHEIDUNGSPROBLEM
📜 Abstract
The “computable” numbers may be described briefly as the real numbers whose expressions as a decimal are calculable by finite means. Although the subject of this paper is ostensibly the computable numbers, it is almost equally easy to define and investigate computable functions of an integral variable or a real or computable variable, computable predicates, and so forth. The fundamental problems involved are, however, the same in each case, and I have chosen the computable numbers for explicit treatment as involving the least cumbrous technique. I hope shortly to give an account of the relations of the computable numbers, functions, and so forth to one another. This will include a development of the theory of functions of a real variable expressed in terms of computable numbers. According to my definition, a number is computable if its decimal can be written down by a machine. In §§ 9, 10 I give some arguments with the intention of showing that the computable numbers include all numbers which could naturally be regarded as computable. In particular, I show that certain large classes of numbers are computable. They include, for instance, the real parts of all algebraic numbers, the real parts of the zeros of the Bessel functions, the numbers π, e, etc. The computable numbers do not, however, include all definable numbers, and an example is given of a definable number which is not computable. Although the class of computable numbers is so great, and in many ways similar to the class of real numbers, it is nevertheless enumerable. In § 8 I examine certain arguments which would seem to prove the contrary. By the correct application of one of these arguments, conclusions are reached which are superficially similar to those of Gödel. These results have valuable applications. In particular, it is shown (§ 11) that the Hilbertian Entscheidungsproblem can have no solution. In a recent paper Alonzo Church has introduced an idea of “effective calculability”, which is equivalent to my “computability”, but is very differently defined. Church also reaches similar conclusions about the Entscheidungsproblem. The proof of equivalence between “computability” and “effective calculability” is outlined in an appendix to the present paper.
✨ Summary
Summary
The paper gives a formal account of mechanical computation by introducing machines with a finite set of internal configurations, a linear tape divided into squares, a finite alphabet, and rules governing symbol-writing, erasing, movement, and changes of configuration. Turing defines computable sequences as those produced indefinitely by machines that continue printing binary figures, and defines computable numbers from these sequences.
A central construction is the universal computing machine. Its input contains a finite description of another computing machine, and it reproduces that machine’s behavior. This establishes that machine descriptions can be treated as data and that one general-purpose machine can simulate any particular machine whose behavior is mechanically specified.
The paper encodes machine descriptions as integers, allowing machines and their computations to be discussed arithmetically. It then applies diagonal reasoning to show that there is no general mechanical procedure for determining whether an arbitrary machine will continue producing output, whether it will ever print a specified symbol, or whether its description denotes a circle-free machine. These results establish fundamental limits on algorithmic decision procedures.
Turing next relates computability to formal systems and argues that the Hilbertian Entscheidungsproblem has no solution. For each computing machine, he constructs a formula that is provable exactly when the machine eventually prints a designated symbol. A decision procedure for provability would therefore yield a decision procedure for machine behavior, contradicting the earlier undecidability result.
The paper also develops closure properties of computable functions and numbers, including recursive construction, diagonal substitution, computable convergence, and computability of important mathematical constants and classes such as algebraic numbers, π, e, and real zeros of Bessel functions. Its appendix sketches the equivalence between Turing-computability and Church’s independently formulated notion of effective calculability.
Influence
The paper became a foundational reference for computability theory and theoretical computer science. The universal machine introduced the principle that programs can be represented as data and that a single general-purpose machine can simulate other machines; this is widely identified as a theoretical precursor of stored-program and general-purpose computer architectures. (plato.stanford.edu)
Its undecidability arguments established durable limits on algorithmic problem solving and supplied core models for later work on computability, complexity, algorithmic information theory, and related areas of theoretical computer science. (plato.stanford.edu)
Historically, Turing’s universal-machine ideas were later associated with the development of programmable computers, including the Pilot ACE and subsequent commercial DEUCE systems. The broader stored-program computer tradition became operational in machines such as the Manchester Baby in 1948, although the practical development of electronic computers involved contributions from multiple researchers and engineering groups. (computerhistory.org)