* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download The Formulae-as-Classes Interpretation of Constructive Set Theory
Survey
Document related concepts
Mathematical proof wikipedia , lookup
Laws of Form wikipedia , lookup
Computability theory wikipedia , lookup
Foundations of mathematics wikipedia , lookup
Structure (mathematical logic) wikipedia , lookup
Model theory wikipedia , lookup
Curry–Howard correspondence wikipedia , lookup
Quasi-set theory wikipedia , lookup
Computable function wikipedia , lookup
Truth-bearer wikipedia , lookup
List of first-order theories wikipedia , lookup
Mathematical logic wikipedia , lookup
History of the function concept wikipedia , lookup
Axiom of reducibility wikipedia , lookup
Transcript
The Formulae-as-Classes Interpretation of Constructive Set Theory Michael RATHJEN∗ Department of Pure Mathematics, University of Leeds Leeds LS2 9JT, England Department of Mathematics, Ohio State University Columbus, OH 43210, U.S.A. [email protected] Abstract. The main objective of this paper is to show that a certain formulae-asclasses interpretation based on generalized set recursive functions provides a selfvalidating semantics for Constructive Zermelo-Fraenkel Set theory, CZF. It is argued that this interpretation plays a similar role for CZF as the constructible hierarchy for classical set theory, in that it can be employed to show that CZF is expandable by several forms of the axiom of choice without adding more consistency strength. 1 Introduction The general topic of Constructive Set Theory (CST ) originated in John Myhill’s endeavour (see [16]) to discover a simple formalism that relates to Bishop’s constructive mathematics as classical Zermelo-Fraenkel Set Theory with the axiom of choice relates to classical Cantorian mathematics. CST provides a standard set theoretical framework for the development of constructive mathematics in the style of Errett Bishop [8]. One of the hallmarks of constructive set theory is that it possesses (due to Aczel [1, 2, 3]) a canonical interpretation in MartinLöf’s intuitionistic type theory (see [12, 13]) which is considered to be the most acceptable foundational framework of ideas that make precise the constructive approach to mathematics. The interpretation employs the Curry-Howard ‘propositions as types’ idea in that the axioms of constructive set theory get interpreted as provably inhabited types. In constructive or intuitionistic set theories often the questions arises whether adding a particular set-theoretic statement to the given set theory leads to a theory which is equiconsistent with the original theory. The most famous methods for showing equiconsistency and independence of statements from axiom systems in the classical context are Gödel’s constructible hierarchy L and Cohen’s method of forcing or the closely related technique of Boolean-valued models. In classical ZF the constructible hierarchy has been utilized to show that augmenting ZF by the axiom of choice and the generalized continuum hypothesis gives rise to a theory that is equiconsistent with ZF. This leads to the question whether L can be fruitfully employed in intuitionistic set theories as well. Robert Lubarsky has established the following result for intuitionistic Zermelo-Fraenkel set theory, IZF, in [11]: ∗ Research partly supported by NSF Grant DMS-0301162 and United Kingdom Engineering and Physical Sciences Research Council Grant GR/R 15856/01. 2 The Formulae-as-Classes Interpretation of Constructive Set Theory Theorem 1.1. Let V = L be the statement that all sets are constructible. For a formula ϕ, let ϕL be the result of relativizing all quantifiers in ϕ to L. We then have IZF ` (V = L)L IZF ` ϕ ⇒ IZF ` ϕL . While 1.1 is an interesting result, it cannot be utilized to provide similar consequences as in the classical scenario. Classically, L is a very well-behaved class that is “constructed” from the ordinals and can be well-ordered via a definable well-ordering, whence AC holds in L. In intuitionistic set theories, however, the ordinals are rather uncontrollable sets that cannot be shown to be linearly ordered, that is, given ordinals α, β it is not possible to conclude that α ∈ β or α = β or β ∈ α. As a result, when working in an intuitionistic context, we have to seek a different approach if we want to show that certain forms of the axiom of choice can be added without gaining more consistency strength. In this paper it is argued that the formulae-as-classes interpretation can do for constructive set theories what the constructible hierarchy does for classical set theory. The formulae-as-classes interpretation is closely related to Aczel’s formulae-as-types interpretation of set theory in Martin-Löf type theory. In diverges from the latter, however, in that it is an interpretation of set theory into set theory and, crucially, in that it provides a semantics for Constructive Zermelo-Fraenkel Set Theory, CZF, which can be formalized in CZF itself (a self-validating semantics). 1.1 The system CZF In this subsection we will summarize the language and axioms for CZF. The language of CZF is the same first order language as that of classical Zermelo-Fraenkel Set Theory, ZF whose only non-logical symbol is ∈. The logic of CZF is intuitionistic first order logic with equality. Among its non-logical axioms are Extensionality, Pairing and Union in their usual forms. CZF has additionally axiom schemata which we will now proceed to summarize. Infinity: ∃x∀u u ∈ x ↔ ∅ = u ∨ ∃v ∈ x u = v + 1 where v + 1 = v ∪ {v}. Set Induction: ∀x[∀y ∈ xφ(y) → φ(x)] → ∀xφ(x) Restricted Separation: ∀a∃b∀x[x ∈ b ↔ x ∈ a ∧ φ(x)] for all restricted formulae φ. A set-theoretic formula is restricted if it is constructed from prime formulae using ¬, ∧, ∨, →, ∀x ∈ y and ∃x ∈ y only. Strong Collection: For all formulae φ, ∀a ∀x ∈ a∃yφ(x, y) → ∃b [∀x ∈ a ∃y ∈ b φ(x, y) ∧ ∀y ∈ b ∃x ∈ a φ(x, y)] . Subset Collection: For all formulae ψ, ∀a∀b∃c∀u ∀x ∈ a ∃y ∈ b ψ(x, y, u) → ∃d ∈ c [∀x ∈ a ∃y ∈ d ψ(x, y, u) ∧ ∀y ∈ d ∃x ∈ a ψ(x, y, u)] . The Subset Collection schema easily qualifies as the most intricate axiom of CZF. To explain this axiom in different terms, we introduce the notion of fullness (cf. [1]). The Formulae-as-Classes Interpretation of Constructive Set Theory 3 Definition 1.2. As per usual, we use hx, yi to denote the ordered pair of x and y. We use Fun(g), dom(R), ran(R) to convey that g is a function and to denote the domain and range of any relation R, respectively. For sets A, B let A × B be the cartesian product of A and B, that is the set of ordered pairs hx, yi with x ∈ A and y ∈ B. Let A B be the class of all functions with domain A and with range contained in B. Let mv(A B) be the class of all sets R ⊆ A × B satisfying ∀u ∈ A ∃v ∈ B hu, vi ∈ R. A set C is said to be full in mv(A B) if C ⊆ mv(A B) and ∀R ∈ mv(A B) ∃S ∈ C S ⊆ R. The expression mv(A B) should be read as the collection of multi-valued functions from the set A to the set B. Additional axioms we shall consider are: Exponentiation: ∀x∀y∃z z = x y. Fullness: ∀x∀y∃z z is full in mv(x y). The next result is an equivalent rendering of [1], 2.2. We include a proof for the reader’s convenience. Proposition 1.3. Let CZF− be CZF without Subset Collection. (i) CZF− ` Subset Collection ↔ Fullness. (ii) CZF ` Exponentiation. Proof. (i): For “⇒” let φ(x, y, u) be the formula y ∈ u ∧ ∃z ∈ B (y = hx, zi). Using the relevant instance of Subset Collection and noticing that for all R ∈ mv(A B) we have ∀x ∈ A ∃y ∈ A × B φ(x, y, R), there exists a set C such that ∀R ∈ mv(A B) ∃S ∈ C S ⊆ R. A “⇐”: Let C be full in mv( B). Assume ∀x ∈ A∃y ∈ Bφ(x, y, u). Define ψ(x, w, u) := ∃y ∈ B w = hx, yi ∧ φ(x, y, u) . Then ∀x ∈ A∃wψ(x, w, u). Thus, by Strong Collection, there exists v ⊆ A × B such that ∀x ∈ A ∃y ∈ B hx, yi ∈ v ∧ φ(x, y, u) ∧ ∀x ∈ A ∀y ∈ B hx, yi ∈ v → φ(x, y, u) . As C is full, we find w ∈ C with w ⊆ v. Consequently, ∀x ∈ A∃y ∈ ran(w)φ(x, y, u) and ∀y ∈ ran(w)∃x ∈ A φ(x, y, u), where ran(w) := {v : ∃z hz, vi ∈ w}. Whence D := {ran(w) : w ∈ C} witnesses the truth of the instance of Subset Collection pertaining to φ. (ii) Let C be full in mv(A B). If now f ∈ A B, then ∃R ∈ C R ⊆ f . But then R = f . Therefore B = {f ∈ C : f is a function}. t u A Let TND be the principle of excluded third, i.e. the schema consisting of all formulae of the form A ∨ ¬A. The first central fact to be noted about CZF is: Proposition 1.4. CZF + TND = ZF. 4 The Formulae-as-Classes Interpretation of Constructive Set Theory Proof : Note that classically Collection implies Separation. Powerset follows classically from Exponentiation. t u On the other hand, it was shown in [18], Theorem 4.14, that CZF has only the strength of Kripke-Platek Set Theory (with the Infinity Axiom), KP (see [5]), and, moreover, that CZF is of the same strength as its subtheory CZF− , i.e., CZF minus Subset Collection. To stay in the world of CZF one has to keep away from any principles that imply TND. Moreover, it is perhaps fair to say that CZF is such an interesting theory owing to the non-derivability of Powerset and Separation. Therefore one ought to avoid any principles which imply Powerset or Separation. The first large set axiom proposed in the context of constructive set theory was the Regular Extension Axiom, REA, which Aczel introduced to accommodate inductive definitions in CZF (cf. [3]). Definition 1.5. A is inhabited if ∃x x ∈ A. An inhabited set A is regular if A is transitive, and for every a ∈ A and set R ⊆ a × A if ∀x ∈ a ∃y (hx, yi ∈ R), then there is a set b ∈ A such that ∀x ∈ a ∃y ∈ b (hx, yi ∈ R) ∧ ∀y ∈ b ∃x ∈ a (hx, yi ∈ R).1 2 The axiom of choice in constructive set theories Among the axioms of set theory, the axiom of choice is distinguished by the fact that is it the only one that one finds ever mentioned in workaday mathematics. In the mathematical world of the beginning of the 20th century, discussions about the status of the axiom of choice were important. In 1904 Zermelo proved that every set can be well-ordered by employing the axiom of choice. While Zermelo argued that it was self-evident, it was also criticized as an excessively non-constructive principle by some of the most distinguished analysts of the day, notably Borel, Baire, and Lebesgue. At first blush this reaction against the axiom of choice utilized in Cantor’s new theory of sets is surprising as the French analysts had used and continued to use choice principles routinely in their work. However, in the context of 19th century classical analysis only the Axiom of Dependent Choices, DC, is invoked and considered to be natural, while the full axiom of choice is unnecessary and even has some counterintuitive consequences. Unsurprisingly, the axiom of choice does not have a unambiguous status in constructive mathematics either. On the one hand it is said to be an immediate consequence of the constructive interpretation of the quantifiers. Any proof of ∀x ∈ A ∃y ∈ B φ(x, y) must yield a function f : A → B such that ∀x ∈ A φ(x, f (x)). This is certainly the case in Martin-Löf’s intuitionistic theory of types. On the other hand, it has been observed that the full axiom of choice cannot be added to systems of extensional constructive set theory without yielding constructively unacceptable cases of excluded middle (see [9]). In extensional intuitionistic set theories, a proof of a statement ∀x ∈ A ∃y ∈ B φ(x, y), in general, provides only a function F , which when fed a proof p witnessing x ∈ A, yields F (p) ∈ B and φ(x, F (p)). Therefore, in the main, such an F cannot be rendered a function of x alone. Choice will then hold over sets which have a canonical proof function, where a constructive function h is a canonical proof 1 In particular, if R : a → A is a function, then the image of R is an element of A. The Formulae-as-Classes Interpretation of Constructive Set Theory 5 function for A if for each x ∈ A, h(x) is a constructive proof that x ∈ A. Such sets having natural canonical proof functions “built-in” have been called bases (cf. [21], p. 841). The particular form of constructivism adhered to in this paper is Martin-Löf’s intuitionistic type theory (cf. [12, 13]). Set-theoretic choice principles will be considered as constructively justified if they can be shown to hold in the interpretation in type theory. Moreover, looking at set theory from a type-theoretic point of view has turned out to be valuable heuristic tool for finding new constructive choice principles. For more information on choice principles in the constructive context see [19]. 2.1 Old acquaintances In many a text on constructive mathematics, axioms of countable choice and dependent choices are accepted as constructive principles. This is, for instance, the case in Bishop’s constructive mathematics (cf. [8] as well as Brouwer’s intuitionistic analysis (cf. [21], Ch. 4, Sect. 2). Myhill also incorporated these axioms in his constructive set theory [16]. The weakest constructive choice principle we shall consider is the Axiom of Countable Choice, ACω , i.e. whenever F is a function with domain ω such that ∀i ∈ ω ∃y ∈ F (i), then there exists a function f with domain ω such that ∀i ∈ ω f (i) ∈ F (i). A mathematically very useful axiom to have in set theory is the Dependent Choices Axiom, DC, i.e., for all formulae ψ, whenever (∀x ∈ a) (∃y ∈ a) ψ(x, y) and b0 ∈ a, then there exists a function f : ω → a such that f (0) = b0 and (∀n ∈ ω) ψ(f (n), f (n + 1)). Even more useful is the Relativized Dependent Choices Axiom, RDC. It asserts that for arbitrary formulae φ and ψ, whenever ∀x φ(x) → ∃y φ(y) ∧ ψ(x, y) and φ(b0 ), then there exists a function f with domain ω such that f (0) = b0 and (∀n ∈ ω) φ(f (n)) ∧ ψ(f (n), f (n + 1)) . 2.2 Operations on classes The interpretation of constructive set theory in type theory not only validates all the theorems of CZF (resp. CZF + REA) but many other interesting set-theoretic statements, including several new choice principles which will be described next. To state these principles we need to introduce various operations on classes. Remark 2.1. Class notation: In doing mathematics in CZF we shall exploit the use of class notation and terminology, just as in classical set theory. Given a formula φ(x) there may not exist a set of the form {x : φ(x)}. But there is nothing wrong with thinking about such collection. So, if φ(x) is a formula in the language of set theory we may form a class {x : φ(x)}. We allow φ(x) to have free variables other than x, which are considered parameters 6 The Formulae-as-Classes Interpretation of Constructive Set Theory upon which the class depends. Informally, we call any collection of the form {x : φ(x)} a class. However formally, classes do not exist, and expressions involving them must be thought of as abbreviations for expressions not involving them. Classes A, B are defined to be equal if ∀x[x ∈ A ↔ x ∈ B]. We may also consider an augmentation of the language of set theory whereby we allow atomic formulas of the form y ∈ A and A = B with A, B being classes. There is no harm in taking such liberties as any such formula can be translated back into the official language of set theory by re-writing y ∈ {x : φ(x)} and {x : φ(x)} = {y : ψ(y)} as as φ(y) and ∀z [φ(z) ↔ ψ(z)], respectively (with z not in in φ(x) and ψ(y)). Definition 2.2. Let CZFExp denote the modification of CZF with Eponentiation in place of Subset Collection. Remark 2.3. In all the results of this paper, CZF could be replaced by CZFExp , that is to say, for the purposes of this paper it is enough to assume Exponentiation rather than Subset Collection. Definition 2.4. (CZF) Q If A is a set and Bx are classes for all x ∈ A, we define a class x∈A Bx by: [ Y Bx | ∀x∈A(f (x) ∈ Bx )}. Bx := {f : A → (1) x∈A x∈A If A is a class and Bx are classes for all x ∈ A, we define a class X Bx := {hx, yi | x ∈ A ∧ y ∈ Bx }. P x∈A Bx by: (2) x∈A If A is a class and a, b are sets, we define a class I(A, a, b) by: I(A, a, b) := {z ∈ 1 | a = b ∧ a, b ∈ A}. (3) If A is a class and for each a ∈ A, Ba is a set, then Wa∈A Ba is the smallest class Y such that whenever a ∈ A and f : Ba → Y , then ha, f i ∈ Y . Lemma 2.5. (CZF) Q P If A,B,a,b are sets and Bx are sets for all x ∈ A, then x∈A Bx , x∈A Bx and I(A, a, b) are sets. S Proof. First S S of all, we need to prove that x∈A Bx is a set. Indeed, g = {{x, {x, Bx }} |x ∈ A}, and so g = {z, x, Bx | z ∈ x, x ∈ A} is a set by Union. Now [[ [[ ran(g) = {y ∈ g | ∃x∈ g (hx, yi ∈ g)} S S and x∈A Bx = ran(g) are sets by Bounded Separation and Union. S 1: The class of all functions from A to x∈A Bx is a set by Exponentiation and Y [ Bx := {f : A → Bx | ∀x∈A(f (x) ∈ Bx )} x∈A x∈A The Formulae-as-Classes Interpretation of Constructive Set Theory 7 is a set by Bounded Separation, since ∀x∈A(f (x) ∈ Bx ) can be rewritten as ∀x∈A ∃y ∈ran(f )∃y 0 ∈ran(g)(hx, yi ∈ f ∧ hx, y 0 i ∈ g ∧ y ∈ y 0 ). S 2: Using from above that x∈A Bx is a set, by Pairing, Union and Replacement we obtain a set [ [ A× Bx = {hx, yi | x ∈ A ∧ y ∈ Bx }. x∈A Now, the set X x∈A Bx := {hx, yi∈A × x∈A [ Bx | x ∈ A ∧ y ∈ Bx } x∈A exists by Bounded Separation, since x ∈ A ∧ y ∈ Bx can be rewritten as x ∈ A ∧ ∃y 0 ∈ran(g)(hx, y 0 i ∈ g ∧ y ∈ y 0 ). 2 3: I(A, a, b) is a set by Bounded Separation. Lemma 2.6. (CZF + REA) If A is a set and Bx is a set for all x ∈ A, then Wa∈A Ba is a set. 2 Proof. This follows from [3], Corollary 5.3. 2.3 Inductively defined classes In the following we shall introduce several inductively defined classes, and, moreover, we have to ensure that such classes can be formalized in CZF. We define an inductive definition to be a class of ordered pairs. If Φ is an inductive definition and hx, ai ∈ Φ then we write x Φ a and call xa an (inference) step of Φ, with set x of premisses and conclusion a. For any class Y , let ΓΦ (Y ) = a | ∃x x ⊆ Y ∧ x a Φ . The class Y is Φ-closed if ΓΦ (Y ) ⊆ Y . Note that Γ is monotone; i.e. for classes Y1 , Y2 , whenever Y1 ⊆ Y2 , then Γ(Y1 ) ⊆ Γ(Y2 ). We define the class inductively defined by Φ to be the smallest Φ-closed class. The main result about inductively defined classes states that this class, denoted I(Φ), always exists. Lemma 2.7. (CZF) (Class Inductive Definition Theorem) For any inductive definition Φ there is a smallest Φ-closed class I(Φ). Moreover, call a set G of ordered pairs good if (∗) ha, yi ∈ G ⇒ y ∈ ΓΦ (G∈a ). where G∈a = {y 0 | ∃x∈a hx, y 0 i ∈ G}. 8 The Formulae-as-Classes Interpretation of Constructive Set Theory Letting J = S {G | G is good} and J a = {x | ha, xi ∈ J}, it holds [ I(Φ) = J a, a and for each a, J a = ΓΦ ( [ J x ). x∈a J is uniquely determined by the above, and its stages J a will be denoted by ΓaΦ . Proof. [2], section 4.2 or [4], Theorem 5.1. 2.4 t u Maximal choice principles Lemma 2.8. (CZF) There exists a smallest ΠΣ-closed class, i.e. a smallest class Y such that the following holds: (i) n ∈ Y for all n ∈ N; (ii) ωQ∈ Y; P (iii) x∈A Bx ∈ Y and x∈A Bx ∈ Y whenever A ∈ Y and Bx ∈ Y for all x ∈ A. Likewise, there exists a smallest ΠΣI-closed class, i.e. a smallest class Y∗ , which, in addition to the closure conditions (i)–(iii) above, satisfies: (iv) I(A, a, b) ∈ Y∗ whenever A ∈ Y∗ and a, b ∈ A. Proof. The classes Y and Y∗ are inductively defined, and therefore exist by Lemma 2.7. To be precise, the respective inductive definitions of these classes are given by the classes Φ1 , . . . , Φ5 consisting of the following pairs: (i) (ii) n Φ1 , for all n ∈ N; ω Φ2 ; (iii) {dom(g)} ∪ ran(g) Q x∈A g(x) Φ3 , for all functions g with dom(g) = A; (iv) {dom(g)} ∪ ran(g) P x∈A g(x) Φ4 , for all functions g with dom(g) = A; (v) {A} I(A, a, b) Φ5 , if a, b ∈ A. (Clause (v) is only needed to define Y∗ .) 2 Lemma 2.9. (CZF + REA) There exists a least ΠΣW-closed class, i.e. a smallest class Yw that in addition to the clauses (i),(ii),(iii) of Lemma 2.8 satisfies: (vi) Wa∈A Ba ∈ Yw whenever A ∈ Yw and Bx ∈ Yw for all x ∈ A. ∗ Likewise, there exists a smallest ΠΣWI-closed class, i.e. a least class Yw , which, in addition to the closure conditions above, satisfies clause (iv) of Lemma 2.8. The Formulae-as-Classes Interpretation of Constructive Set Theory 9 Proof. Virtually the same as for Lemma 2.8. 2 Definition 2.10. The ΠΣ-generated sets are the sets in the smallest ΠΣ-closed class, i.e. Y. Similarly one defines the ΠΣI, ΠΣW and ΠΣWI-generated sets. A set P is a base if for any P -indexed family (Xa )a∈P of inhabited sets Xa , there exists a function f with domain P such that, for all a ∈ P , f (a) ∈ Xa . ΠΣ−AC is the statement that every ΠΣ-generated set is a base. Similarly one defines the axioms ΠΣI−AC, ΠΣWI−AC, and ΠΣW−AC. Lemma 2.11. (i) (CZF) For every A ∈ Y∗ there exists a B ∈ Y with a bijection h : B → A. ∗ there exists a B ∈ Yw with a bijection h : B → A. (ii) (CZF + REA) For every A ∈ Yw 2 Proof. See the lemma following Theorem 3.7 in [3]. Corollary 2.12. (i) (CZF) ΠΣ−AC and ΠΣI−AC are equivalent. (ii) (CZF + REA) ΠΣW−AC and ΠΣWI−AC are equivalent. Proof. ΠΣI−AC obviously implies ΠΣ−AC, since Y ⊆ Y∗ . To prove the converse, assume ΠΣ−AC, A ∈ Y∗ , and ∀x ∈ A∃yϕ(x, y), where ϕ is a formula of CZF. Take a B and a bijection h : A → B which exists by the previous Lemma; then ∀x∈B∃y ϕ(h−1 (x), y). By ΠΣ−AC, ∃f : B → V ∀x∈B ϕ(h−1 (x), f (x)). This yields ∀x∈A ϕ h−1 ◦ h(x), f ◦ h(x) so that ∀x∈A ϕ x, f ◦ h(x) . The proof of (ii) is similar. 3 2 Interpreting bounded formulae as sets Notation. For sets x and y, we define sup(x, y) as hx, yi. If α = sup(A, f ), where f is a function with domain A, we define ᾱ := A and α̃ := f . Definition 3.1. (CZF) Utilizing Lemma 2.7 we define a class V(Y∗ ) by the following rule: a ∈ Y∗ f : a → V(Y∗ ) , sup(a, f ) ∈ V(Y∗ ) (4) The class V(Y) is defined in the same vein by replacing Y∗ by Y in the foregoing clause. Definition 3.2. (CZF) . The (class) functions = : V(Y∗ ) × V(Y∗ ) → Y∗ and ∈˙ : V(Y∗ ) × V(Y∗ ) → Y∗ are defined by recursion as follows: YX . YX . . = (α̃(x), β̃(y)) × = (α̃(x), β̃(y)), (5) = (α, β) is x∈ᾱ y∈β̄ y∈β̄ x∈ᾱ X . ∈˙ (α, β) is = (α, β̃(y)). y∈β̄ (6) 10 The Formulae-as-Classes Interpretation of Constructive Set Theory Definition 3.3. (CZF + REA) ∗ In the same vein as in Definitions 3.1 and 3.2 we define a classes V(Yw ), V(Yw ), and (class) . ∗ ∗ ∗ ∗ ∗ ∗ ˙ by replacing Y∗ functions = : V(Yw ) × V(Yw ) → Yw and ∈ : V(Yw ) × V(Yw ) → Yw ∗ with Yw . . . Convention. We will write α = β and α ∈˙ β for = (α, β) and ∈˙ (α, β), respectively. Definition 3.4. (CZF) For any set A and class B we define: Q A → B as x∈A B. For any classes A and B we define: P A × B as Px∈A B, A + B as x∈2 Cx , where C0 = A and C1 = B. (7) (8) Definition 3.5. A V(Y∗ )-assignment is a mapping M : Var → V(Y∗ ), where Var is the set of variables of the language. M(a) will also be denoted by aM . If M is a V(Y∗ )-assignment, u is a variable, and d ∈ V(Y∗ ), we define a V(Y∗ )-assignment M(u|d) by M(v) if v is a variable other than u M(u|d)(v) = d if v is u. Sometimes, when an assignment M is fixed, we will omit the subscript M . Definition 3.6. (CZF) To any bounded formula θ ∈ L∈ and V(Y∗ )-assignment M we shall assign a set k θ k M . Since we have already used the symbol “→” for function spaces we shall denote the conditional by “⊃” and the bi-conditional by “iff ”. The recursive definition of k θ k M is given in the table below: θ ∈ L∈ k θ kM ⊥ 0 a=b . a M = bM a∈b aM ∈˙ bM θ0 ∧ θ1 k θ0 k M × k θ1 k M θ0 ∨ θ1 k θ0 k M + k θ1 k M θ0 ⊃ θ1 k θ0 k M → k θ1 k M Q x∈a k ψ k M(v|g aM (x)) P M x∈αM k ψ k M(v|g aM (x)) ∀v ∈a ψ ∃v ∈a ψ Lemma 3.7. (CZF) For every bounded θ ∈ L∈ and V(Y∗ )-assignment M, k θ k M ∈ Y∗ . Proof. This is proved by induction on θ using Lemma 2.8 and Definitions 3.2 and 3.4. 2 The Formulae-as-Classes Interpretation of Constructive Set Theory 11 Lemma 3.8. (CZF + REA) ∗ A V(Yw )-assignment is defined similarly as a V(Y∗ )-assignment in Definition 3.5. Like∗ )-assignment M we wise, as in Definition 3.6, to any bounded formula θ ∈ L∈ and V(Yw ∗ assign a set k θ k M . We then have, for every bounded θ ∈ L∈ and V(Yw )-assignment M, ∗ k θ k M ∈ Yw . Proof. This is proved as Lemma 3.7. 4 2 The formulae-as-classes interpretation for arbitrary formulae In order to reflect within CZF the formulae-as-classes interpretation for arbitrary set-theoretic formulae, we would need to represent large types ΠΣ-generated on top of V(Y∗ ). The language of CZF is not rich enough to do it in a straightforward way. To remedy this we introduce a notion of set recursive partial functions. 4.1 Extended E-recursive functions We would like to have unlimited application of sets to sets, i.e. we would like to assign a meaning to the symbol {a}(x) where a and x are sets. In generalized recursion theory this is known as E-recursion or set recursion (see, e.g., [17] or [20, Ch.X]). However, we shall introduce an extended notion of E-computability, christened E℘ -computability, rendering the function exp(a, b) = a b is computable as well, (where a b denotes the set of all functions from a to b). Moreover, the constant function with value ω is taken as an initial function in E℘ computability. From a classical standpoint, E℘ -computability is related to power recursion, where the power set operation is regarded to be an initial function. The latter notion has been studied by Moschovakis [14] and Moss [15]. There is a lot of leeway in setting up E℘ -recursion. The particular schemes we use are especially germane to our situation. Our construction will provide a specific set-theoretic model for the elementary theory of operations and numbers EON (see, e.g., [7, VI.2], or the theory APP as described in [21, Ch.9, Sect.3]). We utilize encoding of finite sequences of sets by the pairing function h , i. Definition 4.1. (CZF) First, we select distinct non-zero natural numbers k, s, p, p0 , p1 , sN , pN , dN , 0̄, ω̄, π, σ, pl, i, fa, and ab which will provide indices for special E℘ -recursive partial (class) functions. Inductively we shall define a class E of triples he, x, yi. Rather than “he, x, yi ∈ E”, we shall write “{e}(x) y”, and moreover, if n > 0, we shall use {e}(x1 , . . . , xn ) y to convey that {e}(x1 ) he, x1 i ∧ {he, x1 i}(x2 ) he, x1 , x2 i ∧ . . . ∧ {he, x1 , . . . , xn−1 i}(xn ) y. We shall say that {e}(x) is defined, written {e}(x) ↓, if {e}(x) y for some y. Let N := ω. 12 The Formulae-as-Classes Interpretation of Constructive Set Theory E is defined by the following clauses (inference steps): {k}(x, y) {s}(x, y, z) {p}(x, y) {p0 }(x) {p1 }(x) {sN }(n) {pN }(0) {pN }(n + 1) {dN }(n, m, x, y) {dN }(n, m, x, y) {0̄}(x) {ω̄}(x) {π}(x, g) {σ}(x, g) {pl}(x, y) {i}(x, y, z) {fa}(g, x) {ab}(e, a) x {{x}(z)}({y}(z)) hx, yi (x)0 (x)1 n + 1 if n ∈ N 0 n if n ∈ N x if n, m ∈ N and n = m y if n, m ∈ N and n 6= m 0 ω Q Pz∈x g(z) if g is a (set-)function with dom(g) = x z∈x g(z) if g is a (set-)function with dom(g) = x x+y I(x, y, z) g(x) if g is a (set-)function and x ∈ dom(g) h if h is a (set-)function with dom(h) = a and ∀x∈a {e}(x) h(x). Note that for {s}(x, y, z) to be defined it is required that {x}(z), {y}(z) and {{x}(z)}({y}(z)) be defined. The clause for s is thus to be read as a conjunction of the following clauses: {s}(x) hs, xi, {hs, xi}(y) hs, x, yi and, if there exist a, b, c such that {x}(z) a, {y}(z) b, {a}(b) c, then {hs, x, yi}(z) c. The constants fa and ab stand for function application and function abstraction, respectively. Lemma 4.2. (CZF) E is an inductively defined class and E is functional in that for all e, x, y, y 0 , he, x, yi ∈ E ∧ he, x, y 0 i ∈ E ⇒ y = y 0 . Proof. The inductive definition of E falls under the heading of Lemma 2.7. If {e}(x) y the uniqueness of y follows by induction on the stages (see Lemma 2.7) of that inductive definition. 2 Definition 4.3. Application terms are defined inductively as follows: (i) The constants k,s,p,p0 ,p1 ,sN ,pN ,dN ,0̄,ω̄,π,σ,pl,i,fa,ab singled out in Definition 4.1 are application terms; (ii) variables are application terms; (iii) if s and t are application terms then (st) is an application term. Definition 4.4. Application terms are easily formalized in CZF. However, rather than translating application terms into the set–theoretic language of CZF, we define the translation of expressions of the form t ' u, where t is an application term and u is a variable. The translation proceeds along the way that t was built up: [c ' u]∧ is c = u if c is a constant or a variable; [(st) ' u]∧ is ∃x∃y([s ' x]∧ ∧ [t ' y]∧ ∧ hx, y, ui ∈ E). The Formulae-as-Classes Interpretation of Constructive Set Theory 13 Abbreviations. For application terms s, t, t1 , . . . , tn we will use: s(t1 , . . . , tn ) st1 . . . tn t↓ (s ' t)∧ {x}(y) = z as a shortcut for as a shortcut for as a shortcut for as a shortcut for as a shortcut for ((. . . (st1 ) . . .)tn ); (parentheses associated to the left); s(t1 , . . . , tn ); ∃x(t ' x)∧ ; (t is defined) s↓ ∨ t↓ ⊃ ∃x((s ' x)∧ ∧ (t ' x)∧ ); hx, y, zi ∈ E. A closed application term is an application term that does not contain variables. If t is a closed application term and a1 , . . . , an , b are sets we use the abbreviation t(a1 , . . . , an ) ' b for ∃x1 . . . xn ∃y x1 = a1 ∧ . . . ∧ xn = an ∧ y = b ∧ [t(x1 , . . . , xn ) ' y]∧ . Definition 4.5. Every closed application term gives rise to a partial class function. A partial n-place (class) function Υ is said to be an E℘ -recursive partial function if there exists a closed application term tΥ such that dom(Υ) = {(a1 , . . . , an ) | tΥ (a1 , . . . , an ) ↓} and for all for all sets (a1 , . . . , an ) ∈ dom(Υ), tΥ (a1 , . . . , an ) ' Υ(a1 , . . . , an ). In the latter case, tΥ is said to be an index for Υ. If Υ1 , Υ2 are E℘ -recursive partial functions, then Υ1 (~a) ' Υ2 (~a) iff neither Υ1 (~a) nor Υ2 (~a) are defined, or Υ1 (~a) and Υ2 (~a) are defined and equal. The next two results can be proved in the theory APP and thus hold true in any applicative structure. Thence the particular applicative structure considered here satisfies the Abstraction Lemma and Recursion Theorem (see e.g. [10] or [7]). Lemma 4.6. ( Abstraction Lemma, cf. [7, VI.2.2]) For every application term t[x] there exists an application term λx.t[x] with FV(λx.t[x]) := {x1 , . . . , xn } ⊆ FV(t[x])\{x} such that the following holds: ∀x1 . . . ∀xn (λx.t[x]↓ ∧ ∀y (λx.t[x])y ' t[y]). Proof. (i)λx.x is skk; (ii) λx.t is kt for t a constant or a variable other than x; (iii) λx.uv is s(λx.u) (λx.v). t u Lemma 4.7. (Recursion Theorem, cf. [7, VI.2.7]) There exists a closed application term rec such that for any f , x, recf ↓ ∧ recf x ' f (recf )x. Proof. Take rec to be λf.tt, where t is λyλx.f (yy)x. t u Corollary 4.8. For any E℘ -recursive partial function Υ there exists a closed application term τf ix such that τf ix ↓ and for all ~a, Υ(ē, ~a) ' τf ix (~a), where τf ix ' ē. Moreover, τf ix can be effectively (e.g. primitive recursively) constructed from an index for Υ. 14 4.2 The Formulae-as-Classes Interpretation of Constructive Set Theory Arbitrary formulae Definition 4.9. (CZF) If B is a class and a, x are sets, we write {a}(x) ∈ B with the following meaning: {a}(x) ∈ B :⇔ ∃y({a}(x) = y ∧ y ∈ B). (9) Q If A is a class and Bx are classes for all x ∈ A, then we define a class e x∈A Bx in the Y following way: f Bx := {a | ∀x∈A({a}(x) ∈ Bx )}. (10) x∈A For any classes A and B we define a class A f → B by Y f Af → B := {a | ∀x∈A({a}(x) ∈ B)} = x∈A B. (11) Definition 4.10. (CZF) . For every formula θ ∈ L∈ and V(Y∗ )-assignment M, we define a class k θ k M . The definition is given by the table below: . θ ∈ L∈ k θ kM ⊥ 0 a=b . a M = bM a∈b aM ∈˙ bM θ0 ∧ θ1 k θ0 k M × k θ1 k M θ0 ∨ θ1 k θ0 k M + k θ1 k M θ0 ⊃ θ1 k θ0 k M → k θ1 k M . . . . . . θ0 k M θ0 ⊃ θ1 . θ1 k M →k f ∀v ∈a ψ k Q ∃v ∈a ψ P ∀vψ Q . e x∈V(Y ∗ ) k ψ k M(v|x) P . x∈V(Y ∗ ) k ψ k M(v|x) ∃vψ if θ0 is bounded if θ0 is not bounded . x∈aM k ψ k M(v|g aM (x)) . x∈aM k ψ k M(v|g aM (x)) Lemma 4.11. (CZF) . For every bounded formula θ and a V(Y∗ )-assignment M, k θ k M = k θ k M . Proof. This follows by induction on θ by comparing Definitions 3.6 and 4.10. 2 Definition 4.12. If θ(u1 , . . . , ur ) is a formula of L∈ all of whose free variables are among u1 , . . . , ur , and α1 , . . . , αr ∈ V(Y∗ ), we shall use the shorthand k θ(α1 , . . . , αr ) k rather than . k θ k M , whenever M is an assignment satisfying M(ui ) = αi for 1 ≤ i ≤ r. In the special case when θ is a sentence we will simply write k θ k. We will also the use the following abbreviations: e θ(α1 , . . . , αr ) V(Y∗ ) |= θ(α1 , . . . , αr ) |=∗ θ(α1 , . . . , αr ) iff iff iff e ∈ k θ(α1 , . . . , αr ) k e θ(α1 , . . . , αr ) for some e V(Y∗ ) |= θ(α1 , . . . , αr ). For a set-theoretic formula θ(~u) we say that θ(α1 , . . . , αr ) is validated in V(Y∗ ) if we have produced a closed application term t such that t(~ α) θ(~ α) holds for all α ~ ∈ V(Y∗ ). The Formulae-as-Classes Interpretation of Constructive Set Theory 4.3 15 The formulae-as-classes interpretation for CZF The objective of the remainder of this section is to show the following interpretation. Theorem 4.13. Let θ(u1 , . . . , ur ) be a formula of L∈ all of whose free variables are among u1 , . . . , ur . If CZF + RDC + ΠΣ−AC ` θ(u1 , . . . , ur ), then one can effectively construct an index of an E℘ -recursive partial function g such that CZFExp ` ∀α1 , . . . , αr ∈ V(Y∗ ) g(α1 , . . . , αr ) ∈ k θ(α1 , . . . , αr ) k, where CZFExp denotes the modification of CZF with Exponentiation in place of Subset Collection. Proof. This will follow from 4.16, 4.17, 4.26 and 4.31 below. t u The proof of 4.13 is rather long and requires close attention to the definition of indices of E℘ -recursive functions. The details of an encoding are fascinating to work out and boring to read. The author wrote the present section for his own benefit and his feelings will not be hurt if the reader chooses to skip some of it. Lemma 4.14. For every bounded θ(u1 , . . . , ur ) of L∈ all of whose free variables are among u1 , . . . , ur one can effectively construct an application term tθ such that CZFExp ` ∀α1 , . . . , αr ∈ V(Y∗ ) tθ (α1 , . . . , αr ) ' k θ(α1 , . . . , αr ) k. Proof. We proceed by induction on the build-up of θ. The atomic cases amount to showing ˙ that the functions α, β 7→ =(α, ˙ β) and α, β 7→ ∈(α, β) of Definition 3.2 are E℘ -recursive ∗ ∗ partial functions defined on V(Y ) × V(Y ). 1. Let θ(u, v) be the atomic formula u = v. We define an application term ` by `(e, α, β) ' π ᾱ, ab ᾱ, λx.σ(β̄, ab(β̄, λy.e(α̃(x), β̃(y)))) ' π p0 α, ab p0 α, λx.σ(p0 β, ab(p0 β, λy.e(fa(p1 α, x), fa(p1 β, y))))) . By the recursion theorem 4.7, we find an application term e such that e(α, β) ' σ `(e, α, β), ab `(e, α, β), λz.`(e, β, α) . Now put tu=v := e. Let be the well-founded ordering on V(Y∗ ) × V(Y∗ ) defined by: hα, βi hγ, δi iff α = γ̃(x) and β = δ̃(y) for some x ∈ γ̄ and y ∈ δ̄. In view of Definition 3.2, one shows by induction on that for all α, β ∈ V(Y∗ ), tu=v (α, β) ↓ and tu=v (α, β) ' =(α, ˙ β), i.e. tu=v (α, β) ' k α = β k. 2. For the other type of atomic formula, where θ(u, v) is u ∈ v, we put tu∈v := λxy.σ p0 y, ab p0 y, λz.tu=v (x, fa(p1 y, z)) , ˙ so that tu∈v (α, β) ' ∈(α, β), whence tu∈v (α, β) ' k α ∈ β k for all α, β ∈ V(Y∗ ). 3. If θ(~u) is θ0 (~u) ∧ θ1 (~u), put tθ(~u) := λ~x.σ tθ0 (~u) (~x), ab tθ0 (~u) (~x), λz.(tθ1 (~u) (~x)) . 16 The Formulae-as-Classes Interpretation of Constructive Set Theory 4. If θ(~u) is θ0 (~u) ∨ θ1 (~u), put tθ(~u) := λ~x.pl tθ0 (~u) (~x), tθ1 (~u) (~x) . 5. If θ(~u) is θ0 (~u) ⊃ θ1 (~u), put tθ(~u) := λ~x.π tθ0 (~u) (~x), ab tθ0 (~u) (~x), λz.(tθ1 (~u) (~x)) . 6. If θ(v, ~u) is ∀w∈v θ0 (w, v, ~u), put tθ(v,~u) := λy~x.π p0 y, ab p0 y, λz.tθ0 (w,v,~u) (z, y, ~x) . 7. If θ(v, ~u) is ∃w∈v θ0 (w, v, ~u), put tθ(v,~u) := λy~x.σ p0 y, ab p0 y, λz.tθ0 (w,v,~u) (z, y, ~x) . 2 Lemma 4.15. There are closed application terms idr , ids , idt , idt1 , idt2 such that for all α, β, γ ∈ V(Y∗ ), idr (α) ids (α, β) idt (α, β, γ) idt (α, β, γ) α = α. α = β ⊃ β = α. α = β ∧ β = γ ⊃ α = γ. α = β ∧ β = γ ⊃ α = γ. idt1 (α, β, γ) α = β ∧ β∈γ ⊃ α∈γ. idt2 (α, β, γ) α = β ∧ γ∈α ⊃ γ∈β. Proof. What do we need to construct idr ? Suppose we have e(α̃(j)) ∈ k α̃(j) = α̃(j) k for all j ∈ ᾱ. Then, letting f with domain ᾱ be defined by f (j) ' hj, e(α̃(j))i, we get hf, f i ∈ k α = α k (see Definition 3.2), thence we have p ab p0 α, λx.p(x, e(fa(p1 α, x))) , ab p0 α, λx.p(x, e(fa(p1 α, x))) ∈ k α = α k. Now choose an index d by the recursion theorem so that, for all α, dα ' p ab p0 α, λx.p(x, d(fa(p1 α, x))) , ab p0 α, λx.p(x, d(fa(p1 α, x))) and put idr := d. By ∈-induction on α one easily verifies that idr α ↓ and that idr has the desired property. Intuitively, ids is the application term that interchanges the left and right member of any pair. However, a witness for a bounded conditional has to be a function. This is achieved by letting ids := λαβ.ab k α = β k, λx.p(p1 x, p0 x) := λyz.ab(tu=w (y, z), λx.p p1 x, p0 x) , The Formulae-as-Classes Interpretation of Constructive Set Theory 17 noting that the latter is an application term owing to Lemma 4.14. To construct idt , suppose e ∈ k α = β ∧ β = γ k. Then p0 e ∈ k α = β k and p1 e ∈ k β = γ k. Thus p0 e ' hf, gi for functions f, g with domain ᾱ and β̄, respectively. Likewise, p1 e ' hf 0 , g 0 i for functions f 0 , g 0 with domain β̄ and γ̄, respectively. In view of the definition of k α = γ k, one easily sees that hf 0 ◦ f, g ◦ g 0 i ∈ k α = γ k. We have to show that hf 0 ◦ f, g ◦ g 0 i can be computed E℘ -recursively from e, α, β, γ. We have ab p0 α, λw.(λu.fa(f 0 , u)) (λv.fa(f, v))(w) ' f0 ◦ f ab p0 γ, λw.(λu.fa(g, u)) (λv.fa(g 0 , v))(w) ' g ◦ g0, thus letting τ1 := λxyz.ab p0 x, λw.(λu.fa(z, u)) (λv.fa(y, v))(w) , τ2 := λx0 y 0 z 0 .ab p0 x0 λw.(λu.fa(y 0 , u)) (λv.fa(z 0 , v))(w) , we get τ1 αf f 0 ' f 0 ◦ f and τ2 γgg 0 ' g ◦ g 0 , so that p τ1 α(p00 e)(p10 e) τ2 γ(p01 e)(p11 e) ' hf 0 ◦ f, g ◦ g 0 i, where pi,j := λv.pj (pi v). Thus letting idt := λαβγ.ab k α = β ∧ β = γ k, λyp τ1 α(p00 y)(p10 y) τ2 γ(p01 y)(p11 y) := λz1 z2 z3 .ab tθ(u1 ,u2 ,u3 ) (z1 , z2 , z3 ), λyp τ1 z1 (p00 y)(p10 y) τ2 z3 (p01 y)(p11 y) , where “θ(u1 , u2 , u3 )” stands for “u1 = u2 ∧ u2 = u3 ”, we get idt (α, β, γ) α = β ∧ β = γ ⊃ α = γ. Next we show how to construct idt1 . To this end suppose d0 ∈ k α = β k and d1 ∈ k β∈γ k. Then d1 = hi, e0 i for some i, e0 with i∈γ̄ and e0 β = γ̃(i). Hence we get idt α, β, γ̃(i), hd, e0 i α = γ̃(i), which yields hi, idt α, β, γ̃(i), hd, e0 i i α∈γ. In view of previous constructions it is therefore clear that we can cook up an application term t∗ such that whenever d α = β ∧ β∈γ then t∗ (α, β, γ, d) α∈γ. Whence we can put idt1 := λαβγ.ab k α = β ∧ β∈γ k, λz.t∗ (α, β, γ, z) . For idt2 suppose that d0 ∈ k α = β k and d1 ∈ k γ∈α k. Then d1 = hi, e0 i for some i, e0 with i∈ᾱ and e0 γ = α̃(i). Moreover, d0 = hf, gi for functions f, g, where the domain of f is ᾱ, and f (i) = hj, ci for some j ∈ β̄ and c α̃(i) = β̃(j). It follows that idt γ, α̃(i), β̃(j), he0 , ci γ = β̃(j), and hence hj, idt γ, α̃(i), β̃(j), he0 , ci i γ∈β. It is evident, by previous application term constructions that hj, idt γ, α̃(i), β̃(j), he0 , ci i can be obtained E℘ -recursively from d0 , d1 , α, β, γ. 2 18 The Formulae-as-Classes Interpretation of Constructive Set Theory Lemma 4.16. If the formula θ(~u) is derivable in intuitionistic predicate logic with identity, then one can effectively construct an application term t from the deduction such that t(~ α) θ(~ α) holds for all α ~ ∈ V(Y∗ ). We have already shown this for the axioms pertaining to equality. We illustrate the ideas for logical axioms by carrying out a few examples. If ϕ(~u) and ψ(~u) are unbounded formulas, then one easily checks that k ϕ(~ α) ⊃ (ψ(~ α) ⊃ ϕ(~ α)), s (ϕ(~ α) ⊃ (ψ(~ α) ⊃ χ(~ α))) ⊃ (ϕ(~ α) ⊃ ψ(~ α)) ⊃ (ϕ(~ α) ⊃ χ(~ α)) . (12) (13) In fact, this justifies the combinators s and k. Combinatory completeness of these two combinators is equivalent to the fact that the deductive closure under modus ponens of (12) and (13) is the full set of theorems of propositional implicational intuitionistic logic. In case that ϕ or ψ are bounded we need to make crucial changes to the above. In case that both ϕ and ψ are bounded, we get that ab k ϕ(~ α) k, λx.ab(k ψ(~ α) k, λy.kxy) ϕ(~ α) ⊃ (ψ(~ α) ⊃ ϕ(~ α)). It is pivotal to note here that according to Lemma 4.14, both k ϕ(~ α) k and α) k are E℘ k ψ(~ α) k, λx.ab(k ψ(~ α) k, λy.kxy) is E℘ -computable computable from α ~ , yielding that ab k ϕ(~ from α ~. In the case that ϕ is bounded but ψ is unbounded we get ab k ϕ(~ α) k, λxy.kxy) ϕ(~ α) ⊃ (ψ(~ α) ⊃ ϕ(~ α)). In the case that ϕ is unbounded but ψ is bounded we get λx.ab(k ψ(~ α) k, λy.kxy) ϕ(~ α) ⊃ (ψ(~ α) ⊃ ϕ(~ α)). By the foregoing it should also be obvious what modifications have to be made to (13) if one of the formulas ϕ or ψ is bounded. Assuming all formulas are unbounded, one can easily check that: λxy.pxy ϕ(~ α) ⊃ (ψ(~ α) ⊃ ϕ(~ α) ∧ ψ(~ α)), λx.x ∀y ∀xθ(x, α ~ ) ⊃ θ(y, α ~) λx.p0̄x ϕ(~ α) ⊃ ϕ(~ α) ∨ ψ(~ α) and that the term λxyz.dN (y(p1 x))(z(p1 ))(p0 x) witnesses ∨-elimination, that is to say, the axiom scheme ϕ ∨ ψ ⊃ (ϕ ⊃ χ) ⊃ [(ψ ⊃ χ) ⊃ χ] . Minor modifications yield witnessing terms if one or more of the formulas are bounded. The Formulae-as-Classes Interpretation of Constructive Set Theory 19 From Lemma 4.15 in conjunction with the usual laws of intuitionistic connectives and quantifiers one can deduce that ∀x[θ(x, ~y ) ⊃ ∀z(z = x ⊃ θ(z, ~y )] and hence one can effectively construct a term t=,θ such that t=,θ ∀x[θ(x, α ~ ) ⊃ ∀z(z = x ⊃ θ(z, α ~ )]. (14) Since the quantifier logic employed here is slightly unusual in that bounded quantifiers are treated as quantifiers in their own right, we should check that the usual logical connections obtain between bounded and unbounded quantifiers. The claim is that one can construct terms t∀,ϕ and t∃,ϕ such that t∀,ϕ (β, α ~ ) ∀x∈β ϕ(x, β, α ~ ) iff ∀x[x∈β ⊃ ϕ(x, β, α ~ )] t∃,ϕ (β, α ~ ) ∃x∈β ϕ(x, β, α ~ ) iff ∃x[x∈β ∧ ϕ(x, β, α ~ )]. (15) (16) To prove (15) first suppose that f ∀x∈β ϕ(x, β, α ~ ). Then for all i ∈ β̄, f (i) ϕ(β̃(i), β, α ~ ). ∗ Now suppose in addition that δ ∈ V(Y ) and d δ ∈ β. Then d = hj, d1 i with j ∈ β̄ and d1 δ = β̃(i). Utilizing (14), we can design an application term τ such that τ (f, d, j, β̃(j), α ~ , β, δ) ϕ(δ, β, α ~ ). Moreover, since j and β̃(j) are actually computable from d and β, there is a closed application term τ 0 such that τ 0 (f, d, α ~ , β, δ) ϕ(δ, β, α ~ ). (17) As a consequence of (17), we get ab k δ∈β k, λy.τ 0 (f, y, α ~ , β, δ) δ∈β ⊃ ϕ(δ, β, α ~ ). (18) λδ.ab k δ∈β k, λy.τ 0 (f, y, α ~ , β, δ) ∀x[x∈β ⊃ ϕ(x, β, α ~ )]. (19) Thus we have For the other direction of (15), suppose e ∀x[x∈β ⊃ ϕ(x, β, α ~ )]. (20) We need to effectively construct a function f with domain β̄ such that f (i) ϕ(β̃(i), β, α ~ ). Let i∈β̄. By Lemma 4.15, we have idr (β̃(i)) ∈ k β̃(i) = β̃(i) k, thus hi, idr (β̃(i)i β̃(i) ∈ β, so that by (20), e(p(i, idr (β̃(i))) ϕ(β̃(i), β, α ~ ). Letting f := ab β̄, λx.e(p(x, idr (β̃(x))) , we get f ∀x∈β ϕ(x, β, α ~ ). Also, by now it is plain how to design an application term which shows that f is E℘ -computable from e, β. The proof of (16) is very similar to (15). 2 20 The Formulae-as-Classes Interpretation of Constructive Set Theory Lemma 4.17. For each axiom θ(~u) of CZF one can effectively construct an application term t from the deduction such that t(~ α) θ(~ α) holds for all α ~ ∈ V(Y∗ ). Proof. 1. Extensionality: Suppose e ∀x [(x ∈ α ⊃ x ∈ β) ∧ (x ∈ β ⊃ x ∈ α)]. By lemma 4.16, in particular (15), there is an application term tex such that tex (α, β, e) ∀x ∈ α x ∈ β ∧ ∀x ∈ β x ∈ α. The latter actually amounts to tex (α, β, e) α = β, so that λx.tex (α, β, x) ∀x [(x ∈ α ⊃ x ∈ β) ∧ (x ∈ β → x ∈ α)] ⊃ α = β. 2. Pair: Let α, β ∈ V(Y∗ ). Put γ := sup(2, f ), where dom(f ) = 2, f (0) = α, and f (1) = β. As 2 ∈ Y∗ , we get γ ∈ V(Y∗ ). Also γ is computable from α and β as 0̄α ' 0, sN 0 ' 1, sN 1 ' 2, ab(2, λn.dN (0, n, α, β)) ' f and p2f ' γ. Moreover, one easily constructs a term tp such that tp (α, β) ∀x(x ∈ γ iff [x = α ∨ x = β]) and hence p(γ, tp (α, β)) ∃y∀x(x ∈ y iff [x = α ∨ x = β]), from which we can distill a term witnessing the pairing axiom. Union: Let γ := sup(a, f ) = paf a := σ ᾱ, ab(ᾱ, λz.α̃(z)) ^ f := ab a, λx.(α̃(p 0 x))(p1 (x)) One readily checks that a ∈ Y∗ and f : a → V(Y∗ ), thus γ ∈ V(Y∗ ). Also, it is clear that γ is E℘ -computable from α. We leave it to the reader to construct a term t∪ such that t∪ (α) ∀v[v ∈ γ iff ∃u ∈ α v ∈ u], so that p(γ, t∪ (α)) ∃y∀v[v ∈ y iff ∃u ∈ α v ∈ u]. Bounded Separation: Let θ(u, v, w) ~ be a bounded formula and α, β~ ∈ V(Y∗ ). Let A := ~ k and g : A → V(Y∗ ) be defined by g(z) := α̃(p0 z). Put γ := k ∃x ∈ α, θ(x, α, β) sup(A, g). Note that g = ab(A, λz.α̃(p0 z)). We have A ∈ Y∗ by Lemma 3.7 so that ~ We also γ ∈ V(Y∗ ). By Lemma 4.14, A and g and hence γ are E℘ -computable from α, β. have hi, xi ∈ k η ∈ γ k iff iff ~ k i ∈ A ∧ x ∈ k η = γ̃(i) k ∧ p0 i ∈ k θ(γ̃(i), α, β) ~ ∈ k θ(η, α, β) ~ k i ∈ A ∧ x ∈ k η = γ̃(i) k ∧ t0 (i, γ, α, β) for some term t0 obtainable from (14). As a result we can compose a term ts such that ~ ~ . p γ, ts (α, β) ∀u u ∈ γ iff [u ∈ α ∧ θ(u, α, β)] The Formulae-as-Classes Interpretation of Constructive Set Theory 21 Strong Collection: Suppose ~ f ∀u ∈ α ∃v θ(u, v, α, β). Then f is a function with domain ᾱ such that, for all i ∈ ᾱ, p1 (f (i)) θ (α̃(i), p0 (f (i)), β~ . Let g be the result of ab ᾱ, λx.p0 (f (x)) and put γ = p(ᾱ, g). By definition, γ is E℘ computable from α and f . Furthermore, one readily constructs a term t1 satisfying ~ ∧ ∀v ∈ γ ∃u ∈ α θ(u, v, β), ~ t1 (α, f ) ∀u ∈ α ∃v ∈ γ θ(u, v, β) from which we can glean a term t++ satisfying ~ ∀u ∈ α ∃v θ(u, v, α, β) ~ ⊃ ∃wθ0 (α, w, β), ~ t++ (α, β) ~ denotes the formula ∀u ∈ α ∃v ∈ w θ(u, v, β) ~ ∧ ∀v ∈ w ∃u ∈ α θ(u, v, β). ~ where θ0 (α, w, β) Subset Collection: Let α, β ∈ V(Y∗ ) and define A := (ᾱ → β̄) and a function h with domain A by h(z) := sup ᾱ, ab ᾱ, λx.β̃(z(x)) . Put γ := sup(A, h). It is easy to see that γ ∈ V(Y∗ ) and that γ is E℘ -computable from α and β. Now assume that ~ f ∀u ∈ α ∃v ∈ β ϕ(u, v, α, β, ξ). ~ Then we have Let θ(u, v) stand for ϕ(u, v, α, β, ξ). ∀i ∈ ᾱ p0 (f (i)) ∈ β̄ ∧ p1 (f (i)) θ(α̃(i), β̃(p0 (f (i)))) . Thus we have g ∈ A, where g is the function with domain ᾱ and g(i) := p0 (f (i)). Let δ := sup ᾱ, ab ᾱ, λx.β̃(g(x)) . Then δ ∈ V(Y∗ ) and δ is clearly E℘ -computable from α and f . Moreover, δ = h(g) so that p(g, ids (δ)) δ ∈ γ. (21) Also ᾱ = δ̄ and ∀i ∈ ᾱ p1 (f (i)) θ(α̃(i), δ̃(i)). The latter yields p ᾱ, ab ᾱ, λx.p(x, p1 (f (x))) ∀u ∈ α ∃v ∈ δ θ(u, v) p ᾱ, ab ᾱ, λx.p(x, p1 (f (x))) ∀v ∈ δ ∃u ∈ α θ(u, v). In view of (21) and (22), we can construct a term tc such that tc (α, β, f ) ∃w ∈ γ ∀u ∈ α ∃v ∈ w θ(u, v) ∧ ∀v ∈ u ∃u ∈ α θ(u, v) . (22) 22 The Formulae-as-Classes Interpretation of Constructive Set Theory Thence we can construct a term tssc such that ~ ∃z ∀u ∈ α ∃v ∈ β θ(u, v) ⊃ tssc (α, β, ξ) ∃w ∈ γ ∀u ∈ α ∃v ∈ w θ(u, v) ∧ ∀v ∈ u ∃u ∈ α θ(u, v) , verifying Subset Collection. ∈-Induction: By the recursion theorem we can effectively construct an index of an E℘ recursive partial function h satisfying h(e, α) ' (eα) ab(ᾱ, λx.h(e, x)) . Now suppose e ∀u[∀v ∈ u θ(v) ⊃ θ(u)]. By induction on α, we shall prove that h(e, α) θ(α). (23) Toward this end suppose that for all i ∈ ᾱ, h(e, α) θ(α̃(i)). Then we have ab ᾱ, λx.h(e, x) ∀v ∈ α θ(v) so that (eα) ab ᾱ, λx.h(e, x) θ(α), yielding (23). Finally from (23) we arrive at λyz.h(y, z) ∀u[∀v ∈ u θ(v) ⊃ θ(u)] ⊃ ∀uθ(u). Infinity: First note that the formula 0 ∈ y ∧ ∀w ∈ y w + 1 ∈ y written out in full detail reads (∃z ∈ y ∀u ∈ z ⊥) ∧ ∀w ∈ y ∃v ∈ y∀u ∈ v [u ∈ w ∨ u = w]. Using the recursion theorem, one effectively constructs an index ê such that êx ' sup x, ab x, λy.dN pN x, y, sup(pN x, ab(pN x, λz.êz)), êy . By induction on n ∈ ω, we show êk ↓ and êk ∈ V(Y∗ ) for all k ≤ n. Note that n ∈ Y∗ for all n ∈ ω. Clearly we have ê0 ↓ and ê0 ∈ V(Y∗ ). Assume that êk ↓ and êk ∈ V(Y∗ ) for all k ≤ n. As pN (n + 1) ' n we then have ab(pN (n + 1), λz.êz)) ↓, which yields dN pN (n + 1), m, sup(pN (n + 1), ab(pN (n + 1), λz.êz)), êm ↓ for all m ≤ n. The latter yields ê(n + 1) ↓ and also ê(n + 1) ∈ V(Y∗ ). By the above we may define a function hω with domain ω such that ên ' hω (n). As ω ∈ V(Y∗ ) we get ω ∗ := sup(ω, hω ) ∈ V(Y∗ ). (24) By construction, ω ∗ is E℘ -computable. Note that hω (n + 1) ' sup n + 1, ab n + 1, λy.dN n, y, sup(n, hω n), hω (y)) , where hω n denotes the restriction of hω to n. Thus, inductively we have hω (0) = 0, hω (n + 1) = n + 1, and hω (n) = sup(n, hω n) (25) The Formulae-as-Classes Interpretation of Constructive Set Theory 23 for all n ∈ ω, so that ^ ∀i ∈ hω (n) (h ω (n))(i) = hω (i). We then get ^ ^ ∀i ∈ hω (n + 1) (hω^ (n + 1))(i) = (h ω (n))(i) ∨ (hω (n + 1))(i) = hω (n) . Defining a function fn by dom(f ) = n + 1 and ^ fn (i) := dN n, i, h0, hi, ids ((h ω (n))(i))ii, h1, ids (hω (n))i , we obtain fn ∀u ∈ hω (n + 1) u ∈ hω (n) ∨ u = hω (n) , that is fn hω (n + 1) = hω (n) + 1 (26) in short hand. As a result, hn + 1, fn i ∃v ∈ ω ∗ ∀u ∈ v u ∈ hω (n) ∨ u = hω (n) and consequently f ∗ ∀w ∈ ω ∗ ∃v ∈ ω ∗ ∀u ∈ v u ∈ w ∨ u = w , (27) where f ∗ is the function with domain ω and f ∗ (n) = hn+1, fn i. We also have ab(0, λx.x) ∀u ∈ hω (0) ⊥, and whence h0, ab(0, λx.x)i ∃z ∈ ω ∗ ∀u ∈ z ⊥. (28) Since f ∗ is E℘ -computable we can combine (27) and (28) to extract a term t∗0 such that t∗0 ∃z ∈ ω ∗ ∀u ∈ z ⊥ ∧ ∀w ∈ ω ∗ ∃v ∈ ω ∗ ∀u ∈ v u ∈ w ∨ u = w , in other words t∗0 0 ∈ ω ∗ ∧ ∀w ∈ ω ∗ w + 1 ∈ ω ∗ . (29) Let θ(α) abbreviate the formula ∃z ∈ α ∀u ∈ z ⊥ ∧ ∀w ∈ α ∃v ∈ α∀u ∈ v u ∈ w ∨ u = w and suppose e θ(α), (30) for some α ∈ V(Y∗ ). In view of (26) one then constructs a term tω such that for all n ∈ ω, tω (n, α, e) hω (n) ∈ α so that ab ω, λx.tω (x, α, e) ∀u ∈ ω ∗ u ∈ α. Hence λyz.ab ω, λx.tω (x, y, z) ∀a θ(a) ⊃ ω ∗ ⊆ a . (31) Using the witnessing terms from (29) and (31) and the fact that ω ∗ is E℘ -computable we then get a term t∗ such that t∗ ∃y θ(y) ∧ ∀a θ(a) ⊃ y ⊆ a . t u 24 The Formulae-as-Classes Interpretation of Constructive Set Theory Remark 4.18. In his interpretation of set theory in Martin-Löf type theory (cf. [1, 2, 3]), Aczel frequently invokes the axiom of choice in type theory as for instance in the proofs of the validity of Strong Collection and Subset Collection. To the author’s mind, this casts a shroud of mystery over these proofs. The axiom of choice is usually invoked, as it were, to pull a function out of thin air, but due to the propositions-as-types doctrine of Martin-Löf’s type theory, the axiom of choice is deducible therein since a judgement that a proposition of the form ∀x : A ∃y : B ϕ(x, y) holds true provides all the information needed to construct a function f : A → B such that ∀x : A ϕ(x, f (x)). The formulae-as-classes interpretation via E℘ -recursive partial functions bears out this fact very lucidly. The latter remarks are even more appropriate to the proofs of the subsection to come. 4.4 Choice principles in V(Y∗ ) In this subsection we show that V(Y∗ ) validates RDC and ΠΣI−AC. We will be retracing the ground of [2] §5–6. Definition 4.19. Let OP(x, y) = z be an abbreviation for the set-theoretic formula expressing that z is the ordered pair of x and y. By Lemma 4.17 there exist E℘ -recursive functions α, β 7→ hα, βiV and op b such that for all α, β ∈ V(Y∗ ), op(α, b β) ↓ and hα, βiV ∈ V(Y∗ ) and op(α, b β) OP(α, β) = hα, βiV . (32) If A ∈ Y∗ and f is an E℘ -recursive function which is total on A then we shall use the notation sup i ∈ A f (i) := sup A, ab A, λx.f (x) . For α, β ∈ V(Y∗ ) let S(α, β) := sup i ∈ ᾱ hα̃(i), β̃(i)iV . (33) Note that S is an E℘ -partial recursive function such that if ᾱ = β̄ then S(α, β) ↓ and, moreover, S(α, β) ∈ V(Y∗ ). Lemma 4.20. There are E℘ -recursive partial functions g0 , g1 , g2 such that the following hold: (i) If α, β ∈ V(Y∗ ) with ᾱ = β̄, then g0 (α, β) S(α, β) is a relation with domain α and range β. (ii) If α, γ ∈ V(Y∗ ) such that e γ is a relation with domain α then g1 (e, α, γ) ∈ V(Y∗ ) and, letting δ := g1 (e, α, γ), we have δ̄ = ᾱ and g2 (e, α, γ) S(α, δ) ⊆ γ. The Formulae-as-Classes Interpretation of Constructive Set Theory 25 Proof. (i): Let α, β ∈ V(Y∗ ) such that ᾱ = β̄ and let γ = S(α, β). Also let A = ᾱ. Then, by choosing x = y = u, ∀u ∈ A ∃x ∈ A ∃y ∈ A |=∗ γ̃ = hα, βiV , so that h0 (α, β) ∀u ∈ γ ∃x ∈ α ∃y ∈ β OP(x, y) = u, (34) where h0 stands for the obvious E℘ -recursive partial function. Also, by choosing u = y = x, we get h1 (α, β) ∀x ∈ α ∃u ∈ γ ∃y ∈ βOP(x, y) = u, (35) where h1 stands for the obvious E℘ -recursive partial function. As the the set-theoretic statements in (34) and (35) (after the “” symbol) provably in CZF entail that S(α, β) is a relation with domain α and range β, we can construct the desired function g0 from h0 and h1 . (ii): Suppose that e γ is a relation with domain α. Then we obtain E℘ -recursive partial functions `0 , `1 such that ∀i ∈ A `0 (α, i, γ, e) ∃z ∈ γ OP(α̃(i), δ) = z, where δ = `1 (α, i, γ, e). Now let f : A → V(Y∗ ) be defined by ab A, λv.`1 (α, v, γ, e) and put β = sup(A, f ). Then β ∈ V(Y∗ ) and β̄ = ᾱ. Clearly, β can be computed from α, γ, e. From the above we construct g2 such that g2 (e, α, γ) S(α, δ) ⊆ γ. 2 Definition 4.21. α ∈ V(Y∗ ) is injectively presented if for all i, j ∈ ᾱ, whenever e α̃(i) = α̃(j) for some e, then i = j. Lemma 4.22. There are E℘ -recursive partial functions `∗0 , . . . , `∗5 such that for any injectively presented α ∈ V(Y∗ ) the following hold: (i) If β ∈ V(Y∗ ), such that β̄ = ᾱ and δ ∈ V(Y∗ ) then for all i ∈ ᾱ, `∗0 (α, i, β, δ) ∃z ∈ S(α, β) OP(α̃(i), δ) = z iff δ = β̃(i) . (ii) If γ ∈ V(Y∗ ) and e γ is a function with domain α then `∗1 (α, γ, e) γ = S(α, β), with β = `∗2 (α, γ, e) ∈ V(Y∗ ) and β̄ = ᾱ. Conversely, if β̄ = ᾱ and e0 γ = S(α, β), then `∗3 (α, β, γ, e0 ) γ is a function with domain α. 26 The Formulae-as-Classes Interpretation of Constructive Set Theory (iii) If β1 , β2 ∈ V(Y∗ ) such that β1 = β2 = ᾱ, then e S(α, β1 ) = S(α, β2 ) implies ∀i ∈ ᾱ `∗4 (α, i, β1 , β2 ) βe1 (i) = βe2 (i), and conversely, if ∀i ∈ ᾱ e0 i βe1 (i) = βe2 (i), then `∗5 (α, β1 , β2 , e0 ) S(α, β1 ) = S(α, β2 ). Proof. Let α be injectively presented. (i): Let β ∈ V(Y∗ ) such that β̄ = ᾱ, δ ∈ V(Y∗ ) and i ∈ ᾱ. Note that S(α, β) = ᾱ. Let µ := S(α, β). First assume e ∃z ∈ µ OP(α̃(i), δ) = z. Then p0 e = j for some j ∈ ᾱ and p1 e OP(α̃(i), δ) = γ̃(j), so that p1 e OP(α̃(i), δ) = hα̃(j), β̃(j)iV . The latter yields hr (α, β, δ, i, e) α̃(i) = α̃(j) ∧ δ = β̃(j) for some E℘ -recursive partial function hr . Since α is injectively presented the latter implies i = j, and hence p1 (hr (α, β, δ, i, e)) δ = β̃(i). Conversely assume e0 δ = β̃(i). Then p i, p ids (α̃(i)) α̃(i) = α̃(i) ∧ δ = β̃(i). The latter yields h+ (α, β, δ, i, e0 ) OP(α̃(i), δ) = hα̃(i), β̃(i)iV , for some E℘ -recursive partial function h+ , and hence p i, h+ (α, β, δ, i, e0 ) ∃z ∈ µ OP(α̃(i), δ) = z. It is now obvious how to distill the desired function `∗0 from hr and h+ . Let γ ∈ V(Y∗ ). If e γ is a function with domain α, then by 4.20 (ii), g1 (e, α, γ) ∈ V(Y∗ ) and, letting δ := g1 (e, α, γ), we have δ̄ = ᾱ and g2 (e, α, γ) S(α, δ) ⊆ γ. It is now obvious how to define `∗1 and `∗2 . For the converse let e0 γ = S(α, β), where β ∈ V(Y∗ ) such that β̄ = ᾱ. By 4.20 g0 (α, β) S(α, β) is a relation with domain α and range β. Also, for i, j ∈ ᾱ, if |=∗ hα̃(i), β̃(j)iV ∈ γ then, owing to (i), |=∗ α̃(i) = α̃(j) since |=∗ hα̃(i), β̃(i)iV ∈ S(α, β), so that i = j because α is injectively presented. Hence, there is a E℘ -recursive partial function `∗3 such that `∗3 (α, β, γ, e0 ) γ is a function with domain α. The Formulae-as-Classes Interpretation of Constructive Set Theory 27 (iii): Let β1 , β2 ∈ V(Y∗ ) such that β1 = β2 = ᾱ. Then f S(α, β1 ) ⊆ S(α, β2 ) is equivalent to ∀i ∈ ᾱ f (i) hα̃(i), βe1 (i)iV ∈ S(α, β2 ). By (ii) there is an E℘ -recursive partial function hs such that the latter implies hs (α, β1 , β2 , f, i) βe1 (i) = βe2 (i) for all i ∈ ᾱ. On the other hand, one easily constructs an E℘ -recursive partial function hq such that ei βe1 (i) = βe2 (i) for all i ∈ ᾱ implies hq (α, β1 , β2 , e) S(α, β1 ) ⊆ S(α, β2 ). As the roles of β1 and β2 can be interchanged, by the above it is obvious how to construct the desired functions `∗4 and `∗5 . 2 Theorem 4.23. There is an E℘ -recursive partial function ı such that whenever α ∈ V(Y∗ ) is injectively presented, ı(α) α is a base. Proof. Let α ∈ V(Y∗ ) be injectively presented and let γ ∈ V(Y∗ ) satisfy e γ is a relation with domain α. Then by 4.20 (ii), g1 (e, α, γ) ∈ V(Y∗ ) and, letting δ := g1 (e, α, γ), we have δ̄ = ᾱ and g2 (e, α, γ) S(α, δ) ⊆ γ. Let η := S(α, δ). By 4.22 (ii) we also have `∗3 α, β, η, ids (η) η is a function with domain α. Hence, in view of the foregoing we can compose a function ı∗ such that ı∗ (α, γ, e) ∃f Fun(f ) ∧ dom(f ) = α ∧ f ⊆ γ so that ı(α) α is a base, 2 where ı := λxyz.ı∗ (x, y, z). Lemma 4.24. ω ∗ and hω (n) for n ∈ ω are injectively presented. Proof. Recall that ω ∗ = sup(ω, hω ). Suppose |=∗ hω (n) = hω (k) for some n, k ∈ ω. If n ∈ k, then, by (25), |=∗ hω (n) ∈ hω (k), so that |=∗ hω (n) ∈ hω (n). But by (4.17) we have |=∗ ∀x x ∈ / x, and hence, as 6|=∗ ⊥, we conclude n ∈ / k. Likewise we can conclude k ∈ / n. Since ∀x, y ∈ ω (x ∈ y ∨ x = y ∨ y ∈ x), we arrive at n = k. Note that by (25), hω (n) = n and ^ (h ω (n))(k) = hω (k) for k ∈ n, so that from ^ ^ 0 |=∗ (h ω (n))(k) = (hω (n))(k ) for k, k 0 ∈ n we obtain hω (k) = hω (k 0 ), and thus k = k 0 by the foregoing. 2 28 The Formulae-as-Classes Interpretation of Constructive Set Theory Lemma 4.25. Let θ0 (x, ~u) and ψ0 (x, y, ~u) be formulas of set theory. There is an E℘ -recursive partial function hd such that whenever ξ~ ∈ V(Y∗ ) and ~ ⊃ ∃y θ0 (y, ξ) ~ ∧ ψ0 (x, y, ξ) ~ e ∀x θ0 (x, ξ) (36) and ~ e0 θ0 (α, ξ) (37) then hd (e, e0 , ξ, α) ∃f f is a function with domain ω ∧ (38) ~ ∧ ψ0 (f (n), f (n + 1), ξ) ~ . f (0) = α ∧ ∀n ∈ ω θ0 (f (n), ξ) ~ and ψ0 (x, y, ξ), ~ respectively. Suppose that (36) and Proof. Let θ(x) and ψ(x, y) be θ0 (x, ξ) (37) hold true. For the sake of simplicity we shall also assume that θ(x) is an unbounded formula. Let ai be pi a and aij be pj (pi a). By the recursion theorem we can construct an index c such that c(u, x, y, z) ' dN 0, u, px(pxy), z c(pN u, x, y, z) 0 , c(pN u, x, y, z) 11 . (39) For n ∈ ω put g(n) := c(n, α, e0 , e) and f (n) := (g(n))0 . Note that f (0) = α and (g(0))11 = e0 , so that by (37), (g(0)11 θ(f (0)) By induction on n > 0 we shall show that g(n) ↓, f (n) ↓, and g(n) ∃y θ(y) ∧ ψ(f (n − 1), y)) . By (39), g(1) ' e c(0, α, e0 , e) 0 , c(0, α, e0 , e) 11 ' e (g(0))0 , (g(0))11 ' e f (0), (g(0))11 so that by (41) and (36) we have g(1) ↓, f (1) ↓, and g(1) ∃y θ(y) ∧ ψ(f (0), y)) . Now assume (41) to be true, where n > 0. By (39), g(n + 1) ' e c(n, α, e0 , e) 0 , c(n, α, e0 , e) 11 ' e (g(n))0 , (g(n))11 ' e f (n), (g(n))11 (40) (41) The Formulae-as-Classes Interpretation of Constructive Set Theory 29 so that by (41) and (36) we have g(n + 1) ↓, f (n + 1) ↓, and g(n + 1) ∃y θ(y) ∧ ψ(f (n), y)) . Hence by induction on n, (41) holds. Note that (41) also entails that (g(n))1 θ(f (n)) ∧ ψ(f (n − 1), f (n))) . (42) Let η := sup(ω, f ). Then η ∈ V(Y∗ ) with η̄ = ω, so that if δ = S(ω ∗ , η) then δ ∈ V(Y∗ ) and by 4.22 (ii), as ω ∗ is injectively presented, we get |=∗ δ is a function with domain ω ∗ . As δ̃(0) = hhω (0), η̃(0)iV = hhω (0), f (0)iV it follows that |=∗ hhω (0), αiV ∈ δ. Finally, let k ∈ ω and γ, ρ ∈ V(Y∗ ) such that |=∗ hhω (k), ρiV ∈ δ and |=∗ hhω (k + 1), γiV ∈ δ. Then by 4.22 (i), |=∗ ρ = f (k) and |=∗ γ = f (k + 1) and hence, from (40) and (42), |=∗ θ(ρ) ∧ ψ(ρ, γ). Note also that via its definition, δ is E℘ -computable from α, e, e0 and, moreover, all transformations involving “|=∗ ” can be made E℘ -computable, so that we can extract hd from the above. 2 Theorem 4.26. RDC is validated in V(Y∗ ). Proof. This follows from Lemma 4.25. t u The aim of the remainder of this section is to show that internally in V(Y∗ ), every ΠΣIgenerated set is a base. In the following definitions we shall define Σ(α, β) ∈ V(Y∗ ) and Π(α, β) ∈ V(Y∗ ) for α, β ∈ V(Y∗ ) such that ᾱ = β̄. We then show that when α is injectively presented then in V(Y∗ ) these are the disjoint union and cartesian product, respectively, of the family of sets S(α, β) indexed by α. Definition 4.27. Let α, β ∈ V(Y∗ ) with ᾱ = β̄. As ᾱ ∈ Y∗ and β̃(i) ∈ Y∗ for i ∈ ᾱ it follows that C ∈ Y∗ , where C := Σi∈ᾱ β̃(i). For z ∈ C, p0 z ∈ ᾱ so that f (z) ∈ V(Y∗ ) where ^ f (z) := (β̃(p 0 z))(p1 z). Now define Σ(α, β) := (sup z ∈ C)hα̃(p0 z), f (z)i. Note that D := Πi∈ᾱ β̃(i) is in Y∗ . Let z ∈ D. For i ∈ ᾱ we have α̃(i) ∈ V(Y∗ ), β̃(i) ∈ V(Y∗ ) and z(i) ∈ β̃(i) so that (^ β̃(i))(z(i)) ∈ V(Y∗ ). Hence g(z) ∈ V(Y∗ ) and g(z) = ᾱ where g(z) := (sup i ∈ ᾱ)(^ β̃(i))(z(i)). 30 The Formulae-as-Classes Interpretation of Constructive Set Theory Hence S(α, g(z)) ∈ V(Y∗ ). Now define Π(α, β) := (sup z ∈ D)S(α, g(z)). Then Π(α, β) ∈ V(Y∗ ). Lemma 4.28. The partial functions α, β 7→ Σ(α, β) and α, β 7→ Π(α, β) are E℘ -recursive partial functions. Also, whenever ᾱ = β̄ then Σ(α, β) ↓ and Π(α, β) ↓. t u Proof. This is obvious by their definition. Proposition 4.29. There are E℘ -recursive partial functions hs , hp such that whenever α is injectively presented and ᾱ = β̄ then the following hold: hs (α, β) Σ(α, β) is the disjoint union of the family of sets S(α, β). hp (α, β) Π(α, β) is the cartesian product of the family of sets S(α, β). (43) (44) Moreover, if β̃(i) is injectively presented for all i ∈ ᾱ then both Σ(α, β) and Π(α, β) are injectively presented. Proof. By 4.22, ha (α, β) S(α, β) is a function with domain α for a E℘ -recursive partial function ha . Let η ∈ V(Y∗ ). Suppose e η is in the disjoint union of S(α, β). There is an E℘ -recursive partial function h0 such that the latter yields h0 (α, β, η, e) ∃x ∈ α ∃v ∃u ∈ S(α, β) hx, viV = u ∧ ∃y ∈ v OP(x, y) = η so that ∃v ∃u ∈ S(α, β) hα̃(i), vi = u ∧ ∃y ∈ v OP(α̃(i), y) = η , V 1 where i = h0 (α, β, η, e) 0 . Hence by 4.22 (ii), h0 (α, β, η, e) h1 (α, β, η, e) δ = β̃(i) ∧ ∃y ∈ δ OP(α̃(i), y) = η, where δ = h0 (α, β, η, e) 10 and h1 is an E℘ -recursive partial function. Thus h2 (α, β, η, e) ∃y ∈ β̃(i) OP(α̃(i), y) = η, with another E℘ -recursive partial function h2 . The latter yields h3 (α, β, η, e) hα̃((z)0 ), f (z)iV = η, where z ∈ C is defined by z = hi, h2 (α, β, η, e) 0 i and h3 is yet another E℘ -recursive partial function. Therefore h4 (α, β, η, e) η ∈ Σ(α, β) The Formulae-as-Classes Interpretation of Constructive Set Theory 31 for a final E℘ -recursive partial function h4 . Going in the other direction and starting from e0 η ∈ Σ(α, β), we can reverse the above implication so that we get h0 (α, β, η, e0 ) η is in the disjoint union of S(α, β) for some E℘ -recursive partial function h0 . As a consequence of the above we then can compose an E℘ -recursive partial function hs such that (43) holds. For the cartesian product suppose e η is in the cartesian product of the family of sets S(α, β). (45) Then in particular hc0 (α, β, η) η is a function with domain α for some E℘ -recursive partial function hc0 , and by 4.22 (ii) we get `∗1 (α, η, hc0 (α, β, η)) η = S(α, γ) (46) with γ = `∗1 (α, η, hc0 (α, β, η)) and γ̄ = ᾱ. Hence from (45) we obtain hc1 (α, β, η, e) η = S(α, γ) ∧ θ(α, β, γ) (47) for some E℘ -recursive partial function hc1 , where θ(α, β, γ) stands for ∀x ∈ α ∃u ∃v ∈ S(α, β) OP(x, u) = v ∧ ∃y ∈ u ∃v ∈ Σ(α, γ) OP(x, u) = v . Using 4.22 (i) twice, from (47) we obtain that for all i ∈ ᾱ, hc2 (α, β, η, e, i) ∃y ∈ β̃(i) y = γ̃(i) so that hc3 (α, β, η, e, i) (^ β̃(i))(j) = γ̃(i), (48) where j = hc2 (α, β, η, e, i) 0 and hc2 , hc3 are appropiate E℘ -recursive partial functions. Now let z be the function with domain ᾱ and z(i) = hc2 (α, β, η, e, i) 0 so that z ∈ D. Then (48) yields hc3 (α, β, η, e, i) (^ β̃(i))(z(i)) = γ̃(i), (49) whence, owing to the definition of g(z), hc4 (α, β, η, e) Σ(α, g(z)) = Σ(α, γ) (50) 32 The Formulae-as-Classes Interpretation of Constructive Set Theory for an E℘ -recursive partial function hc4 . It follows from (46) and (50) that hc6 (α, β, η, e) η ∈ Π(α, β) (51) for an E℘ -recursive partial function hc5 . By inspecting the implications leading from (45) to (51) one realizes that they can be reversed so that if e0 η ∈ Π(α, β) we can construct an E℘ -recursive partial function hc7 such that hc7 (α, β, η, e0 ) η is in the cartesian product of the family of sets S(α, β). (52) As a consequence of the above we can compose an E℘ -recursive partial function hp such that (44) holds. Now suppose that β̃(i) is injectively presented for all i ∈ ᾱ. Let γ := Σ(α, β) and let z1 , z2 ∈ C such that e γ̃(z1 ) = γ̃(z2 ). We must show that z1 = z2 . Let xi := p0 zi and yi := p1 zi for i = 1, 2. As e γ̃(z1 ) = γ̃(z2 ) it follows that l0 (α, β, z1 , z2 , e) hα̃(x1 ), (^ β̃(x1 ))(y1 )iV = hα̃(x2 ), (^ β̃(x2 ))(y2 )iV so that l1 (α, β, z1 , z2 , e) α̃(x1 ) = α̃(x2 ) l2 (α, β, z1 , z2 , e) (^ β̃(x1 ))(y1 ) = (^ β̃(x2 ))(y2 ) for some E℘ -recursive partial functions l0 , l1 , l2 . As α is injectively presented x1 = x2 and hence l2 (α, β, z1 , z2 , e) (^ β̃(x1 ))(y1 ) = (^ β̃(x1 ))(y2 ). Whence as β̃(x1 ) is injectively presented, y1 = y2 , so that z1 = z2 . Thus Σ(α, β) is injectively presented. Next let δ := Π(α, β) and let z1 , z2 ∈ D such that e δ̃(z1 ) = δ̃(z2 ). We must show that z1 = z2 . Note that ^ δ̃(zi ) = S(α, g(zi )) = (sup i ∈ ᾱ)hα̃(i), (g(z 2 ))(i)iV . Hence, as l3 (α, β, e, z1 , z2 ) β̃(z1 ) ⊆ β̃(z1 ) for some E℘ -recursive partial function l3 , we conclude that for all i ∈ ᾱ, ^ ^ l4 (α, β, z1 , z2 , e, i) hα̃(i), (g(z (53) 1 ))(i)iV = hα̃(j), (g(z2 ))(j)iV where j := l3 (α, β, e, z1 , z2 ) (i) 0 and l4 is an E℘ -recursive partial function. But if e0 00 ^ ^ α̃(i) = α̃(j) for some e0 then i = j, so that if also e00 (g(z 1 ))(i) = (g(z2 ))(j) for some e then e00 (^ β̃(i))(z1 (i)) = (^ β̃(i))(z2 (i)), and as β̃(i) is injectively presented, z1 (i) = z2 (i). Hence it follows from (53) that z1 (i) = z2 (i) for all i ∈ ᾱ, so that z1 = z2 . t u The Formulae-as-Classes Interpretation of Constructive Set Theory 33 Lemma 4.30. For A ∈ Y∗ and a, b ∈ A, Î(A, a, b) ∈ V(Y∗ ), where Î(A, a, b) := sup z ∈ I(A, a, b) hω (0), and 1. Î(A, a, b) is injectively presented, 2. there is an E℘ -recursive partial function `I such that if α ∈ V(Y∗ ) is injectively presented and ᾱ = A then for all η ∈ V(Y∗ ), `I (α, η, a, b) η ∈ Î(A, a, b) iff η = hω (0) ∧ α̃(a) = α̃(b) . Proof. As I(A, a, b) ∈ Y∗ and hω (0) ∈ V(Y∗ ) it follows that Î(A, a, b) ∈ V(Y∗ ). (i): Let γ := Î(A, a, b) and let z1 , z2 ∈ I(A, a, b) such that γ̃(z1 ) = γ̃(z2 ). We must show that z1 = z2 . But, as z1 , z2 ∈ I(A, a, b), z1 = 0 = z2 so that z1 = z2 . (ii): As α is injectively presented and a, b ∈ A = ᾱ, we have |=∗ α̃(a) = α̃(b) if, and only if a = b. Let η ∈ V(Y∗ ). Suppose e η ∈ Î(A, a, b). Then (e)1 η = hω (0) and a = b, yielding h(e)1 , ids (α̃(a))i η = hω (0) ∧ α̃(a) = α̃(b). Conversely, if c η = hω (0) ∧ α̃(a) = α̃(b), then (c)0 η = hω (0) and a = b, so that 0 ∈ I(A, a, b) and whence h0, (c)0 i η ∈ Î(A, a, b). In view of the above it is clear how to construct `I . t u Theorem 4.31. ΠΣI−AC is validated in V(Y∗ ). Proof. Note that the ΠΣI-generated sets are an inductively defined class I(Φ). By lemma 2.7 there is a formula θ(u, v) of set theory such that I(Φ) = {x | ∃u θ(u, x)} and, moreover, CZF ` ∀u∀x θ(u, x) iff 5 _ θi (u, x) , (54) i=1 where θ1 (u, x) := x ∈ ω θ2 (u, x) := x = ω θ3 (u, x) := ∃v ∈ u ∃a θ(v, a) ∧ ∃f Fun(f ) ∧ dom(f ) = a ∧ ∀i ∈ a ∃z ∈ u θ(z, f (i)) ∧ x is the disjoint union of f θ4 (u, x) := ∃v ∈ u ∃a θ(v, a) ∧ ∃f Fun(f ) ∧ dom(f ) = a ∧ ∀i ∈ a ∃z ∈ u θ(z, f (i)) ∧ x is the cartesian product of f θ5 (u, x) := ∃v ∈ u ∃a θ(v, a) ∧ ∃w ∈ a ∃w0 ∈ a ∀z [z ∈ x iff (z = 0 ∧ w = w0 )] . We shall show that there are E℘ -recursive partial functions `& and `# such that whenever ξ, α ∈ V(Y∗ ) and e θ(ξ, α) 34 The Formulae-as-Classes Interpretation of Constructive Set Theory then `& (e, ξ, α) ∈ V(Y∗ ), `& (e, ξ, α) is injectively presented, `# (e, ξ, α) `& (e, ξ, α) = α. (55) `& (e, ξ, α) and `# (e, ξ, α) will be defined by recursion on ξ so that, ultimately, the E℘ recursive partial functions `# and `& will have to be defined by invoking the recursion theorem 4.7. Note that (54) and Theorem 4.17 entail that there are E℘ -recursive partial functions g1 , g2 , g3 , g4 , g5 such that e θ(ξ, α) implies gi (e, ξ, α) 0 = 0 ∨ gi (e, ξ, α) 0 = 1 (56) gi (e, ξ, α) 0 = 0 ⇒ gi (e, ξ, α) 1 θi (ξ, α) for i = 1, 2, 3, 4, 5. Now assume that α, ξ ∈ V(Y∗ ), e θ(ξ, α) and that for all β ∈ V(Y∗ ), j ∈ ξ¯ and c, if ˜ ˜ ˜ c θ(ξ(j), β), then `# (e0 , ξ(j), β) ↓ and `& (e0 , ξ(j), β) ↓ and that the properties pertaining to (55) obtain. Owing to (56) we can proceed by division into cases. Let gij (e, ξ, α) := gi (e, ξ, α) j . Case 1: Let g10 (e, ξ, α) = 0. Then g11 (e, ξ, α) α ∈ ω, so that by the proof of 4.17, Υ1 (g11 (e, ξ, α), α) 1 α = hω (n) for some E℘ -recursive partial function Υ1 , where n := Υ1 (g11 (e, ξ, α), α) 0 ∈ ω. Hence we let `& (e, ξ, α) := hω (n) and `# (e, ξ, α) := Υ1 (g11 (e, ξ, α), α) 1 . It follows from Lemma 4.24 that `& (e, ξ, α) is injectively presented. Case 2: Suppose g10 (e, ξ, α) = 1 and g20 (e, ξ, α) = 0. Then g21 (e, ξ, α) α ∈ ω, so that by the proof of 4.17, Υ2 (g21 (e, ξ, α), α) α = ω ∗ for some E℘ -recursive partial function Υ2 . This time let `& (e, ξ, α) := ω ∗ , `# (e, ξ, α) := Υ2 g21 (e, ξ, α), α . It follows from Lemma 4.24 that `& (e, ξ, α) is injectively presented. Case 3: Suppose g10 (e, ξ, α) = g20 (e, ξ, α) = 1 and g30 (e, ξ, α) = 0. Then g31 (e, ξ, α) The Formulae-as-Classes Interpretation of Constructive Set Theory 35 θ3 (ξ, α). Unpacking the definition of g31 (e, ξ, α) θ3 (ξ, α), we can E℘ -computably extract from e, ξ, α sets γ, β ∈ V(Y∗ ) and j ∈ ξ¯ such that ˜ γ) ∧ Fun(β) ∧ dom(β) = γ Υ∗3 (e, ξ, α) θ(ξ(j), ∧ ∀y ∈ γ ∃z ∈ ξ ∃w ∈ β ∃w0 [OP(y, w0 ) = w ∧ θ(z, w)] ∧ α is the disjoint union of β. for some E℘ -recursive partial function Υ∗3 . From the first conjunct above we get ˜ Υ∗3 (e, ξ, α) 0 θ(ξ(j), γ). (57) (58) From (57) we also get Υ03 (e, ξ, α) 0 ∀w ∈ β ∃z ∈ ξ θ(z, w), (59) and hence we can E℘ -computably extract a function l0 with domain β̄ from e, ξ, α such that for all i ∈ β̄ we have l0 (i) ∈ ξ¯ and ˜ 0 (i)), β̃(i)) Υ13 (e, ξ, α, i) θ(ξ(l (60) for some E℘ -recursive partial function Υ13 . Put ˜ ρ := `& Υ∗3 (e, ξ, α) 0 , ξ(j), γ ˜ 0 (i)), β̃(i) τi := `& Υ1 (e, ξ, α, i), ξ(l 3 ¯ By the inductive hypotheses we get ρ ↓, ρ ∈ V(Y∗ ), ρ is injectively presented, for i ∈ ξ. τi ↓, τi ∈ V(Y∗ ), τi is injectively presented and ˜ `# Υ∗3 (e, ξ, α) 0 , ξ(j), γ ρ=γ (61) # 1 0 ˜ (i)), β̃(i) τi = β̃(i) ` Υ3 (e, ξ, α), ξ(l (62) for all i ∈ β̄. Put τ := (sup i ∈ β̄)τi ˜ γ e := `# Υ∗3 (e, ξ, α) 0 , ξ(j), ˜ 0 (x)), β̃(x) . f # := ab β̄, λx.`# Υ1 (e, ξ, α), ξ(l # 3 Then τ ∈ V(Y∗ ). From (57), (61) and (62) we can conclude that # # Υ∗∗ 3 (e , f , e, ξ, α) Fun(τ ) ∧ dom(τ ) = ρ ∧ α is the disjoint union of τ (63) for some E℘ -recursive partial function Υ∗∗ 3 . Thus, by 4.22 we can E℘ -computably extract ∗ ∗∗ # # δ ∈ V(Y ) from Υ3 (e , f , e, ξ, α), ρ, τ such that δ̄ = ρ̄ and ∗∗ # # Υ++ Υ (e , f , e, ξ, α), ρ, τ τ = S(ρ, δ) (64) 3 3 for some E℘ -recursive partial function Υ++ 3 . Thence, from (63), (64) and Proposition 4.29 we get # # Υ$3 Υ∗∗ Σ(ρ, δ) = α (65) 3 (e , f , e, ξ, α), ρ, τ 36 The Formulae-as-Classes Interpretation of Constructive Set Theory and also that Σ(ρ, δ) is injectively presented. As a result, we define `& (e, ξ, α) := Σ(ρ, δ) # # `# (e, ξ, α) := Υ$3 Υ∗∗ 3 (e , f , e, ξ, α), ρ, τ . Case 4: Suppose g10 (e, ξ, α) = g20 (e, ξ, α) = g30 (e, ξ, α) = 1 and g40 (e, ξ, α) = 0. Then g41 (e, ξ, α) θ4 (ξ, α). Here we proceed in the same vein as in the previous case, crucially utilizing 4.22 (ii) and 4.29. Case 5: Suppose g10 (e, ξ, α) = g20 (e, ξ, α) = g30 (e, ξ, α) = g40 (e, ξ, α) = 1 and g50 (e, ξ, α) = 0. Then g51 (e, ξ, α) θ5 (ξ, α). Unpacking the definition of g51 (e, ξ, α) θ5 (ξ, α), we can E℘ -computably extract from e, ξ, α sets β ∈ V(Y∗ ), j ∈ ξ¯ and i0 , i1 ∈ β̄ such that ˜ Υ∗5 (e, ξ, α) θ(ξ(j), β) ∧ ∀z z ∈ α iff z = hω (0) ∧ β̃(i0 ) = β̃(i1 ) . (66) for some E℘ -recursive partial function Υ∗5 . From the first conjunct above we get ˜ β). Υ∗5 (e, ξ, α) 0 θ(ξ(j), (67) Put ˜ β . ρ := `& Υ∗5 (e, ξ, α) 0 , ξ(j), By the inductive hypotheses we get that ρ ↓, ρ ∈ V(Y∗ ), and that ρ is injectively presented and ˜ `# Υ∗5 (e, ξ, α) 0 , ξ(j), γ ρ = β. (68) Put ˜ e# := `# Υ∗5 (e, ξ, α) 0 , ξ(j), β . From (66) and (68) we can extract j0 , j1 ∈ ρ̄ such that # Υ∗∗ 5 (e , e, ξ, α) ∀z z ∈ α iff z = hω (0) ∧ ρ̃(j0 ) = ρ̃(j1 ) . (69) for some E℘ -recursive partial function Υ∗∗ 5 . Thus, by 4.30 we get that ∗∗ # Υ++ Υ (e , e, ξ, α), ρ α = Î(ρ̄, j0 , j1 ) 5 5 (70) for some E℘ -recursive partial function Υ++ 5 , and, moreover, that Î(ρ̄, j0 , j1 ) is injectively presented. As a result, we define `& (e, ξ, α) := Î(ρ̄, j0 , j1 ) # `# (e, ξ, α) := Υ++ Υ∗∗ 5 3 (e , e, ξ, α), ρ . Finally, by combining (55) and Theorem 4.23, we can design an E℘ -recursive partial function Ψ such that if c ∃z θ(z, α) then Ψ(α, c) α is a base, showing that ΠΣI−AC is validated in V(Y∗ ). t u The Formulae-as-Classes Interpretation of Constructive Set Theory 37 Remark 4.32. Aczel uses the notion of a strong base to show that ΠΣI−AC is validated in Martin-Löf type theory. α ∈ V(Y∗ ) is said to be a strong base if |=∗ α = β for some injectively presented β ∈ V(Y∗ ). The proof of 4.31 does not use this notion. The main reason for its avoidance is that I could not see how to internally characterize the notion of a strong base in V(Y∗ ), that is, via a formula ψ(u) such that |=∗ ψ(α) would hold iff α were a strong base. As Aczel also invokes the axiom of choice in type theory in connection with propositions involving the notion of a strong base there was a danger that dealing with it would require some forms of the axiom of choice to hold in the background theory. 4.5 The formulae-as-classes interpretation for CZF + REA As the reader may expect, the formulae-as-classes interpretation given for CZF above can be extended to CZF + REA also. The first step is to add the following condition to the definition of E℘ -recursive functions, giving rise to the E℘w -recursive functions: {w̄}(x, g) = Wz∈x g(z) if g is a (set-)function with dom(g) = x, where w̄ is a “fresh” natural number. . ∗ )-assignment M, a class k θ k M as in One then defines for every formula θ ∈ L∈ and V(Yw Definition 4.10, where, however, the definition of the product Y f Bx := {a | ∀x∈A({a}(x) ∈ Bx )} (71) x∈A is to be understood in the sense of E℘w -recursive functions. Correspondingly, we obtain the following result. Theorem 4.33. Let θ(u1 , . . . , ur ) be a formula of L∈ all of whose free variables are among u1 , . . . , ur . If CZF + REA + RDC + ΠΣW−AC ` θ(u1 , . . . , ur ), then one can effectively construct an index of a E℘w -recursive partial function g such that CZFExp + REA ` ∀α1 , . . . , αr ∈ V(Y∗ ) g(α1 , . . . , αr ) ∈ k θ(α1 , . . . , αr ) k. Proof. The proof builds on the proof of Theorem 4.13. First we have to deal with REA. Since CZF proves that every set is a subset of a transitive set it suffices to show that there is a term trea such that if α ∈ V(Y∗ ) and e Tran(α) then trea (α, e) ∃x α ⊆ x ∧ x is regular . So suppose e Tran(α). Define a function fα with domain ᾱ by fα (i) := α̃(i) and put A := Wi∈ᾱ fα (i). ∗ Note that A is E℘w -computable from α and that A ∈ Yw . By the recursion theorem we can construct an index c such that c(x, y, z) ' p fa(x, y), ab fa(x, y), λu.c(x, y, fa(z, u)) . (72) 38 The Formulae-as-Classes Interpretation of Constructive Set Theory Note that the elements of A are of the form sup(i, g) where i ∈ ᾱ and g : fα (i) → A. By ∈-induction on the elements sup(i, g) of A one shows that (73) c(fα , i, g) ' sup fα (i), ab fα (i), λu.c(fα (i), i, g(u)) , ∗ so that c(fα , i, g) ↓ and, moreover, c(fα , i, g) ∈ V(Yw ). Now put hα := ab A, λx.c(fα , p0 x, p1 x) and let β := sup(A, hα ). ∗ Then β ∈ V(Yw ) and by the above, β is E℘w -computable from α. In what follows, we shall frequently suppress the witnessing information and write |=∗ θ(~ α) rather than e θ(~ α) for a specific e. In all cases the witnessing information could be supplied and is indeed E℘w -computable from the exhibited parameters. Having progressed thus far in the paper, we consider it unnecessary and too tedious to make witnesses explicit all of the time. First we prove that |=∗ β is transitive. (74) So assume |=∗ γ ∈ β. Then |=∗ γ = hα (j) for some j ∈ A. But j = sup(i, g) for some i ∈ ᾱ and g : fα (i) → A. Hence, letting δ := sup(fα (i), g 0 ) and g 0 be the function with domain fα (i) satisfying g 0 (u) = hα (g(u)), we get |=∗ δ ⊆ β and |=∗ γ = δ, whence |=∗ γ ⊆ β. To demonstrate that β is regular we further need to show that if |=∗ γ ∈ β and |=∗ ∀u ∈ γ ∃v ∈ β θ(u, v), then |=∗ ∃x ∈ β θ0 (x, γ), (75) where θ0 (x, γ) stands for ∀u ∈ γ ∃v ∈ x θ(u, v) ∧ ∀v ∈ x ∃u ∈ γ θ(u, v). So assume |=∗ γ ∈ β and |=∗ ∀u ∈ γ ∃v ∈ β θ(u, v). Then |=∗ γ = hα (j) for some j ∈ A and ` ∀u ∈ hα (j) ∃v ∈ β θ(u, v) (76) for a function with domain hα (j). Then j = sup(i, g) for some i ∈ ᾱ and g : fα (i) → A. Also hα (j) = fα (i). From (76) we conclude that ∀ν ∈ fα (i) p0 (`(ν)) ∈ A ∧ p1 (`(ν)) θ h] α (j)(ν), hα (p0 (`(ν))) . Now let the function σ with domain fα (i) be defined by σ(ν) = p0 (`(ν)). So sup(i, σ) ∈ A and if δ := hα (sup(i, σ)) then |=∗ δ ∈ β. Moreover, we have ∀ν ∈ δ̄ p1 (`(ν)) θ h] α (j)(ν), hα (σ(ν)) . The Formulae-as-Classes Interpretation of Constructive Set Theory 39 From the latter we obtain |=∗ θ0 (δ, hα (j)) and hence |=∗ θ0 (δ, γ), so that |=∗ ∃x ∈ β θ0 (x, γ). It remains to prove that |=∗ α ⊆ β. (77) By induction on η ∈ V(Y∗ ) we shall show that |=∗ η ∈ α ⊃ η ∈ β. So as induction hypothesis we assume that |=∗ ∀u ∈ η u ∈ α ⊃ u ∈ β . Now if η ∈ α then |=∗ η = α̃(i) for some i ∈ ᾱ. Hence |=∗ ∀u ∈ α̃(i) u ∈ β. The latter implies that we have a function ` with domain fα (i) = α̃(i) such that ` : fα (i) → A and for all j ∈ fα (i) ^ |=∗ (α̃(i))(j) = hα (`(j)). Then sup(i, `) ∈ A. Let δ = hα (sup(i, `)). Then |=∗ δ ∈ β and for all j ∈ fα (i) = δ̄, ^ |=∗ (α̃(i))(j) = δ̃(j). The latter entails |=∗ α̃(i) = δ, whence |=∗ η = δ, so that |=∗ η ∈ β. This completes the ∗ proof that V(Yw ) validates REA. Finally we turn to ΠΣWI−AC. The proof of the validity of ΠΣI−AC was carried out in Theorem 4.31. Here we shall only discuss the additional constructions that are needed to ac∗ ∗ ) ) and Π(α, β) ∈ V(Yw commodate the W-operation. In Definition 4.27, Σ(α, β) ∈ V(Yw ∗ ) such that ᾱ = β̄, and 4.30 they are related to the disjoint union are defined for α, β ∈ V(Yw and cartesian product operations when α is injectively presented and β̃(i) is injectively presented for each i ∈ ᾱ. Moreover, Σ(α, β) and Π(α, β) are shown to be injectively presented under these conditions. Aczel has carried a similar construction for the operation W. ∗ ∗ ), where ) such that ᾱ = β̄. First note that A ∈ V(Yw Let α, β ∈ V(Yw A = Wi∈ᾱ β̃(i). ∗ Define hα,β : A → V(Yw ) by transfinite recursion on A so that for i ∈ ᾱ and f : β̃(i) → A, hα,β sup(i, f ) := hα̃(i), S β̃(i), (sup j ∈ β̃(i))hα,β (f (j)) iV . Finally let W(α, β) := sup(A, hα,β ). A is obviously E℘w -computable from α, β. Similarly as in (72) one can show with the aid of the recursion theorem that α, β 7→ hα,β is E℘w -computable form α, β so that W(α, β) is E℘w -computable from α, β also. Under the above conditions, if α is injectively presented and β̃(i) is injectively presented for all i ∈ ᾱ, it can be shown that W(α, β) is injectively presented, too. The proof consists in adapting the proof of [3] A2.2 to the present context. Furthermore, by using W(α, β) and the techniques of the proof of Theorem 4.31 one can ∗ show that V(Yw ) validates ΠΣWI−AC. Due to space limitations a proof with all the details cannot be included in this paper. However, as I trust that the reader has by now amassed enough experience from earlier proofs in this paper as to how to do things in an E℘w -computable way, he or she can glean the details from the proof of [3] A2.2. t u 40 The Formulae-as-Classes Interpretation of Constructive Set Theory References [1] P. Aczel: The Type Theoretic Interpretation of Constructive Set Theory. In: A. MacIntyre, L. Pacholski, J. Paris (eds.), Logic Colloquium ’77 North-Holland, Amsterdam (1978) 55–66. [2] P. Aczel: The type theoretic interpretation of constructive set theory: Choice principles. In: A.S. Troelstra and D. van Dalen, editors, The L.E.J. Brouwer Centenary Symposium, North Holland, Amsterdam (1982) 1–40. [3] P. Aczel: The Type Theoretic Interpretation of Constructive Set Theory: inductive definitions. In: R.B. Marcus et al. (eds), Logic, Methodology and Philosophy of Science VII, Elsevier, Amsterdam (1986) 17–49. [4] P. Aczel, M. Rathjen: Notes on Constructive Set Theory. Report No. 40 Institut Mittag-Leffler, Stockholm, Sweden (2001). [5] J. Barwise: Admissible sets and structures. Springer, Berlin (1975). [6] M. Beeson: Continuity in intuitionistic set theories. In: M Boffa, D. van Dalen, K. McAloon (eds.): Logic Colloquium ’78 (North-Holland, Amsterdam, 1979) 1–52. [7] M. Beeson: Foundations of Constructive Mathematics. Springer, Berlin (1985). [8] E. Bishop: Foundations of constructive analysis. McGraw-Hill, New York (1967). [9] R. Diaconescu: Axiom of choice and complementation. Proc. Amer. Math. Soc. 51 (1975) 176–178. [10] S. Feferman: Constructive theories of functions and classes. In: In: M Boffa, D. van Dalen, K. McAloon (eds.): Logic Colloquium ’78 (North-Holland, Amsterdam, 1979) 1–52. [11] R. Lubarsky: Intuitionistic L. In: Crossley et al.: Logical Methods, Birkhäuser (1993) 555-571. [12] P. Martin-Löf: An intuitionistic theory of types: predicative part In: H.E. Rose and J. Sheperdson (eds.): Logic Colloquium ’73, North-Holland, Amsterdam (1975) 73–118. [13] P. Martin-Löf: Intuitionistic Type Theory. Bibliopolis, Naples (1984). [14] Y.N. Moschovakis: Recursion in the universe of sets, mimeographed note (1976). [15] L. Moss: Power set recursion, Annals of Pure and Applied Logic 71 (1995) 247–306. [16] J. Myhill: Constructive set theory. Journal of Symbolic Logic 40 (1975) 347–382. [17] D. Normann: Set recursion. In: Generalized recursion theory II, North-Holland, Amsterdam (1978) 303–320. [18] M. Rathjen: The strength of some Martin-Löf type theories. Archive for Mathematical Logic (1994) 347–385. [19] M. Rathjen: Choice principles in constructive and classical set theories. To appear in: Z. Chatzidakis, P. Koepke, W. Pohlers (eds.): Proceedings of the Logic Colloquium 2002. [20] G. E. Sacks: Higher Recursion Theory. Springer, Berlin (1990) [21] A. Troelstra, D. van Dalen: Constructivism in Mathematics, volume II. North Holland, Amsterdam (1988).