Can you add power-sets to Martin-Löf intuitionistic set theory?

Maria Emilia Maietti, Silvio Valentini Dipartimento di Matematica Pura ed Applicata Università di Padova via G. Belzoni n.7, I–35131 Padova, Italy e-mail: maietti,silvio@math.unipd.it

August 12, 2001

Abstract In this paper we analyze an extension of Martin-Löf’s intensional set theory by means of a set contructor P such that the elements of P(S) are the subsets of the set S.

Since it seems natural to require some kind of extensionality on the equality among subsets, it turns out that such an extension cannot be constructive. In fact we will prove that this extension is classic, that is (A ∨ ¬A) true holds for any proposition A.

Mathematics Subject Classification: 03B15, 03B20.

Keywords: Intuitionistic set theory, topos theory.

1 Introduction

In [GR94] it is shown that the proof theoretic strength of Martin-Löf’s set theory [Mar84, NPS90] with restricted well-orders and the universe of the small sets is that of a subsystem of second order arithmetic with Δ_{2}^{1} comprehension and bar-induction. Thus, it is natural to wonder whether it is possible to enforce it to a theory with the strength of the full comprehension schema by adding a power-set constructor; in fact, this extension is necessary if we want to quantify over the subsets of a given set since in Martin-Löf’s set theory quantification is meaningful only on elements of a set.

In the literature there are already examples of constructive set theories with some kind of power-set constructor. For instance, one can think of a topos as a “generalized set theory” by associating with any topos its internal language (cf. [Bel88]). The logic underlying such a set theory is the intuitionistic predicate calculus and so any topos can be thought of as an intuitionistic universe of sets. Then, the lack of the rule of excluded middle seems to assure the constructivity of any proof developed within topos theory. The problem of adapting the topos theoretic approach to Martin-Löf’s set theory is due to the impredicativity of the former. Indeed, Martin-Löf’s set theory is predicative and provides a fully algorithmic way to construct the elements of the sets and the proofs of the propositions over these sets.

Another approach which should be considered is the Calculus of Constructions by Coquand and Huet, where the power of a set S can be identified with the collection of the functions from S into prop. But, if we identify sets and propositions, which is basic for a constructive explanation of the meaning of Martin-Löf’s set theory, the power-set so obtained is not a set, since prop cannot be a set and hence also the collection of the functions from a set S to prop cannot be a set. Thus, there is no chance to give a constructive, i.e. intuitionistic and predicative, meaning to quantification over its elements. A second problem with this approach is that in this way we would obtain an intensional notion of power-set, which is not the intended one since we think that equality among subsets has to be understood extensionally. Finally, it can be proved that the strong sum type, which is characteristic in Martin-Löf’s set theory, cannot consistently be added to the Calculus of Constructions at the level of propositions (see [Coq90]); thus, this approach cannot have the full strong sum on propositions (see for instance [Luo90]) and hence it cannot be considered an extension of Martin-Löf’s set theory.

Of course, there is no reason to expect that a second order construction becomes constructive only because it is added to a theory which is constructive. Indeed, we will prove that even the weaker fragment iT T, which contains only the basic set constructors, i.e. no universes and no well-orders, and the intensional equality, cannot be extended with a power-set constructor in a way compatible with the usual semantical explanation of the connectives, if the power-set is the collection of all the subsets of a given set equipped with extensional equality expressed in a uniform way at the propositional level. In fact, by using the so called intuitionistic axiom of choice, it is possible to prove that, given any power-set constructor, which satisfies the conditions that we will illustrate in the next section, classical logic arises (see also [Hof95] page 170, where it is suggested that a similar result holds in the setoid model built upon the Calculus of Constructions). A crucial point in carrying on our proof is the uniformity of the equality condition expressing extensionality on the power-set. This is to be contrasted with the proofs of similar results already proposed in the literature, after Diaconescu’s original proof in [Dia75], where proof-irrelevance of propositions, which does not hold in constructive type theory, is used.

2 iT T^{P} = iT T + power-sets

To express the rules and the conditions that we are going to require on the power-set we need to use judgements of the form A true (see [Mar84]) and hence it is convenient to recall their main property: A true holds if and only if there exists a proof-element a such that a ∈ A holds (for a formal approach to this topic see [Val95]). In particular, the following rule is admissible

(True Introduction) \frac{a ∈ A}{A true}

