Gödel numbering
   HOME

TheInfoList



OR:

In
mathematical logic Mathematical logic is the study of formal logic within mathematics. Major subareas include model theory, proof theory, set theory, and recursion theory. Research in mathematical logic commonly addresses the mathematical properties of formal ...
, a Gödel numbering is a
function Function or functionality may refer to: Computing * Function key, a type of key on computer keyboards * Function model, a structured representation of processes in a system * Function object or functor or functionoid, a concept of object-oriente ...
that assigns to each symbol and
well-formed formula In mathematical logic, propositional logic and predicate logic, a well-formed formula, abbreviated WFF or wff, often simply formula, is a finite sequence of symbols from a given alphabet that is part of a formal language. A formal language can ...
of some
formal language In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules. The alphabet of a formal language consists of sy ...
a unique
natural number In mathematics, the natural numbers are those numbers used for counting (as in "there are ''six'' coins on the table") and ordering (as in "this is the ''third'' largest city in the country"). Numbers used for counting are called ''cardinal ...
, called its Gödel number. The concept was developed by Kurt Gödel for the proof of his
incompleteness theorems Complete may refer to: Logic * Completeness (logic) * Completeness of a theory, the property of a theory that every formula in the theory's language or its negation is provable Mathematics * The completeness of the real numbers, which implies t ...
. () A Gödel numbering can be interpreted as an
encoding In communications and information processing, code is a system of rules to convert information—such as a letter, word, sound, image, or gesture—into another form, sometimes shortened or secret, for communication through a communication ...
in which a number is assigned to each symbol of a
mathematical notation Mathematical notation consists of using symbols for representing operations, unspecified numbers, relations and any other mathematical objects, and assembling them into expressions and formulas. Mathematical notation is widely used in mathem ...
, after which a sequence of
natural number In mathematics, the natural numbers are those numbers used for counting (as in "there are ''six'' coins on the table") and ordering (as in "this is the ''third'' largest city in the country"). Numbers used for counting are called ''cardinal ...
s can then represent a sequence of symbols. These sequences of natural numbers can again be represented by single natural numbers, facilitating their manipulation in formal theories of arithmetic. Since the publishing of Gödel's paper in 1931, the term "Gödel numbering" or "Gödel code" has been used to refer to more general assignments of natural numbers to mathematical objects.


Simplified overview

Gödel noted that each statement within a system can be represented by a natural number (its ''Gödel number''). The significance of this was that properties of a statement – such as its truth or falsehood – would be equivalent to determining whether its Gödel number had certain properties. The numbers involved might be very large indeed, but this is not a barrier; all that matters is that such numbers can be constructed. In simple terms, he devised a method by which every formula or statement that can be formulated in the system gets a unique number, in such a way that formulas and Gödel numbers can be mechanically converted back and forth. There are many ways this can be done. A simple example is the way in which English is stored as a sequence of numbers in computers using
ASCII ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
. Since ASCII codes are in the range 0 to 127, it is sufficient to pad them to 3 decimal digits and then to concatenate them: * The word is represented by . * The logical formula is represented by .


Gödel's encoding

Gödel used a system based on prime factorization. He first assigned a unique natural number to each basic symbol in the formal language of arithmetic with which he was dealing. To encode an entire formula, which is a sequence of symbols, Gödel used the following system. Given a sequence (x_1,x_2,x_3,...,x_n) of positive integers, the Gödel encoding of the sequence is the product of the first ''n'' primes raised to their corresponding values in the sequence: :\mathrm(x_1,x_2,x_3,\dots,x_n) = 2^\cdot 3^\cdot 5^\cdots p_n^. According to the
fundamental theorem of arithmetic In mathematics, the fundamental theorem of arithmetic, also called the unique factorization theorem and prime factorization theorem, states that every integer greater than 1 can be represented uniquely as a product of prime numbers, up to the ord ...
, any number (and, in particular, a number obtained in this way) can be uniquely factored into prime factors, so it is possible to recover the original sequence from its Gödel number (for any given number n of symbols to be encoded). Gödel specifically used this scheme at two levels: first, to encode sequences of symbols representing formulas, and second, to encode sequences of formulas representing proofs. This allowed him to show a correspondence between statements about natural numbers and statements about the provability of theorems about natural numbers, the key observation of the proof. () There are more sophisticated (and more concise) ways to construct a
Gödel numbering for sequences In mathematics, a Gödel numbering for sequences provides an effective way to represent each finite sequence of natural numbers as a single natural number. While a set theoretical embedding is surely possible, the emphasis is on the effectiveness ...
.


Example

In the specific Gödel numbering used by Nagel and Newman, the Gödel number for the symbol "0" is 6 and the Gödel number for the symbol "=" is 5. Thus, in their system, the Gödel number of the formula "0 = 0" is 26 × 35 × 56 = 243,000,000.


Lack of uniqueness

