Turing machines are defined by sets of rules that operate on four parameters: (state, tape cell color, operation, state). Let the states and tape cell colors be numbered and represented by quadruples of ordinal numbers. Then there exist algorithmic procedures that sequentially list all consistent sets of Turing machine rules. A set of rules is called consistent if any two quadruples differ in the first or second element out of the four. Any such procedure gives both an algorithm for going from any integer to its corresponding Turing machine and an algorithm for getting the index of any consistent set of Turing machine rules.
Assume that one such procedure is selected. If Turing machine
is defined by the set of quadruples whose index is
, then
is called the Gödel number of
. The result of application of Turing machine with Godel number
to
is usually denoted
.
Given the equivalence of computability and recursiveness, it is common to use Gödel numbers as indexes of recursive functions as well. The fact that it is possible to assign Gödel numbers to recursive functions implies that there is a countable infinite number of recursive functions. Hence, by Cantor's theorem, there exist functions which are not recursive. Each recursive function has an infinite number of distinct Gödel numbers.
Gödel numbers allow for a straightforward formal definition of the universal Turing machine
as
(1)
|
Many recursively undecidable problems are formulated in terms of Gödel numbers. For example, Gödel numbers are
used in the theorem about recursive undecidability
of the halting problem. Determining the convergence
of is also recursively
undecidable.
Gödel numbers can be used to uniquely encode any list of positive integers according to
(2)
|
where
is the
th
prime number.
When used to study statements in arithmetic, a Gödel number is a unique number for a given statement that can be formed as the product
of successive primes raised to the power
of the number corresponding to the individual symbols that comprise the sentence.
For example, the statement that reads "there exists
an
such that
is the immediate successor of
" can be coded
(3)
|
where the numbers in the set (8, 4, 13, 9, 8, 13, 5, 7, 16, 9) correspond to the symbols that make up .
Prime-power coding using Gödel numbers can also be used to encode Turing
machine rules.