as well as all the rules of the intuitionistic predicative calculus with equality, where the judgement A true is the type theoretic interpretation of ⊢ A (see [Mar84] for the definition of the embedding of the intuitionistic predicative calculus within iT T). Here, we only recall the rules for the set of the intensional propositional equality Id (see [NPS90], page 61) which plays a central role in this paper (for sake of clearness, supposing A is a set and a, b ∈ A, we will write a =_{A} b to mean Id(A, a, b)). The formation and introduction rules are

\frac{A set a ∈ A b ∈ A}{a =_{A} b set} \frac{A = C a = c ∈ A b = d ∈ A}{(a =_{A} b) = (c =_{A} d)}
\frac{A set a ∈ A}{id(a) ∈ a =_{A} a}  \frac{A set a = b ∈ A}{id(a) = id(b) ∈ a =_{A} a}

whereas the elimination rule is

c ∈ a =_{A} b {[x : A]_{1} \atop |} ; d(x) ∈ C(x, x, id(x)) {[x : A, y : A, z : x =_{A} y]_{1} \atop |} ; C(x, y, z) set

idpeel(c, d) ∈ C(a, b, c) 1

and, if C(x, y, z) set [x : A, y : A, z : x =_{A} y] and D(x, y) set [x : A, y : A], it yields the admissibility of the following two rules:

\begin{matrix}c ∈ a =_{A} b & {[x : A] \atop |} ; C(x, x, id(x)) true \\ C(a, b, c) true \end{matrix} \begin{matrix}a =_{A} b true & {[x : A] \atop |} ; D(x, x) true \\ D(a, b) true \end{matrix}

The rules for the set P(S) depend on the definition of what a subset is within iT T. Following a long tradition, we identify a subset of S with a propositional function on S, i.e., provided that U(x) set [x : S], we say that U ≡ (x : S) U(x) is a subset of S, and hence, we say that an element a ∈ S is an element of U if U(a) is inhabited, i.e. the judgement U(a) true holds (cf. [dB80] and [SV95] for a detailed discussion on this topic).

Thus, provided that we want to have an extensional equality between subsets, we are forced to consider equal two subsets U and V of S if and only if they have the same elements, i.e. U(x) ↔ V (x) true [x : S].

The will to construct a set out of the collection of the propositional functions over a set equipped with an equality relation between propositional functions based on equi-provability is the point where classical logic breaks into the system. Inspired by the previous explanations, here we propose the following formation and introduction rules for P(S):

Formation

\frac{S set}{P(S) set}  \frac{S = T}{P(S) = P(T)}

Introduction

\frac{U(x) set [x : S]}{\{(x : S) U(x)\} ∈ P(S)}

Now, we should formulate the next rules for the set P(S), i.e. the equality introduction rule, the elimination rule and the equality rule. But the aim of this paper is to show that it is actually impossible to formulate any rules which make valid the conditions that we are are going to discuss in the following and that seem to be necessary to make P(S) the power-set of S, because otherwise we would obtain a Heyting semantics for classical logic.

As already said, it is necessary to formalize the fact that the equality between subsets is extensional; otherwise, P(S) would not be the set of the subsets of S but the collection of the propositional functions over S, and to add this collection as a set is not consistent (see [Jac89]). Thus, one seems to be forced to require that, whenever the two subsets U and V of S are equal, that is if U(x) ↔ V (x) true [x : S] then {(x : S) U(x)} = {(x : S) V (x)} ∈ P(S). However, as noted by Peter Aczel after reading a preliminary version of this work, this should not be a formal rule for the set P(S) since the use of an extensional equality rule for power-sets does not fit with the idea of treating the judgemental equalities as definitional, which is basic in iT T. To avoid this problem, we require here a weaker condition, which is a consequence of the judgemental equality above.

Equality introduction condition Let U(x) ↔ V (x) true [x : S]. Then there exists a proof-term c(U, V) such that c(U, V) ∈ {(x : S) U(x)} =_{P(S)} {(x : S) V (x)}.

Also this condition does not follow completely the general approach used in Martin-Löf’s set theory since some information is lost in the path from the premise to the conclusion, i.e. the proof term which testifies that U(x) ↔ V (x) true [x : S]. For this reason we do not want to consider it a formal rule. In the following we will prove that this lack of information is one of the main point in obtaining classical logic by adding the power-set constructor and this fact suggests that there is still some hope to be able to add a power-set constructor to constructive set-theory. For instance, one could consider the following rule

\frac{f(x) ∈ U(x) ↔ V (x) [x : S]}{c(U, V, f) ∈ \{(x : S) U(x)\} =_{P(S)} \{(x : S) V (x)\}}

