The nature of the double negated axiom of choice

constructive-mathematicsintuitionistic-logictype-theory

Under what circumstances is the principle

$$nnaoc : (\Pi x:A. \lnot \lnot B_x) \implies \lnot \lnot (\Pi x: A. B_x)$$

valid? So the axiom of choice, but using double negation instead of propositional truncation?

As far as I can tell, it's not directly provable in a basic neutral constructive type theory? (Or other constructive logic.) Are there any common principles beyond neutral constructive math which imply it? Also, am I correct to assume that the $\lnot \lnot$ in the conclusion prevents it from having any interesting consequences that are not guarded under $\lnot \lnot$?

Best Answer

This principle is nonconstructive. Separately, it is incompatible with homotopy type theory.

It is easily checked that an equivalent principle is $\neg \neg \Pi x : A, B_x + \neg B_x$. To show one direction of this, note we clearly have $\Pi x : A, \neg \neg (B_x + \neg B_x)$, and apply your scheme.

This principle is highly nonconstructive. There are many principles compatible with constructive logic that imply $\neg \forall x (P(x) \lor \neg P(x))$ (for some specific domain of quantification and predicate $P$). For example, Brouwer’s continuity principle implies $\neg \forall r \in \mathbb{R} (r = 0 \lor r \neq 0)$.

Separately, even ignoring constructive concerns, your scheme is incompatible with homotopy type theory.

Everything in this paragraph is provable in pure Martin-Löf intensional type theory. Recall the following fact: $(\prod x: A, \prod y: A, x = y \lor x \neq y) \implies \prod x : A, \prod p : x =_A x, p =_{x =_A x} refl_x$. Now note that $(\prod x: A, \prod y: A, x = y \lor x \neq y)$ is clearly logically equivalent to $\prod q : A \times A, p_1(q) = p_2(q) \lor \neg p_1(q) = p_2(q)$. Thus, we must have $\neg \neg \prod x : A, \prod p : x =_A x, p =_{x =_A x} refl_x$.

In terms of homotopy type theory, we just proved that $A$ is not not a set. However, homotopy type theory postulates many types which are not sets. For example, the circle is a type $C$, together with a base point $b : C$, such that the type $b =_C b$ is equivalent to the group of integers.