# Choose term of coproduct type

We work in homotopy type theory. Denote the propositional truncation of a type $$A$$ by $$\|A\|$$ and the function type between types $$A$$ and $$B$$ by $$A \to B$$.

Can you construct a term of the following type: $$\prod_{A:U_0}\prod_{B:U_0} (\|A\| \to A) \times (\|B\| \to B) \to (\|A + B\| \to A + B) \quad?$$

• Oh, sorry, I somehow misread the last $\mathrm{Fun}$ as $\simeq$. By the way, why aren't you writing $A \to B$ instead of $\mathrm{Fun}(A,B)$, as is standard? And propositional truncation should be LaTeXed as \|A\| to give you $\|A\|$ instead of $||A||$. Mar 13 at 6:58
• @AndrejBauer can you associatively parse the arrow notation? I am a little unsure regarding that.
– user61651
Mar 13 at 7:03
• $A \to B \to C = A \to (B \to C)$ by convention. Mar 13 at 7:09
• The coproduct $A + B$ in your type need not be inhabited (consider $A = B = 0$), so perhaps your title is a bit misleading. Mar 13 at 7:15
• @AndrejBauer OK I changed the title.
– user61651
Mar 13 at 7:23

We are going to show that in MLTT with propositional truncation the type $$\textstyle \prod_{A:U_0}\prod_{B:U_0} (\|A\| \to A) \times (\|B\| \to B) \to (\|A + B\| \to A + B)$$ has no inhabitants. Assume it did.

We shall work in a specific model of MLTT with propositional truncation, namely assemblies over number realizability. It is not too important what this model is precisely, except for the following facts:

• there is an object of reals $$\mathbb{R}$$ in which
• $$\Pi (x : \mathbb{R}) \; \|(x < 1) + (x > 0)\|$$, and
• every map $$\mathbb{R} \to \mathsf{bool}$$ is constant.

Hoever, using the above type, we may inhabit $$\Pi(x : \mathbb{R}) \; \|x < 1\| + \|x > 0\|,$$ contradicting the fact that every map $$\mathbb{R} \to \mathsf{bool}$$ is constant. To do so, consider any $$x : \mathbb{R}$$ and instantiate $$A = \|x < 1\|$$ and $$B = \|x > 1\|$$ (and use the fact that $$<$$ maps into propositions).

• So if it has no inhabitants is there an explicit term of the negation?
– user61651
Mar 13 at 8:22
• No. Because that would violate another model (classical set theory) in which your type is inhabited. Mar 13 at 8:33
• This type is a much simpler witness of incompleteness than what is provided by Goedel's theorems. Curious.
– user61651
Mar 13 at 8:39
• That is a feature of intuitionistic logic. With fewer axioms (no excluded middle) it becomes easier to find undecided statements. The point of Gödel's theorems is not to give one particular undecided sentence, but to give a procedure for generating them. Mar 13 at 8:43