and in this case it would be no more possible to carry on our proof to its end. In any case it is worth noting that this approach is not sufficient in most of the actual implementations of constructive set theory. Indeed, they use patternmatching instead of elimination rules and thus they validate stronger conditions, as the uniqueness of equality proofs [HS95] which allows to obtain classical logic also with this rule.

The elimination and the equality rules are even more problematic. In fact it is difficult to give a plain application of the standard approach that requires to obtain the elimination rule out of the introduction rule(s) (see [Mar71]). In fact, the introduction rule does not act over elements of a set but over elements of the collection ((x : S) set)_{↔}. Thus, if one wants to follow for P(S) the general pattern for a quotient set, he could look for a rule similar to the following:

c ∈ P(S) {[Y : (x : S) set] \atop |} ; d(Y) ∈ C(\{Y \}) {[Y, Z : (x : S) set, Y (x) ↔ Z(x) true [x : S]] \atop |} ; d(Y) = d(Z) ∈ C(\{Y \})
P_{rec}(c, d) ∈ C(c)

But this rule requires the use of variables for propositional functions, which are difficult to justify since prop is not a set.

Moreover, a standard equality rule should be something similar to the following

{[x : S] \atop |} ; U(x) set {[Y : (x : S) set] \atop |} ; d(Y) ∈ C(\{Y \}) {[Y, Z : (x : S) set, Y (x) ↔ Z(x) true [x : S]] \atop |} ; d(Y) = d(Z) ∈ C(\{Y \})

P_{rec}({(x : S) U(x)}, d) = d((x : S) U(x)) ∈ C({(x : S) U(x)})

These rules are a direct consequence of the introduction rule and the equality introduction condition and they are already not completely within standard Martin-Löf’s set theory. But, the problem is that, as they stand, they are not sufficient to make P(S) the set of the subsets of S. For instance, there is no way to obtain a proposition out of an element of P(S) and this does not fit with the introduction rule. Thus, to deal with the set P(S), one should add some rules which links its elements both with the elements of the type set and with those of the collection set_{↔}, whose elements are propositions but whose equality is induced by the logical equivalence.

Again, we don’t want to propose any particular rule since we are going to show that there can be no suitable rule, but we simply require that two conditions, which should be a consequence of such rules, are satisfied. The first condition is:

Elimination condition Let c ∈ P(S) and a ∈ S. Then there exists a proposition aεc.

This condition is suggested by the elimination rule that we have considered. In fact, a free use of the elimination rule with C(z) ≡ set_{↔} allows to obtain that P_{rec}(c, (Y) Y (a)) is an element of set_{↔} and hence that it is a proposition and we can identify such a proposition with aεc. Of course, the above condition is problematic because it requires the existence of a proposition but it gives no knowledge about it; in particular it is not clear if one has to require a new proposition (which are its canonical elements? which are its introduction and elimination rules?) or an old one (which proposition should one choose?).

As a consequence of the suggested equality rule, we require the following equality condition.

Equality condition Suppose U(x) set [x : S] and a : S then aε{(x : S) U(x)} ↔ U(a) true.

This condition can be justified in a way similar to the justification of the elimination condition, but using the equality rule instead of the elimination rule; in fact, supposing U(x) set [x : S] and a : S, the equality rule allows to obtain that aε{(x : S) U(x)} and U(a) are equal elements of set_{↔} which yields our condition. This condition cannot be justified from a semantical point of view since we have no way to recover the proof element for its conclusion; this is the requirement which allows us to develop our proof in the next section without furnishing term constructors for classical logic.

It is worth noting that no form of η-equality, like

\frac{c ∈ P(S)}{\{(x : S) xεc\} = c ∈ P(S)} x ∉ V F (c),

is required on P(S), but its validity is a consequence of the suggested elimination rule for P(S) at least within the extensional version of Martin-Löf’s set theory eT T. This theory is obtained from iT T by substituting the intensional equality proposition by the extensional equality proposition Eq(A, a, b) which allows to deduce a = b ∈ A from a proof of Eq(A, a, b). The problem with extensional equality is that it causes the lack of decidability of the equality judgement; for this reason it is usually rejected in the present version of the theory. To prove the η-equality in eT T let us assume that Y is a subset of S and that x : S, then Y (x) set and hence xε{Y } ↔ Y (x) true holds because of the equality condition and it yields Eq(PS, {(x : S) xε{Y }}, {Y }); thus, if c ∈ PS, by using the elimination rule one obtains Eq(PS, {(x : S) xεc}, c) and hence {(x : S) xεc} = c ∈ PS. Note that the last step is not allowed in iT T^{P}.