Infinitely many different Gödel numberings are possible. For example, supposing there are ''K'' basic symbols, an alternative Gödel numbering could be constructed by invertibly mapping this set of symbols (through, say, an
invertible function In mathematics, the inverse function of a function (also called the inverse of ) is a function that undoes the operation of . The inverse of exists if and only if is bijective, and if it exists, is denoted by f^ . For a function f\colon X\t ...
''h'') to the set of digits of a bijective base-''K'' numeral system. A formula consisting of a string of ''n'' symbols s_1 s_2 s_3 \dots s_n would then be mapped to the number : h(s_1) \times K^ + h(s_2) \times K^ + \cdots + h(s_) \times K^1 + h(s_n) \times K^0 . In other words, by placing the set of ''K'' basic symbols in some fixed order, such that the i-th symbol corresponds uniquely to the i-th digit of a bijective base-''K'' numeral system, ''each formula may serve just as the very numeral of its own Gödel number.'' For example, the numbering described
here Here is an adverb that means "in, on, or at this place". It may also refer to: Software * Here Technologies, a mapping company * Here WeGo (formerly Here Maps), a mobile app and map website by Here Technologies, Here Television * Here TV (form ...
has K=1000.


Application to formal arithmetic


Recursion

One may use Gödel numbering to show how functions defined by
course-of-values recursion In computability theory, course-of-values recursion is a technique for defining number-theoretic functions by recursion. In a definition of a function ''f'' by course-of-values recursion, the value of ''f''(''n'') is computed from the sequence \lan ...
are in fact
primitive recursive function In computability theory, a primitive recursive function is roughly speaking a function that can be computed by a computer program whose loops are all "for" loops (that is, an upper bound of the number of iterations of every loop can be determined ...
s.


Expressing statements and proofs by numbers

Once a Gödel numbering for a formal theory is established, each
inference rule In the philosophy of logic, a rule of inference, inference rule or transformation rule is a logical form consisting of a function which takes premises, analyzes their syntax, and returns a conclusion (or conclusions). For example, the rule of ...
of the theory can be expressed as a function on the natural numbers. If ''f'' is the Gödel mapping and ''r'' is an inference rule, then there should be some arithmetical function ''gr'' of natural numbers such that if formula ''C'' is derived from formulas ''A'' and ''B'' through an inference rule ''r'', i.e. : A, B \vdash_r C, then : g_r(f(A),f(B)) = f(C). This is true for the numbering Gödel used, and for any other numbering where the encoded formula can be arithmetically recovered from its Gödel number. Thus, in a formal theory such as Peano arithmetic in which one can make statements about numbers and their arithmetical relationships to each other, one can use a Gödel numbering to indirectly make statements about the theory itself. This technique allowed Gödel to prove results about the consistency and completeness properties of
formal system A formal system is an abstract structure used for inferring theorems from axioms according to a set of rules. These rules, which are used for carrying out the inference of theorems from axioms, are the logical calculus of the formal system. A form ...
s.


Generalizations

In computability theory, the term "Gödel numbering" is used in settings more general than the one described above. It can refer to: #Any assignment of the elements of a
formal language In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules. The alphabet of a formal language consists of sy ...
to natural numbers in such a way that the numbers can be manipulated by an
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
to simulate manipulation of elements of the formal language. #More generally, an assignment of elements from a countable mathematical object, such as a countable
group A group is a number of persons or things that are located, gathered, or classed together. Groups of people * Cultural group, a group whose members share the same cultural identity * Ethnic group, a group whose members share the same ethnic ide ...
, to natural numbers to allow algorithmic manipulation of the mathematical object. Also, the term Gödel numbering is sometimes used when the assigned "numbers" are actually strings, which is necessary when considering models of computation such as
Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algori ...
s that manipulate strings rather than numbers.


Gödel sets

Gödel sets are sometimes used in set theory to encode formulas, and are similar to Gödel numbers, except that one uses sets rather than numbers to do the encoding. In simple cases when one uses a
hereditarily finite set In mathematics and set theory, hereditarily finite sets are defined as finite sets whose elements are all hereditarily finite sets. In other words, the set itself is finite, and all of its elements are finite sets, recursively all the way down to t ...
to encode formulas this is essentially equivalent to the use of Gödel numbers, but somewhat easier to define because the tree structure of formulas can be modeled by the tree structure of sets. Gödel sets can also be used to encode formulas in infinitary languages.


See also

*
Church encoding In mathematics, Church encoding is a means of representing data and operators in the lambda calculus. The Church numerals are a representation of the natural numbers using lambda notation. The method is named for Alonzo Church, who first encoded da ...
* Description number *
Gödel numbering for sequences In mathematics, a Gödel numbering for sequences provides an effective way to represent each finite sequence of natural numbers as a single natural number. While a set theoretical embedding is surely possible, the emphasis is on the effectiveness ...
* Gödel's incompleteness theorems *
Chaitin's incompleteness theorem In algorithmic information theory (a subfield of computer science and mathematics), the Kolmogorov complexity of an object, such as a piece of text, is the length of a shortest computer program (in a predetermined programming language) that produ ...


References

* . *''Gödel's Proof'' by
Ernest Nagel Ernest Nagel (November 16, 1901 – September 20, 1985) was an American philosopher of science. Suppes, Patrick (1999)Biographical memoir of Ernest Nagel In '' American National Biograph''y (Vol. 16, pp. 216-218). New York: Oxford University Pr ...
and James R. Newman (1959). This book provides a good introduction and summary of the proof, with a large section dedicated to Gödel's numbering.


Further reading

* '' Gödel, Escher, Bach: an Eternal Golden Braid'', by Douglas Hofstadter. This book defines and uses an alternative Gödel numbering. *''
I Am a Strange Loop ''I Am a Strange Loop'' is a 2007 book by Douglas Hofstadter, examining in depth the concept of a '' strange loop'' to explain the sense of "I". The concept of a ''strange loop'' was originally developed in his 1979 book '' Gödel, Escher, Bach' ...
'' by Douglas Hofstadter. This is a newer book by Hofstadter that includes the history of Gödel's numbering. *
Visualizing the Turing Tarpit
' by Jason Hemann and Eric Holk. Uses Gödel numbering to encode programs. {{DEFAULTSORT:Godel numbering Mathematical logic Theory of computation
Numbering There are many different numbering schemes for assigning nominal numbers to entities. These generally require an agreed set of rules, or a central coordinator. The schemes can be considered to be examples of a primary key of a database management ...