Not computably enumerable Assigning a
Gödel number to each Turing machine definition produces a subset S of the
natural numbers corresponding to the computable numbers and identifies a
surjection from S to the computable numbers. There are only countably many Turing machines, showing that the computable numbers are
subcountable. The set S of these Gödel numbers, however, is not
computably enumerable (and consequently, neither are subsets of S that are defined in terms of it). This is because there is no algorithm to determine which Gödel numbers correspond to Turing machines that produce computable reals. In order to produce a computable real, a Turing machine must compute a
total function, but the corresponding
decision problem is in
Turing degree 0′′. Consequently, there is no surjective
computable function from the natural numbers to the set S of machines representing computable reals, and
Cantor's diagonal argument cannot be used
constructively to demonstrate uncountably many of them. While the set of real numbers is
uncountable, the set of computable numbers is classically
countable and thus
almost all real numbers are not computable. Here, for any given computable number x, the
well ordering principle provides that there is a minimal element in S which corresponds to x, and therefore there exists a subset consisting of the minimal elements, on which the map is a
bijection. The inverse of this bijection is an
injection into the natural numbers of the computable numbers, proving that they are countable. But, again, this subset is not computable, even though the computable reals are themselves ordered.
Properties as a field The arithmetical operations on computable numbers are themselves computable in the sense that whenever real numbers
a and
b are computable then the following real numbers are also computable:
a +
b,
a -
b,
ab, and
a/
b if
b is nonzero. These operations are actually
uniformly computable; for example, there is a Turing machine which on input (
A,
B,\epsilon) produces output
r, where
A is the description of a Turing machine approximating
a,
B is the description of a Turing machine approximating
b, and
r is an \epsilon approximation of
a +
b. The fact that computable real numbers form a
field was first proved by
Henry Gordon Rice in 1954. Computable reals however do not form a
computable field, because the definition of a computable field requires effective equality.
Non-computability of the ordering The order relation on the computable numbers is not computable. Let
A be the description of a Turing machine approximating the number a. Then there is no Turing machine which on input
A outputs "YES" if a > 0 and "NO" if a \le 0. To see why, suppose the machine described by
A keeps outputting 0 as \epsilon approximations. It is not clear how long to wait before deciding that the machine will
never output an approximation which forces
a to be positive. Thus the machine will eventually have to guess that the number will equal 0, in order to produce an output; the sequence may later become different from 0. This idea can be used to show that the machine is incorrect on some sequences if it computes a total function. A similar problem occurs when the computable reals are represented as
Dedekind cuts. The same holds for the equality relation: the equality test is not computable. While the full order relation is not computable, the restriction of it to pairs of unequal numbers is computable. That is, there is a program that takes as input two Turing machines
A and
B approximating numbers a and b, where a \ne b, and outputs whether a or a > b. It is sufficient to use \epsilon-approximations where \epsilon so by taking increasingly small \epsilon (approaching 0), one eventually can decide whether a or a > b.
Other properties The computable real numbers do not share all the properties of the real numbers used in analysis. For example, the least upper bound of a bounded increasing computable sequence of computable real numbers need not be a computable real number. A sequence with this property is known as a
Specker sequence, as the first construction is due to
Ernst Specker in 1949. Despite the existence of counterexamples such as these, parts of calculus and real analysis can be developed in the field of computable numbers, leading to the study of
computable analysis. The set of computable real numbers (as well as every countable,
densely ordered subset of computable reals without ends) is
order-isomorphic to the set of rational numbers. == Non-computable numbers ==