3 iT T^{P} is consistent

It is well known that by adding as a set to iT T the collection P(1l), whose elements are (the code for) the non-dependent sets, but using an equality between its elements induced by the intensional equality between sets, one obtains an inconsistent extension of iT T [Jac89]. On the contrary, we will prove that any extension of iT T with a power-set as proposed in the previous section, i.e. where the equality between two elements of a power-set is induced by the provability equivalence, is consistent or at least it is not inconsistent because of the rules we proposed on the power-sets and the conditions we required.

The easiest way to prove such a result is to show first that iT T^{P} can be embedded in the extensional theory eT T^{Ω}, which is an extension of the extensional version of type theory eT T only with the power-set Ω ≡ P(1l) of all the subsets of the one element set 1l. Then we will prove that such a theory is consistent.

Thus we have the following formation and introduction rules

Ω set  Ω = Ω  \frac{U(x) set [x : 1l]}{\{(x : 1l) U(x)\} ∈ Ω}

Moreover, we require that the introduction equality condition holds, i.e. if U(x) ↔ V (x) true [x : 1l] then there exists a proof-term c(U, V) such that

c(U, V) ∈ {(x : 1l) U(x)} =_{Ω} {(x : 1l) V (x)}

where if x, y : Ω then x =_{Ω} y is the abbreviation for the extensional propositional equality set Eq(Ω, x, y).

Now, the condition on the existence of a proposition aεc set [a : 1l, c : Ω] can be satisfied by putting, for any c ∈ Ω,

aεc ≡ (c =_{Ω} ⊤1l)

where ⊤1l ≡ {(x : 1l) x =1l x}; here, any reference to the element a disappears in the definiens because all the elements in 1l are equal. Finally, we require that

if U(x) set [x : 1l] then ({(x : 1l) U(x)} =_{Ω} ⊤1l) ↔ U(w) true [w : 1l]

Now, any power-set can be defined by putting

P(S) ≡ S → Ω

since, for any proposition U(x) set [x : S], one obtains an element in P(S) by putting

{(x : S) U(x)} ≡ λ((x : S) {(w : 1l) U(x)})

where we suppose that w does not appear free in U(x), which is in fact an element in S → Ω. Then the equality introduction condition holds provided that the propositional equality on functions is at least weakly extensional, i.e. for f, g : A → B, (∀x ∈ A) (f(x) =_{B} g(x)) → (λx.f(x) =_{A→B} λx.g(x)) is inhabited, as it happens when the extensional version of type theory is considered.

Moreover, for any element c ∈ P(S), i.e. a function from S into Ω, and any element a ∈ S, one obtains a proposition by putting

aεc ≡ (c(a) =_{Ω} ⊤1l)

which indeed satisfies the required equality condition.

Thus, any proof of c ∈ ⊥ in iT T^{P}, i.e. any inconsistency in iT T^{P}, can be reconstructed in eT T^{Ω}. Hence, it is sufficient to show that this new theory is consistent and this will be done by defining an interpretation I of this theory into Zermelo-Fraenkel set theory with the axiom of choice ZFC.

The basic idea is to interpret any non-dependent set A into a set I(A) of ZFC and, provided that I(A_{1}) is a set of ZFC, I(A_{2}) is a map ¿from I(A_{1}) into the collection of all sets of ZFC, …, I(A_{n}) is a map from the disjoint union

⨄_{α_{1}∈I(A_{1}),...,α_{n−2}∈I(A_{n−2})(⟨α_{1},...,α_{n−3}⟩)} I(A_{n−1})(⟨α_{1}, …, α_{n−2}⟩)

into the collection of all sets of ZFC, then the dependent set

A(x_{1}, …, x_{n}) set [x_{1} : A_{1}, …, x_{n} : A_{n}(x_{1}, …, x_{n−1})],

i.e. the propositional function A : (x_{1} : A_{1}) … (x_{n} : A_{n}(x_{1}, …, x_{n−1})) set, is interpreted into a map from the disjoint union

⨄_{α_{1}∈I(A_{1}),...,α_{n−1}∈I(A_{n−1})(⟨α_{1},...,α_{n−2}⟩)} I(A_{n})(⟨α_{1}, …, α_{n−1}⟩)

into the collection of all sets of ZFC.

Since the axiom of replacement allows to avoid the use of maps into the collection of all sets, which can be substituted by indexed families of sets, all the interpretation can be explained within basic ZFC, but we think that the approach we use here is more perspicuous and well suited for the interpretation of a theory like eT T^{Ω} where propositional functions have to be considered.

