AI ALIGNMENT FORUM
AF

361
Wikitags
Main
1
Quine
3

Diagonal lemma

Edited by Jaime Sevilla Molina last updated 22nd Jul 2016

The diagonal lemma shows how to construct self-referential sentences in the language of arithmetic from formulas ϕ(x).

In its standard form it says that is T is a theory extending minimal arithmetic (so that it can talk about recursive expressions with full generality) and ϕ(x) is a formula with one free variable x then there exists a sentence S such that T⊢S↔ϕ(┌S┐).

This can be further generalized for cases with multiples formulas and variables.

The diagonal lemma is important because it allows the formalization of all kind of self-referential and apparently paradoxical sentences.

Take for example the liar's sentence affirming that "This sentence is false". Since there is no truth predicate, we will have to adapt it to our language to say "This sentence is not provable". Since there is a predicate of arithmetic expressing provability we can construct a formula ¬□PA(x), which is true iff there is no proof in PA of the sentence encoded by x.

By invoking the diagonal's lemma, we can see that there exists a sentence G such that PA⊢G↔¬□PA(┌G┐), which reflects the spirit of our informal sentence. The weak form of Gödel's first incompleteness theorem follows swiftly from there.

The equivalent in computation of the diagonal lemma is called quining, and refers to computer programs which produce their own source code as part of their computation.

Indeed, the key insight of the diagonal lemma and quining is that you can have subexpressions in your program that when "expanded" are identical to the original expression that contains them.

Parents:
Mathematics
Children:
Quine
Discussion
1
Discussion
1