In proof theory, a discipline within mathematical logic, double-negation translation, sometimes called negative translation, is a general approach for embedding classical logic into intuitionistic logic, typically by translating formulas to formulas which are classically equivalent but intuitionistically inequivalent. Particular instances of double-negation translation include Glivenko's translation for propositional logic, and the Gödel–Gentzen translation and Kuroda's translation for first-order logic.
The easiest double-negation translation to describe comes from Glivenko's theorem, proved by Valery Glivenko in 1929. It maps each classical formula φ to its double negation ¬¬φ.
Glivenko's theorem states:
Glivenko's theorem implies the more general statement:
In particular, a set of propositional formulas is intuitionistically consistent if and only if it is classically satisfiable.
This translation has the property that φN is classically equivalent to φ. The fundamental soundness theorem (Avigad and Feferman 1998, p. 342; Buss 1998 p. 66) states:
Here TN consists of the double-negation translations of the formulas in T.
A sentence φ may not imply its negative translation φN in intuitionistic first-order logic. Troelstra and Van Dalen (1988, Ch. 2, Sec. 3) give a description (due to Leivant) of formulas that do imply their Gödel–Gentzen translation.
There are several alternative definitions of the negative translation. They are all provably equivalent in intuitionistic logic, but may be easier to apply in particular contexts.
Then the translation can be succinctly described as: prefix ¬¬ to every atomic formula, disjunction, and existential quantifier.
Another possibility (known as Kuroda's translation) is to construct φN from φ by putting ¬¬ before the whole formula and after every universal quantifier. Notice that this reduces to the simple ¬¬φ translation if φ is propositional.
It is also possible to define φN by prefixing ¬¬ before every subformula of φ, as done by Kolmogorov. Such a translation is the logical counterpart to the call-by-name continuation-passing style translation of functional programming languages along the lines of the Curry–Howard correspondence between proofs and programs.
The double-negation translation was used by Gödel (1933) to study the relationship between classical and intuitionistic theories of the natural numbers ("arithmetic"). He obtains the following result:
This result shows that if Heyting arithmetic is consistent then so is Peano arithmetic. This is because a contradictory formula θ ∧ ¬θ is interpreted as θN ∧ ¬θN, which is still contradictory. Moreover, the proof of the relationship is entirely constructive, giving a way to transform a proof of θ ∧ ¬θ in Peano arithmetic into a proof of θN ∧ ¬θN in Heyting arithmetic. (By combining the double-negation translation with the Friedman translation, it is in fact possible to prove that Peano arithmetic is Π02-conservative over Heyting arithmetic.)
The propositional mapping of φ to ¬¬φ does not extend to a sound translation of first-order logic, because ∀x ¬¬φ(x) → ¬¬∀x φ(x) is not a theorem of intuitionistic predicate logic. This explains why φN has to be defined in a more complicated way in the first-order case.