The interpretation I(a) of a closed term a ∈ A, where A is a non-dependent set, will be an element of the set I(A) whereas the interpretation of a not-closed term

a(x_{1}, …, x_{n}) ∈ A(x_{1}, …, x_{n}) [x_{1} : A_{1}, …, x_{n} : A_{n}(x_{1}, …, x_{n−1})],

i.e. the function-element a : (x_{1} : A_{1}) … (x_{n} : A_{n}(x_{1}, …, x_{n−1})) A(x_{1}, …, x_{n}), is a function I(a) which, when applied to the element

α ∈ ⨄_{α_{1}∈I(A_{1}),...,α_{n−1}∈I(A_{n−1})(⟨α_{1},...,α_{n−2}⟩)} I(A_{n})(⟨α_{1}, …, α_{n−1}⟩)

gives the element I(a)(α) of the set I(A)(α).

Now, for the basic sets we put: I(⊥) ≡ ∅, I(1l) ≡ {∅} and I(Bool) ≡ {∅, {∅}} and there is an obvious interpretation of their elements. Moreover, the sets Σ(A, B) and Π(A, B) (or, equivalently, the propositions (∃x ∈ A) B(x) and (∀x ∈ A) B(x)) are interpreted respectively in the disjoint union and the indexed product of the interpretation of B(x) indexed on the elements of the interpretation of A. The disjoint sum set A + B is interpreted in the disjoint union of the interpretation of A and B and the interpretation of the extensional equality proposition a =_{A} b is the characteristic function of the equality of the interpretation of a and b.

Finally, the interpretation of the set Ω is the set {∅, {∅}}.

Moreover, the judgement A(x_{1}, …, x_{n}) true [Γ] is interpreted in I(A)(γ) ≠ ∅ for every γ ∈ I(Γ), which gives I(A) ≠ ∅ when A is a non-dependent set.

The interpretation of all the terms is straightforward; thus, here we only illustrate the interpretation of the elements related to the set Ω:

