Brouwer–Heyting–Kolmogorov interpretation

(Redirected from BHK interpretation)

In mathematical logic, the Brouwer–Heyting–Kolmogorov interpretation, or BHK interpretation, of intuitionistic logic was proposed by L. E. J. Brouwer and Arend Heyting, and independently by Andrey Kolmogorov. It is also sometimes called the realizability interpretation, because of the connection with the realizability theory of Stephen Kleene. It is the standard explanation of intuitionistic logic.[1]

The interpretation edit

The interpretation states what is intended to be a proof of a given formula. This is specified by induction on the structure of that formula:

  • A proof of   is a pair   where   is a proof of   and   is a proof of  .
  • A proof of   is either   where   is a proof of   or   where   is a proof of  .
  • A proof of   is a function   that converts a proof of   into a proof of  .
  • A proof of   is a pair   where   is an element of   and   is a proof of  .
  • A proof of   is a function   that converts an element   of   into a proof of  .
  • The formula   is defined as  , so a proof of it is a function   that converts a proof of   into a proof of  .
  • There is no proof of  , the absurdity or bottom type (nontermination in some programming languages).

The interpretation of a primitive proposition is supposed to be known from context. In the context of arithmetic, a proof of the formula   is a computation reducing the two terms to the same numeral.

Kolmogorov followed the same lines but phrased his interpretation in terms of problems and solutions. To assert a formula is to claim to know a solution to the problem represented by that formula. For instance   is the problem of reducing   to  ; to solve it requires a method to solve problem   given a solution to problem  .

Examples edit

The identity function is a proof of the formula  , no matter what P is.

The law of non-contradiction   expands to  :

  • A proof of   is a function   that converts a proof of   into a proof of  .
  • A proof of   is a pair of proofs <a, b>, where   is a proof of P, and   is a proof of  .
  • A proof of   is a function that converts a proof of P into a proof of  .

Putting it all together, a proof of   is a function   that converts a pair <a, b> – where   is a proof of P, and   is a function that converts a proof of P into a proof of   – into a proof of  . There is a function   that does this, where  , proving the law of non-contradiction, no matter what P is.

Indeed, the same line of thought provides a proof for the modus ponens rule   as well, where   is any proposition.

On the other hand, the law of excluded middle   expands to  , and in general has no proof. According to the interpretation, a proof of   is a pair <a, b> where a is 0 and b is a proof of P, or a is 1 and b is a proof of  . Thus if neither P nor   is provable then neither is  .

Definition of absurdity edit

It is not, in general, possible for a logical system to have a formal negation operator such that there is a proof of "not"   exactly when there isn't a proof of  ; see Gödel's incompleteness theorems. The BHK interpretation instead takes "not"   to mean that   leads to absurdity, designated  , so that a proof of   is a function converting a proof of   into a proof of absurdity.

A standard example of absurdity is found in dealing with arithmetic. Assume that 0 = 1, and proceed by mathematical induction: 0 = 0 by the axiom of equality. Now (induction hypothesis), if 0 were equal to a certain natural number n, then 1 would be equal to n + 1, (Peano axiom: Sm = Sn if and only if m = n), but since 0 = 1, therefore 0 would also be equal to n + 1. By induction, 0 is equal to all numbers, and therefore any two natural numbers become equal.

Therefore, there is a way to go from a proof of 0 = 1 to a proof of any basic arithmetic equality, and thus to a proof of any complex arithmetic proposition. Furthermore, to get this result it was not necessary to invoke the Peano axiom that states that 0 is "not" the successor of any natural number. This makes 0 = 1 suitable as   in Heyting arithmetic (and the Peano axiom is rewritten 0 = Sn → 0 = S0). This use of 0 = 1 validates the principle of explosion.

Definition of function edit

The BHK interpretation will depend on the view taken about what constitutes a function that converts one proof to another, or that converts an element of a domain to a proof. Different versions of constructivism will diverge on this point.

Kleene's realizability theory identifies the functions with the computable functions. It deals with Heyting arithmetic, where the domain of quantification is the natural numbers and the primitive propositions are of the form x = y. A proof of x = y is simply the trivial algorithm if x evaluates to the same number that y does (which is always decidable for natural numbers), otherwise there is no proof. These are then built up by induction into more complex algorithms.

If one takes lambda calculus as defining the notion of a function, then the BHK interpretation describes the correspondence between natural deduction and functions.

See also edit

Notes edit

References edit

  • Troelstra, A. (1991). "History of Constructivism in the Twentieth Century" (PDF).
  • Troelstra, A. (2003). "Constructivism and Proof Theory (draft)". CiteSeerX 10.1.1.10.6972.

External link edit