I(\{(x : 1l) U(x)\}) ≡ \{ \begin{matrix}∅ & if I(U(∗)) = ∅ \\ \{∅\} & if I(U(∗)) ≠ ∅ \end{matrix}

and I(c(U, V)) ≡ ∅.

After these definitions, for any subset U of 1l, I(({(x : 1l) U(x)} =_{Ω} ⊤1l) ↔ U(∗)) ≠ ∅ by the axiom of choice and hence the equality condition is valid.

It is tedious, but straightforward, to check that all the rules of eT T^{Ω} are valid in this interpretation and hence that any proof of the judgement a ∈ ⊥ within eT T^{Ω}, i.e. any form of inconsistency, would result in a proof that there is some element in ∅, that is an inconsistency in ZFC.

4 iT T^{P} is classical

We are going to prove that iT T^{P} gives rise to classical logic, i.e. for any proposition A the judgement A∨¬A true holds. Even if iT T^{P} is not a topos, the proof that we show here is obtained by adapting to our framework an analogous result stating that any topos satisfying the axiom of choice is boolean. Among the various proofs of this result (cf. for instance [LS86],[Bel88]), which goes back to Diaconescu’s work showing that one obtains ZF by adding the axiom of choice to IZF [Dia75], we choose to translate the proof of Bell [Bel88], because it is very well suited to work in iT T^{P} since it is almost completely developed within local set theory instead that in topos theory, except for the use of a choice rule.

In iT T^{P} the result is a consequence of the strong elimination rule for disjoint union which allows to prove the so called intuitionistic axiom of choice, i.e.

((∀x ∈ A)(∃y ∈ B) C(x, y)) → ((∃f ∈ A → B)(∀x ∈ A) C(x, f(x))) true

Let us recall the proof [Mar84]. Assume that h ∈ (∀x ∈ A)(∃y ∈ B) C(x, y) and that x ∈ A. Then h(x) ∈ (∃y ∈ B) C(x, y). Let p(−) and q(−) be the first and the second projection respectively; then the elimination rule for the set of the disjoint union allows to prove that p(h(x)) ∈ B and q(h(x)) ∈ C(x, p(h(x))). Hence, by putting f ≡ λx.p(h(x)) we obtain both f ∈ A → B and q(h(x)) ∈ C(x, f(x)) since, by β-equality, f(x) ≡ (λx.p(h(x)))(x) = p(h(x)). Finally, we conclude by true introduction.

Since in the following we will mainly use the power-set P(1l), we introduce some abbreviations besides of Ω ≡ P(1l) and ⊤1l ≡ {(w : 1l) w =1l w} already used in section 3; let us suppose that U is any proposition and w : 1l is a variable which does not appear free in U, then we put [U] ≡ {(w : 1l) U} and, supposing p ∈ Ω, we put \overline{p} ≡ ∗εp. Moreover, following a standard practice, supposing A is a proposition, sometimes we will simply write A to assert the judgement A true.

It is convenient to state here all the properties of the intensional equality proposition Id that we need in the following. First, we recall two well known results: Id is an equivalence relation, and if A and B are sets and a =_{A} c and f =_{A→B} g then f(a) =_{B} g(c) (for a proof see [NPS90], page 64).

Moreover, the following properties of Id are specific of the new set Ω. They are similar to the properties that the set Id enjoys when it is used on elements of the set U_{0}, i.e. the universe of the small sets, which we will not use at all. In fact, Ω resembles this set, but it also differs because of the considered equality and because a code for each set is present in Ω whereas only the codes for the small sets can be found in U_{0}.

Lemma 4.1 If p =_{Ω} q then \overline{p} ↔ \overline{q}.

Proof. Let x ∈ Ω; then \overline{x} ↔ \overline{x} and hence \overline{p} ↔ \overline{q} is a consequence of p =_{Ω} q by Id-elimination. □

Lemma 4.2 ¬(true =_{Bool} false).

Proof. Let x ∈ Bool; then if x then [1l] else [⊥] ∈ Ω. Now, suppose that true =_{Bool} false, then if true then [1l] else [⊥] =_{Ω} if false then [1l] else [⊥] which yields [1l] =_{Ω} [⊥] by boole-equality and transitivity. Thus, by the previous lemma \overline{[1l]} ↔ \overline{[⊥]}, but \overline{[1l]} ↔ 1l and \overline{[⊥]} ↔ ⊥ by the equality condition; hence ⊥ true and thus, by discharging the assumption true =_{Bool} false, we obtain the result. □

Now, we will start the proof of the main result of this section. The trick to internalize the proof in [Bel88] within iT T^{P} is stated in the following lemma.

Lemma 4.3 For any proposition A, if A true then

c((w : 1l) A, (w : 1l) w =1l w) ∈ [A] =_{Ω} ⊤1l

and hence [A] =_{Ω} ⊤1l true; moreover, if [A] =_{Ω} ⊤1l true then A true.

Proof. If A true then A ↔ (w =1l w) true [w : 1l]; hence, by the equality introduction condition, c((w : 1l) A, (w : 1l) w =1l w) ∈ [A] =_{Ω} ⊤1l, and thus [A] =_{Ω} ⊤1l true by true-introduction; on the other hand, if [A] =_{Ω} ⊤1l true then \overline{[A]} ↔ \overline{⊤1l} by lemma 4.1, but \overline{[A]} ↔ A and ∗ =1l ∗ ↔ \overline{⊤1l} by the equality condition, and hence A true since ∗ =1l ∗ true. □

After this lemma, for any proposition A it is possible to obtain a logically equivalent proposition, i.e. [A] =_{Ω} ⊤1l, such that, if A true, the proof element c((w : 1l) A, (w : 1l) w =1l w) of [A] =_{Ω} ⊤1l has no memory of the proof element which testifies the truth of A. We will see that this property is crucial to get the main result. We will use the above lemma immediately in the next one where, instead of the proposition \overline{p(w)} ∨ \overline{q(w)} set [w : Ω × Ω], we write [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l set [w : Ω × Ω] in order to avoid that the proof-term in the main statement depends on the truth of the first or of the second disjunct.

Proposition 4.4 In iT T^{P} the following proposition

(∀z ∈ Σ(Ω × Ω, (w) [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l)) (∃x ∈ Bool) (x =_{Bool} true → \overline{p(p(z))}) ∧ (x =_{Bool} false → \overline{q(p(z))})

is true.

Proof. Suppose z ∈ Σ(Ω×Ω, (w) [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l) then p(z) ∈ Ω×Ω and q(z) is a proof of [\overline{p(p(z))} ∨ \overline{q(p(z))}] =_{Ω} ⊤1l. Thus, by lemma 4.3, \overline{p(p(z))} ∨ \overline{q(p(z))}. Now, the result can be proved by ∨-elimination. In fact, if \overline{p(p(z))} true then true =_{Bool} true → \overline{p(p(z))}; moreover, ¬(true =_{Bool} false) by lemma 4.2 and hence true =_{Bool} false → \overline{q(p(z))}. Thus we obtain that

(∃x ∈ Bool) (x =_{Bool} true → \overline{p(p(z))}) ∧ (x =_{Bool} false → \overline{q(p(z))})

On the other hand, by a similar proof we reach the same conclusion starting from the assumption \overline{q(p(z))} true. □

Thus, we can use the intuitionistic axiom of choice to obtain:

Proposition 4.5 In iT T^{P} the following proposition

(∃f ∈ Σ(Ω × Ω, (w) [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l) → Bool)
(∀z ∈ Σ(Ω × Ω, (w) [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l))
(f(z) =_{Bool} true → \overline{p(p(z))}) ∧ (f(z) =_{Bool} false → \overline{q(p(z))})

is true.

Now, suppose that A is any proposition; then

⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩ ∈ Σ(Ω × Ω, (w) [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l)

where k(x, y) is short for c((w : 1l) \overline{p(⟨x, y⟩)} ∨ \overline{q(⟨x, y⟩)}, (w : 1l) w =1l w).

In fact, ⟨[A], ⊤1l⟩ ∈ Ω × Ω and \overline{⊤1l} true, hence \overline{p(⟨[A], ⊤1l⟩)} ∨ \overline{q(⟨[A], ⊤1l⟩)}; thus the result follows by lemma 4.3.

Now, let f be the choice function in the proposition 4.5; then

f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} true → \overline{[A]}

But

(f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} true) ∨ (f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} false)

since the set Bool is decidable (for a proof see [NPS90], page 177), and hence, by ∨-elimination and a little of intuitionistic logic, one obtains that

(1) \overline{[A]} ∨ (f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} false)

Analogously one can prove that

(2) \overline{[A]} ∨ (f(⟨⟨⊤1l, [A]⟩, k(⊤1l, [A])⟩) =_{Bool} true)

Thus, by using distributivity on the conjunction of (1) and (2), one finally obtains Proposition 4.6 For any proposition A in iT T^{P} the following proposition

(∃f ∈ Σ(Ω × Ω, (w) [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l) → Bool)
\overline{[A]} ∨ ((f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} false)∧
(f(⟨⟨⊤1l, [A]⟩, k(⊤1l, [A])⟩) =_{Bool} true))

is true.

Now, let us assume \overline{[A]} true; then [A] =_{Ω} ⊤1l true by lemma 4.3 and hence

⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩ =_{Σ(Ω×Ω,...)} ⟨⟨⊤1l, ⊤1l⟩, k(⊤1l, ⊤1l)⟩

since λx.⟨⟨x, ⊤1l⟩, k(x, ⊤1l)⟩ is a function from Ω to Σ(Ω × Ω, (w) [\overline{p(w)} ∨ \overline{q(w)}] =_{Ω} ⊤1l). Thus

f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} f(⟨⟨⊤1l, ⊤1l⟩, k(⊤1l, ⊤1l)⟩)

where f is the function whose existence is stated by the proposition 4.6. With the same assumption, also

f(⟨⟨⊤1l, [A]⟩, k(⊤1l, [A])⟩) =_{Bool} f(⟨⟨⊤1l, ⊤1l⟩, k(⊤1l, ⊤1l)⟩)

can be proved in a similar way; hence, by transitivity of the equality proposition,

f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} f(⟨⟨⊤1l, [A]⟩, k(⊤1l, [A])⟩)

It is worth noting that this result depends mainly on lemma 4.3, and hence on the equality introduction condition whose premise is a “true judgement”. Indeed, λx.⟨⟨x, ⊤1l⟩, k(x, ⊤1l)⟩ and λx.⟨⟨⊤1l, x⟩, k(⊤1l, x)⟩ yield equal results when applied to ⊤1l since they do not depend on the proof-terms used to derive the two judgements

(\overline{x} ∨ \overline{⊤1l}) ↔ (w =1l w) true [x : Ω, w : 1l]

and

(\overline{⊤1l} ∨ \overline{x}) ↔ (w =1l w) true [x : Ω, w : 1l]

In the case we admit dependency on the proof-terms in the equality introduction condition we can redo the whole proof if we assume that uniqueness of equality proofs (see the rules in [HS95] or [Hof95]) holds and we replace \overline{a} with a =_{Ω} ⊤1l, where a ∈ Ω, everywhere in the proof in order to get an actual proof-term at this point.

Now, by assuming both \overline{[A]} true and

(f(⟨⟨[A], ⊤1l⟩, k([A], ⊤1l)⟩) =_{Bool} false) ∧ (f(⟨⟨⊤1l, [A]⟩, k(⊤1l, [A])⟩) =_{Bool} true)

one can conclude true =_{Bool} false. On the other hand, we know that ¬(true =_{Bool} false) holds by lemma 4.2. Hence ⊥ follows and so we obtain that the judgement ¬\overline{[A]} true holds by discharging the assumption \overline{[A]} true. Then, by using proposition 4.6 and a little of intuitionistic logic, we can conclude (\overline{[A]} ∨ ¬\overline{[A]}) true which, by the equality condition, yields (A ∨ ¬A) true. Thus, if we could give suitable rules for the power-sets that allow our conditions to hold and follow the usual meaning for the judgement C true, i.e. C true holds if and only if there exists a proof element for the proposition C, then we would have a proof element for the proposition A ∨ ¬A, which is expected to fail.

5 Conclusion

To help the reader who knows the proof in [Bel88], it may be useful to explain the differences between the original proof and that presented in the previous section. Our proof is not the plain application of Bell’s result to iT T^{P} since iT T^{P} is not a topos. It is possible to build a topos out of the extensional theory eT T^{P} obtained by adding a power-set constructor to eT T, if one adds to it also the rule of η-equality for power-sets, like in the end of section 2. However, we showed that it is not necessary to be within a topos to reconstruct Diaconescu’s result and that a weaker theory is sufficient.

This fact suggests that it is not possible to extend Martin-Löf’s set theory, where sets and propositions are identified and proof-elements can be provided for any provable proposition, to an intuitionistic theory of sets fully equipped with power-sets satisfying the conditions discussed in section 2, provided that we want to preserve the constructive meaning of the connectives. However, observe that the requirement of uniformity in the extensional equality condition is crucial to carry on our proof. Therefore, it seems that there is still some hope to get power-sets in constructive type theory by dropping uniformity. But, it is worth recalling that an analogous proof of excluded middle can be performed also without uniformity if the uniqueness of equality proofs holds. Thus, no constructive power-set can be added if type theory is endowed with pattern matching, which is usually used in most of its actual implementations.

References

[Bel88] J.L. Bell. Toposes and local set theory: an introduction. Clarendon Press, Oxford, 1988.

[Coq90] T. Coquand. Metamathematical investigation of a calculus of constructions. In P. Odifreddi, editor, Logic in Computer Science, pages 91–122. Academic Press, 1990.

[dB80] N.G. de Bruijn. A survey of the project automath. In J.P. Seldin and J.R. Hindley, editors, To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, pages 589–606. Academic Press, London, 1980.

[Dia75] R. Diaconescu. Axiom of choice and complementation. Proc. Amer. Math. Soc., 51:176–178, 1975.

[GR94] E. Griffor and M. Rathjen. The strength of some Martin-Löf’s type theories. Arch. Math. Logic, 33:347–385, 1994.

[Hof95] M. Hofmann. Extensional concepts in intensional type theory. PhD Thesis, University of Edinburgh, 1995.

[HS95] M. Hofmann and T. Streicher. The groupoid interpretation of type theory. In J. Smith G. Sambin, editor, Twenty five years of Constructive Type Theory, pages 83–111, Venice, 1995.

[Jac89] B. Jacobs. The inconsistency of higher order extensions of Martin-Löf’s type theory. Journal of Phil. Logic., 18:399–422, 1989.

[LS86] J. Lambek and P. J. Scott. An introduction to higher order categorical logic., volume 7 of Studies in Advanced Mathematics. Cambridge University Press, 1986.

[Luo90] Z. Luo. An extended calculus of constructions. PhD Thesis, University of Edinburgh, 1990.

[Mar71] P. Martin-Löf. Hauptsatz for the intuitionistic theory of iterated inductive definitions. In J.E. Fenstad, editor, The Second Scandinavian Logic Symposium. North-Holland Publishing Company, 1971.

[Mar84] P. Martin-Löf. Intuitionistic Type Theory, notes by G. Sambin of a series of lectures given in Padua, June 1980. Bibliopolis, Naples, 1984.

[NPS90] B. Nordström, K. Peterson, and J. Smith. Programming in Martin-Löf’s Type Theory, An introduction. Clarendon Press, Oxford, 1990.

[SV95] G. Sambin and S. Valentini. Building up a tool-box for Martin-Löf’s type theory. In J. Smith G. Sambin, editor, Twenty five years of Constructive Type Theory, pages 221–244, Venice, 1995.

[Val95] S. Valentini. The forget-restore principle: a paradigmatic example. In J. Smith G. Sambin, editor, Twenty five years of Constructive Type Theory, pages 275–283, Venice, 1995.