A program for the full axiom of choice
aa r X i v : . [ c s . L O ] A ug A program for the full axiom of choice
Jean-Louis Krivine
Universit´e de Paris - [email protected] 4, 2020
Introduction
The Curry-Howard correspondence enables to associate a program with each proof inclassical natural deduction. But mathematical proofs not only use the rules of naturaldeduction, but also axioms , essentially those of Zermelo-Frænkel set theory with axiom ofchoice. To transform these proofs into programs, you must therefore associate with eachof these axioms suitable instructions, which is far from obvious.The theory of classical realizability (c.r.) solves this problem for all axioms of ZF, bymeans of a very rudimentary programming language : the λ c -calculus, that is to say the λ -calculus with a control instruction [4].The programs obtained in this way can therefore be written in practically any program-ming language. They are said to realize the axioms of ZF.But, almost all the applications of mathematics in physics, probability, statistics, etc. use Analysis , that is to say the axiom of dependent choice . The first program for this axiom,known since 1998 [1], is a pure λ -term called bar recursion [18, 2, 19]. In fact, c.r. showsthat it provides also a program for the continuum hypothesis [15].Nevertheless, this solution requires the programming language to be limited to λ c -calculus,prohibiting any other instruction, which is a severe restriction.Classical realizability provides other programs for this axiom [11, 12, 13], which requirean additional instruction (clock, signature, . . . , or as in this paper, introduction of freshvariables ). On the other hand, this kind of solution is very flexible regarding the pro-gramming language.There remained, however, the problem of the full axiom of choice. It is solved here, bymeans of new instructions which allow branching or parallelism . Admittedly, the programobtained in this way is rather complicated and we may hope for new solutions as simpleas bar recursion or clock. However, it already shows that we can turn all proofs of ZFCinto programs.The framework of this article is therefore the theory of classical realizability , which isexplained in detail in [11, 12, 13]. For the sake of simplicity, we will often refer to thesepapers for definitions and standard notations.1 utline of the paper. Section 1.
Axioms and properties of realizability algebras (r.a.) which are first orderstructures, a generalization of both combinatory algebras and ordered sets of forcingconditions. Intuitively, their elements are programs.
Section 2.
Each r.a. is associated with a realizability model (r.m.) , a generalization of thegeneric model in the theory of forcing. This model satisfies a set theory ZF ε which is aconservative extension of ZF, with a strong non extensional membership relation ε . Section 3.
Generic extensions of realizability algebras and models.
Section 4.
Definition and properties of a particular realizability algebra A . It containsan instruction of parallelism and the programming language allows the introduction ofmany other instructions. This is therefore, in fact, a class of algebras.At this stage, we obtain a program for the axiom of well ordered choice (WOC) : theproduct of a family of non-empty sets whose index set is well ordered is non-empty. We get, at the same time, a new proof that WOC is weaker than AC (joint work withLaura Fontanella ; cf. [6] for the usual proof).
Section 5.
Construction of a generic extension A of the algebra A which allows to realizethe axiom of choice : every set can be well ordered. Sections 3 and 4 are independent.Thanks to Asaf Karagila for several fruitful discussions [8]. He observed that, by exactlythe same method, we obtain a program, not only for AC, but for every axiom which canbe shown compatible with ZFC by forcing ; for instance CH, 2 ℵ = ℵ + Martin’s axiom,etc. (but this does not apply to V = L). It is a first order structure, which is defined in [12]. We recall here briefly this definitionand some essential properties :A realizability algebra A is made up of three sets : Λ (the set of terms ), Π (the set of stacks ), Λ ⋆ Π (the set of processes ) with the following operations :( ξ, η ) ( ξ ) η from Λ into Λ ( application ) ;( ξ, π ) ξ . π from Λ × Π into Π ( push ) ;( ξ, π ) ξ ⋆ π from Λ × Π into Λ ⋆ Π ( process ) ; π k π from Π into Λ ( continuation ).There are, in Λ, distinguished elements B , C , I , K , W , cc , called elementary combinators or instructions . Notation.
The term ( . . . ((( ξ ) η ) η ) . . . ) η n will be also written ( ξ ) η η . . . η n or even ξη η . . . η n . For instance : ξηζ = ( ξ ) ηζ = ( ξη ) ζ = (( ξ ) η ) ζ .We define a preorder on Λ ⋆ Π, denoted by ≻ , which is called execution ; ξ ⋆ π ≻ ξ ′ ⋆ π ′ is read as : the process ξ ⋆ π reduces to ξ ′ ⋆ π ′ . It is the smallest reflexive and transitive binary relation, such that, for any ξ, η, ζ ∈ Λand π, ̟ ∈ Π, we have :( ξ ) η ⋆ π ≻ ξ ⋆ η . π ( push ). I ⋆ ξ . π ≻ ξ ⋆ π ( no operation ). 2 ⋆ ξ . η . π ≻ ξ ⋆ π ( delete ). W ⋆ ξ . η . π ≻ ξ ⋆ η . η . π ( copy ). C ⋆ ξ . η . ζ . π ≻ ξ ⋆ ζ . η . π ( switch ). B ⋆ ξ . η . ζ . π ≻ ξ ⋆ ( η ) ζ . π ( apply ). cc ⋆ ξ . π ≻ ξ ⋆ k π . π ( save the stack ). k π ⋆ ξ . ̟ ≻ ξ ⋆ π ( restore the stack ).We are also given a subset ⊥⊥ of Λ ⋆ Π, called ”the pole”, such that : ξ ⋆ π ≻ ξ ′ ⋆ π ′ , ξ ′ ⋆ π ′ ∈ ⊥⊥ ⇒ ξ ⋆ π ∈ ⊥⊥ .Given two processes ξ ⋆ π, ξ ′ ⋆ π ′ , the notation ξ ⋆ π ≻≻ ξ ′ ⋆ π ′ means : ξ ⋆ π / ∈ ⊥⊥ ⇒ ξ ′ ⋆ π ′ / ∈ ⊥⊥ .Therefore, obviously, ξ ⋆ π ≻ ξ ′ ⋆ π ′ ⇒ ξ ⋆ π ≻≻ ξ ′ ⋆ π ′ .Finally, we choose a set of terms PL A ⊂ Λ, containing the elementary combinators : B , C , I , K , W , cc and closed by application. They are called the proof-like terms of thealgebra A . We write also PL instead of PL A if there is no ambiguity about A .The algebra A is called coherent if, for every proof-like term θ ∈ PL A , there exists a stack π such that θ ⋆ π / ∈ ⊥⊥ . Remark. A set of forcing conditions can be considered as a degenerate case of realizabilityalgebras, if we present it in the following way : an inf-semi-lattice P , with a greatest element and an initial segment ⊥⊥ of P (the set of false conditions). Two conditions p, q ∈ P are called compatible if their g.l.b. p ∧ q is not in ⊥⊥ .We get a realizability algebra if we set Λ = Π = Λ ⋆ Π = P ; B = C = I = K = W = cc = and PL = { } ; ( p ) q = p . q = p ⋆ q = p ∧ q and k p = p . The preorder p ≻ q is defined as p ≤ q , i.e. p ∧ q = p . The condition of coherence is / ∈ ⊥⊥ . We can translate λ -terms into terms of Λ built with the combinators B , C , I , K , W in sucha way that weak head reduction is valid : λx t [ x ] ⋆ u . π ≻ t [ u/x ] ⋆ π where λx t [ x ] , u are terms and π is a stack.This is done in [12]. Note that the usual ( K , S )-translation does not work. λ -calculus is much more intuitive than combinatory algebra in order to write programs, sothat we use it extensively in the following. But combinatory algebra is better for theory,in particular because it is a first order structure. The framework is very similar to that of forcing, which is anyway a particular case.We use a first order language with three binary symbols ε/ , / ∈ , ⊂ ( ε is intended to be astrong, non extensional membership relation ; ∈ and ⊂ have their usual meaning in ZF).First order formulas are written with the only logical symbols → , ∀ , ⊥ , ⊤ .The symbols ¬ , ∧ , ∨ , ↔ , ∃ are defined with them in the usual way.Given a realizability algebra, we get a realizability model (r.m.) as follows :We start with a model M of ZFC (or even ZFL) called the ground model . The axioms ofZFL are written with the sublanguage { / ∈ , ⊂} .We build a model N of a new set theory ZF ε , in the language { ε/ , / ∈ , ⊂} , the axioms3f which are given in [11]. We recall them below, using the following rather standardabbreviations : F → ( F → . . . ( F n → G ) . . . ) is written F , F , . . . , F n → G or even ~F → G .We use the notation ∃ x { F , F , . . . , F n } for ∀ x ( F → ( F → · · · → ( F n → ⊥ ) · · · )) → ⊥ .Of course, x ε y and x ∈ y are the formulas x ε/ y → ⊥ and x / ∈ y → ⊥ .The notation x = ∈ y → F means x ⊂ y, y ⊂ x → F . Thus x = ∈ y , which represents theusual (extensional) equality of sets, is the pair of formulas { x ⊂ y, y ⊂ x } .We use the notations ( ∀ x ε a ) F ( x ) for ∀ x ( ¬ F ( x ) → x ε/ a ) and( ∃ x ε a ) ~F ( x ) for ¬∀ x ( ~F ( x ) → x ε/ a ).For instance, ( ∃ x ε y )( t = ∈ u ) is the formula ¬∀ x ( t ⊂ u, u ⊂ t → x ε/ y ).The axioms of ZF ε are the following :0. Extensionality axioms. ∀ x ∀ y ( x ∈ y ↔ ( ∃ z ε y ) x = ∈ z ) ; ∀ x ∀ y ( x ⊂ y ↔ ( ∀ z ε x ) z ∈ y ).1. Foundation scheme. ∀ ~a ( ∀ x (( ∀ y ε x ) F ( y, ~a ) → F ( x, ~a )) → ∀ x F ( x, ~a )) for every formula F ( x, a , . . . , a n ).The intuitive meaning of these axioms is that ε is a well founded relation and the relation ∈ is obtained by “ collapsing ” ε into an extensional relation.The following axioms essentially express that the relation ε satisfies the Zermelo-Fraenkelaxioms except extensionality .2. Comprehension scheme. ∀ ~a ∀ x ∃ y ∀ z ( z ε y ↔ ( z ε x ∧ F ( z, ~a )) for every formula F ( z, ~a ).3. Pairing axiom. ∀ a ∀ b ∃ x { a ε x, b ε x } .4. Union axiom. ∀ a ∃ b ( ∀ x ε a )( ∀ y ε x ) y ε b .5. Power set axiom. ∀ a ∃ b ∀ x ( ∃ y ε b ) ∀ z ( z ε y ↔ ( z ε a ∧ z ε x )).6. Collection scheme. ∀ ~a ∀ x ∃ y ( ∀ u ε x )( ∃ v F ( u, v, ~a ) → ( ∃ v ε y ) F ( u, v, ~a )) for every formula F ( u, v, ~a ).7. Infinity scheme. ∀ ~a ∀ x ∃ y { x ε y, ( ∀ u ε y )( ∃ v F ( u, v, ~a ) → ( ∃ v ε y ) F ( u, v, ~a )) } for every formula F ( u, v, ~a ).It is shown in [11] that ZF ε is a conservative extension of ZF . For each formula F ( ~a ) of ZF ε (i.e. written with ε/ , / ∈ , ⊂ ) with parameters ~a in the groundmodel M we define, in M , a falsity value k F ( ~a ) k which is a subset of Π and a truth value | F ( ~a ) | which is a subset of Λ. The notation t ||− F ( ~a ) (read “ t realizes F ( ~a )” or “ t forces F ( ~a )” in the particular case of forcing) means t ∈ | F ( ~a ) | .We set first | F ( ~a ) | = { t ∈ Λ ; ( ∀ π ∈ k F ( ~a ) k )( t ⋆ π ∈ ⊥⊥ ) } so that we only need to define k F ( ~a ) k , which we do by induction on F : k a ε/ b k = { π ∈ Π ; ( a, π ) ∈ b } ; k⊥k = Π ; k⊤k = ∅ ;Definition by induction on (rk( a ) ∪ rk( b ) , rk( a ) ∩ rk( b )) : k a ⊂ b k = S c { t . π ∈ Π ; t ||− c / ∈ b, ( c, π ) ε a } ; k a / ∈ b k = S c { t . u . π ∈ Π ; t ||− c ⊂ a, u ||− a ⊂ c, ( c, π ) ε b } .4efinition by induction on the length of F : k F → F ′ k = { t . π ∈ Π ; t ||− F, π ∈ k F ′ k} ; k∀ x F ( x ) k = S a k F ( a ) k .We define the strong (Leibnitz) equality a = b by ∀ z ( a ε/ z → b ε/ z ). It is trivially transitiveand it is symmetric by comprehension. This equality satisfy the first order axioms ofequality ∀ x ∀ y ( x = y → ( F ( x ) → F ( y ))) (by comprehension scheme of ZF ε ) and istherefore the equality in the r.m. N . Lemma 1. k a = b k = k⊤ → ⊥k = { ξ . π ; ξ ∈ Λ , π ∈ Π } if a = b ; k a = a k = k⊥ → ⊥k = { ξ . π ; ξ ∈ Λ , π ∈ Π , ξ ⋆ π ∈ ⊥⊥} . Let z = { b }× Π so that k b ε/ z k = Π. If a = b then k a ε/ z k = ∅ and therefore : k a ε/ z → b ε/ z k = k⊤ → ⊥k .If a = b , then k a ε/ z k = Π and therefore k a = b k = k⊥ → ⊥k . q.e.d. Finally, it is convenient to define first = by k a = a k = k⊥k = Π ; k a = b k = k⊤k = ∅ if a = b ; and to define a = b as a = b → ⊥ .This notion of realizability has two essential properties given by theorems 2 and 3 below.They are proved in [11]. Theorem 2 (Adequacy lemma) . ||− is compatible with classical natural deduction, i.e. :If t , . . . , t n , t are λ c -terms such that t : F , . . . , t n : F n ⊢ t : F in classical naturaldeduction, then t ||− F , . . . , t n ||− F n ⇒ t ||− F .In particular, any valid formula is realized by a proof-like term. Theorem 3.
The axioms of ZF ε are realized by proof-like terms. It follows that every closed formula which is consequence of ZF ε and, in particular, everyconsequence of ZF , is realized by a proof-like term .In the following, we shall simply say “the formula F is realized” instead of “realized by aproof-like term” and use the notation ||− F .Theorem 3 is valid for every r.a. The aim of this paper is to realize the full axiom ofchoice AC in some particular r.a. suitable for programming . Remark.
Note that AC is realized for any r.a. associated with a set of forcing conditions(generic extension of M ). But in this case, there is only one proof-like term which is thegreatest element . We define a preorder ≤ on the set P (Π) of “falsity values” by setting : X ≤ Y ⇔ there exists a proof-like term θ ||− X → Y . By theorem 2, we easily see [11]that ( P (Π) , ≤ ) is a Boolean algebra B A if the r.a. A is coherent . Every formula F ( ~a ) ofZF ε with parameters in the ground model M has a value k F ( ~a ) k in this Boolean algebra.By means of any ultrafilter on B A , we thus obtain a complete consistent theory in thelanguage { ε/ , / ∈ , ⊂} with parameters in M . We take any model N of this theory and callit the realizability model (r.m.) of the realizability algebra A .Therefore, N is a model of ZF ε , and in particular, a model of ZF, that we will call N ∈ .5hus N ∈ is simply the model N restricted to the language { / ∈ , ⊂} . Remarks.
The ground model M is contained in N since every element of it is a symbol of constant. But M is not a submodel of N for the common language { / ∈ , ⊂} ; and, except in the case of forcing,not every element of N “has a name” in M .When F is a closed formula of ZF ε , the two assertions N | = F and ||− F have essentially the samemeaning, since N represents any r.m. for the given r.a. But the second formulation requires aformal proof. Functionals
A functional relation defined in N is given by a formula F ( x, y ) of ZF ε such that : N | = ∀ x ∀ y ∀ y ′ ( F ( x, y ) , F ( x, y ′ ) → y = y ′ ).A function is a functional relation which is a set.We define now some special functional relations on N which we call functionals definedin M or functional symbols :For each functional relation f : M k → M defined in the ground model M , we add thefunctional symbol f to the language of ZF ε . The application of f to an argument a willbe denoted f [ a ]. Therefore f is also defined in N .We call this (trivial) operation the extension to N of the functional f defined in theground model. It is a fundamental tool in all that follows.Note the use of brackets for f [ a ] in this case. Theorem 4.
Let t , u . . . , t n , u n , t, u be k -ary terms built with functional symbols, such that : M | = ∀ ~x ( t [ ~x ] = u [ ~x ] , . . . , t n [ ~x ] = u n [ ~x ] → t [ ~x ] = u [ ~x ]) .Then λx . . . λx n λx ( x ) . . . ( x n ) x ||− ∀ ~x ( t [ ~x ] = u [ ~x ] , . . . , t n [ ~x ] = u n [ ~x ] → t [ ~x ] = u [ ~x ]) . This easily follows from the definition above of k a = b k . q.e.d. As a first example let the unary functional Φ F [ X ] be defined in M by :Φ F [ X ] = { ( x, ξ . π ) ; ξ ||− F ( x ) , ( x, π ) ∈ X } .We shall denote it by { x ε X ; F ( x ) } (in this notation, x is a bound variable) because itcorresponds to the comprehension scheme in the model N . Note that the use of ε remindsthat this expression must be interpreted in N .We define now in M the unary functional ג X = X × Π, so that we have : k x ε/ ג X k = Π if x ∈ X and k x ε/ ג X k = ∅ if x / ∈ X .For any X in M , we define the quantifier ∀ x ג X by setting k∀ x ג X F ( x ) k = S x ∈ X k F ( x ) k . Lemma 5. ||− ∀ x ג X F ( x ) ↔ ∀ x ( x ε ג X → F ( x )) . In fact, we have k∀ x ( ¬ F ( x ) → x ε/ ג X ) k = k∀ x ג X ¬¬ F ( x ) k .Now we have trivially λx ( x ) I ||− ∀ x ג X F ( x ) → ∀ x ג X ¬¬ F ( x )and cc ||− ∀ x ג X ¬¬ F ( x ) → ∀ x ג X F ( x ). q.e.d. emma 6. Let f be a functional k -ary symbol defined in M such that f : X ×· · ·× X k → X .Then its extension to N is such that f : ג X ×· · ·× ג X k → ג X . Trivial. q.e.d.
By theorem 4 and lemma 6, the algebra operations on the Boolean algebra 2 = { , } extended to ג
2, turn it into a Boolean algebra which we call the characteristic Booleanalgebra of the r.m. N . In the ground model M , we define the functional ( a, x ) ax from 2 ×M into M by 0 x = ∅ and 1 x = x . It extends to N into a functional ג ×N → N such that ( ab ) x = a ( bx ) for a, b ε ג x in N . Lemma 7. I ||− ∀ ~x ∀ ~y ∀ a ג ( af [ ~x, ~y ] = af [ a~x, ~y ]) for every functional symbol f defined in M . Trivial. q.e.d.
For any formula F ( ~x ) of ZF we define, in M , a functional h F ( ~x ) i with value in { , } which is the truth value of this formula in M . The extension of this functional to themodel N takes its values in the Boolean algebra ג h x / ∈ y i and h x ⊂ y i define on the r.m. N a structure of Booleanmodel on the Boolean algebra ג
2, that we denote by M ג . It is an elementary extensionof M since the truth value of every closed formula of ZF with parameters in M is thesame in M and M ג .Any ultrafilter U on ג M ג / U which is anelementary extension of M . In [14], it is shown that there exists one and only oneultrafilter D on ג M ג / D , which we shall denote as M D , is wellfounded (in N ). The binary relations / ∈ , ⊂ of M D are thus defined by h x / ∈ y i ε D and h x ⊂ y i ε D .Moreover, M D is isomorphic with a transitive submodel of N ∈ with the same ordinals.In fact, if we start with a ground model M which satisfies V = L, then M D is isomorphicwith the constructible class of N ∈ . Remark.
We have defined many first order structures on the model N : • The realizability model N itself uses the language { ε/ , / ∈ , ⊂} of ZF ε ; the equality on N is theLeibnitz equality =, which is the strongest possible. • The model N ∈ of ZF is restricted to the language { / ∈ , ⊂} ; the equality on N ∈ is the extensionalequality = ∈ . • The Boolean model M ג with the language { / ∈ , ⊂} of ZF and with truth values in ג M . The equality on M ג is h x = y i = 1 i.e. theLeibnitz equality. • The model M D with the same language, also an elementary extension of M ; if F ( ~a ) is aclosed formula of ZF with parameters (in N ), then M D | = F ( ~a ) iff N | = h F ( ~a ) i ε D .The equality on M D is given by h x = y i ε D . The proof of existence of the ultrafilter D in [14] is not so simple. But it is useless in thepresent paper, because ג a , a whichgive the two trivial ultrafilters on ג
2. It is easily seen that one of them, say a gives a wellfounded model denoted by M a which is the class a N = M D . The class M a = a N is7lso an elementary extension of M (but not well founded, cf. the remark after lemma 28).Finally we have M ג = N = a N × a N since the Boolean model is simply a product inthis case. Integers
We define, in the ground model M , the functional x x + = x ∪ { x } and extend it tothe r.m. N . It is injective in M and therefore also in N .For each n ∈ N , we define n ∈ PL by induction : 0 = KI ; n + = sn where s = λnλf λx ( nf )( f ) x .We define e N = { ( n, n . π ) ; n ∈ N , π ∈ Π } . We use it as the set of integers of the model N as shown by the following theorem 8.We define the quantifier ∀ n int by setting k∀ n int F ( n ) k = { n . π ; n ∈ N , π ∈ k F ( n ) k} . Theorem 8.
For every formula F ( x ) of ZF ε , the following formulas are realized :i) ε e N ; ∀ n ( n ε e N → n + ε e N ) ;ii) F (0) , ∀ n ( F ( n ) → F ( n + )) → ( ∀ n ε e N ) F ( n ) ;iii) ∀ n int F ( n ) ↔ ( ∀ n ε e N ) F ( n ) . i) Let ξ ||− ε/ e N ; then ξ ⋆ . π ∈ ⊥⊥ for all π ∈ Π. Therefore λx ( x )0 ||− ε/ e N → ⊥ .Let ξ ||− n + ε/ e N and n . π ∈ k n ε/ e N k . We have ξ ⋆ sn . π ∈ ⊥⊥ and therefore θ ⋆ ξ . n . π ∈ ⊥⊥ with θ = λxλn ( x )( s ) n . Thus θ ||− ∀ n ( n + ε/ e N → n ε/ e N ).ii) We show λxλyλzλn ( x )( n ) yz ||− ¬ F (0) , ∀ n ( F ( n + ) → F ( n )) → ∀ m ( F ( m ) → m ε/ e N ).Let ξ ||− ¬ F (0) , η ||− ∀ n ( F ( n + ) → F ( n )) , ζ ||− F ( m ) and m . π ∈ k m ε/ e N k .Let us show that mηζ ||− F (0) by induction on m :This is clear if m = 0. Now, m + ηζ = smηζ ≻ ( mη )( η ) ζ and ηζ ||− F ( m ) since ζ ||− F ( m + ).Therefore ( mη )( η ) ζ ||− F (0) by the induction hypothesis.It follows that ( ξ )( m ) ηζ ||− ⊥ , hence the result.iii) Let us use lemma 9. We have : k∀ n ( ¬ F ( n ) → n ε/ e N ) k = { k π . n . ̟ ; n ∈ N , π ∈ k F ( n ) k , ̟ ∈ Π } and by definition : k∀ n int F ( n ) k = { n . π ; n ∈ N , π ∈ k F ( n ) k} .It follows easily that : λxλn ( cc ) λk ( x ) kn ||− ∀ n ( ¬ F ( n ) → n ε/ e N ) → ∀ n int F ( n ) λxλkλn ( k )( x ) n ||− ∀ n int F ( n ) → ∀ n ( ¬ F ( n ) → n ε/ e N ). q.e.d. Some useful notations
For every set of terms X ⊂ Λ and every closed formula F we can define an “extendedformula” X → F by setting k X → F k = { ξ . π ; ξ ∈ X, π ∈ k F k} .For instance, for every formula F , we define ¬ F = { k π ; π ∈ k F k} . It is a useful equivalentof ¬ F by the following : Lemma 9. ||− ¬ F ↔ ¬ F . π ∈ k F k , then k π ||− ¬ F and therefore I ||− ¬ F → ¬ F .Conversely, if ξ ||− ¬ F → ⊥ , then ξ ⋆ k π . π ∈ ⊥⊥ for every π ∈ k F k ; thus cc ||− ¬ ¬ F → F . q.e.d. If t, u are terms of the language of ZF, built with functionals in M , we define another“extended formula” t = u ֒ → F by setting : k t = u ֒ → F k = ∅ if t = u ; k t = u ֒ → F k = k F k if t = u .We write ( t = u ) , . . . , ( t n = u n ) ֒ → F for ( t = u ) ֒ → ( · · · ֒ → (( t n = u n ) ֒ → F ) · · · ). Lemma 10. ||− (( t = u ֒ → F ) ↔ ( t = u → F )) . We have immediately I ||− ¬ F, ( t = u ֒ → F ) → t = u .Conversely λx ( x ) I ||− ( t = u → F ) → ( t = u ֒ → F ). q.e.d. For instance, the conclusion of theorem 4 may be rewritten as : I ||− ∀ ~x ( t [ ~x ] = u [ ~x ] , . . . , t n [ ~x ] = u n [ ~x ] ֒ → t [ ~x ] = u [ ~x ]).Lemmas 11, 12, 13 and theorem 15 below will be used in the following sections. Lemma 11. ||− ∀ x ∀ y ( x ε y → h x ∈ Cl [ y ] i = 1) . In the model M , the unary functional symbol Cl denotes the transitive closure .We show I ||− ∀ x ∀ y ( h x ∈ Cl[ y ] i 6 = 1 → x ε/ y ) : let ξ ||− h x ∈ Cl[ y ] i 6 = 1 and π ∈ k x ε/ y k .Then ( x, π ) ∈ y , therefore x ∈ Cl( y ). It follows that ξ ||− ⊥ . q.e.d. Lemma 12. I ||− ∀ X ∀ a ג ∀ x ( h ax ∈ aX i ≥ a ֒ → ax ε Φ[ X ]) where Φ is the functionalsymbol defined in M by Φ[ X ] = ( X ∪ { } ) × Π i.e. ג ( X ∪ { } ) . This amount to show :1. x ∈ X ⇒ I ||− x ε/ Φ[ X ] → ⊥ ;2. I ||− ε/ Φ[ X ] → ⊥ .Both are trivial. q.e.d. Lemma 13.
Let F ( x, ~y ) be a formula in ZF ε . Then : I ||− ∀ ~y ( ∀ ̟ ג Π F ( f [ ̟, ~y ] , ~y ) → ∀ x F ( x, ~y )) for some functional symbol f defined in M . Let ~a = ( a , . . . , a k ) in M . Then, we have : π ∈ k∀ x F ( x, ~a ) k ⇔ M | = ∃ x ( π ∈ k F ( x, ~a ) k ) ⇔ M | = π ∈ k F ( f [ π, ~a ] , ~a ) k where f is a functional defined in M , (choice principle in M ).Thus we have k∀ x F ( x, ~a ) k ⊂ S ̟ ∈ Π k F ( f [ ̟, ~a ] , ~a ) k hence the result. q.e.d. Lemma 14. If X ∈ M is transitive, then ג X is ε -transitive, i.e. I ||− ∀ x ג X ∀ y ( y ε/ ג X → y ε/ x ) . Let x ∈ X , ̟ ∈ k y ε/ x k , i.e. ( y, ̟ ) ∈ x and ξ ∈ Λ such that ξ ||− y ε/ ג X . Since X istransitive, we have y ∈ X and therefore ξ ||− ⊥ . q.e.d. heorem 15. Let L be the language { ε, ∈ , ⊂} of ZF ε , with a symbol for each functionaldefinable in M . Then, there exists an ε -transitive L -elementary substructure e N of N such that, for all a in e N , there is an ordinal α of M such that e N | = a ε ג V α . e N is made up of the elements a of N such that a ε ג V α for some ordinal α of M (notethat it is not a class defined in N ). By lemma 14, each ג V α is ε -transitive and therefore e N is also.Let F ( x, ~y ) be a formula of L and ~b = ( b , . . . , b k ) be in e N . We assume e N | = ∀ x F ( x,~b )and we have to show that N | = ∀ x F ( x,~b ) which we do by induction on F . By lemma 13,it suffices to show that N | = ∀ ̟ ג Π F ( f [ ̟,~b ] ,~b ). Thus let π ε ג Π ; by definition of e N , thereexists X in M such that ~b ∈ X . Now, there exists V α in M such that f : Π × X → V α and therefore, in N , we have f : ג Π × ג X → ג V α . It follows that f [ π,~b ] ε ג V α and f [ π,~b ]is in e N .Therefore e N | = F ( f [ π,~b ] ,~b ), hence N | = F ( f [ π,~b ] ,~b ) by the induction hypothesis. q.e.d. Replacing N by this elementary substructure, we shall suppose from now on : (cid:13) (cid:13) For all a in N , there is an ordinal α of M such that N | = a ε ג V α . Theorem 16 below is not really useful in the following, but it gives a welcome informationon the (very complex) structure of the r.m. N . Theorem 16. a N is a proper class for all a ε ג , a = 0 ; i.e. I ||− ∀ x ( ∀ a ג ( ∀ y ( ay ε x ) → a = 0)) . Let us show, in fact, that I ||− ∀ x ( ∀ a ג ( ax ε x → a = 0)) ; in other words : I ||− ε x → I ||− x ε x → ε x ) ≡ (0 ε/ x → ⊥ ) and (0 = 0) ≡ ( ⊥ → ⊥ ) hence the first result.Furthermore, we have k x ε/ x k = { π ∈ Π ; ( x, π ) ∈ x } = ∅ ; thus k x ε x k = k x ε/ x → ⊥k = k⊤ → ⊥k and k k = k⊤ → ⊥k hence the second result. q.e.d. In this section we build some tools in order to manage generic extensions N ∈ [ G ] of the extensional model N ∈ . We define a new r.a. and give, in this r.a., a new way to computethe truth value of ZF-formulas in N ∈ [ G ].Let V be fixed in M . We have k x ε/ ג V k = kh x ∈ V i 6 = 1 k and therefore : I ||− ∀ x ( x ε ג V ↔ h x ∈ V i = 1).In other words, the ε -elements of ג V are exactly the elements of V in the Booleanmodel M ג . In fact, the formula ∀ x ג V F ( x ) is the same as ∀ x ( h x ∈ V i = 1 ֒ → F ( x )).Remember also the important (and obvious) equivalence I ||− ∀ x ∀ y ( x = y ↔ h x = y i = 1)which follows from k x = y k = kh x = y i 6 = 1 k and which identifies the r.m. N with theBoolean model M ג . 10 heorem 17. N | = ∀ a ∀ n int (cid:0) a ε ( ג V ) n → ∃ ! b ג ( V n ) ∀ i int ( i < n → a ( i ) = b [ i ]) (cid:1) .In other words, each finite sequence of ג V in N is represented by a unique finite sequenceof V in the boolean model M ג . Unicity. Note first that, since there is no extensionality in N , you may have two sequences a = a ′ ε ( ג V ) n such that a ( i ) = a ′ ( i ) for i < n . Now suppose b, b ′ ε ג ( V n ) be such that b [ i ] = b ′ [ i ] for i < n . Then, we have h b, b ′ ∈ V n i = 1 and h ( ∀ i < n )( b [ i ] = b ′ [ i ]) i = 1. Sincethe boolean model M ג satisfies extensionality, we get h b = b ′ i = 1 that is b = b ′ .Existence. Proof by induction on n . This is trivial if n = 0 : take b = ∅ .Now, let a ε ( ג V ) n +1 and a ′ be a restriction of a to n . Let b ′ ε ג ( V n ) such that a ′ ( i ) = b ′ [ i ]for i < n (induction hypothesis).In the ground model M , we define the binary functional + as follows :if u is a finite sequence ( u , . . . , u n − ), then u + v is the sequence ( u , . . . , u n − , v ).We extend it to N and we set b = b ′ + a ( n ) i.e. h b = b ′ + a ( n ) i = 1. Therefore h b [ i ] = b ′ [ i ] i = 1 for i < n and h b [ n ] = a ( n ) i = 1, i.e. a ( i ) = b [ i ] for i < n and a ( n ) = b [ n ]. q.e.d. Consider an arbitrary ordered set ( C, ≤ ) in the model N . By theorem 15 and property (cid:13) (cid:13) (section 2), we may suppose that ( C, ≤ ) ε ג V with V = V α in M . ג V is ε -transitive, by lemma 14.As a set of forcing conditions, C is equivalent to the set C of finite subsets X of ג V suchthat X ∩ C has a lower bound in C , C being ordered by inclusion.Thus, we can define C by the following formula of ZF ε : C ( u ) ≡ u ε ( ג V ) <ω ∧ ( Im ( u ) ∩ C ) has a lower bound in C where Im( u ) ⊆ ג V is the (finite) image of the finite sequence u .We have N | = C ( u ) → u ε ( ג V ) <ω and therefore N | = C ( u ) → u ε ( ג V <ω ) by theorem 17.Moreover, we have N | = C ( ∅ ).In M , the function ( u, v ) uv , from ( V <ω ) into V <ω , which is the concatenation ofsequences, is associative with ∅ as neutral element, also denoted by (mono¨ıd).This function extends to N into an application of ג ( V <ω ) into ג ( V <ω ) with the sameproperties. Thus, we write uvw for u ( vw ) , ( uv ) w , etc.The formula C ( uv ) of ZF ε means that u, v are two compatible finite sequences of elementsof C , i.e. the union of their images has a lower bound in C . Thus C becomes a set offorcing conditions equivalent to C by means of this compatibility relation.This formula has the following properties : ||− C ( puvq ) → C ( pvuq ) , ||− C ( puvq ) → C ( puq ) , ||− C ( puq ) → C ( puuq ).It will be convenient to have only one formula and to use simply the following consequence : (cid:13) (cid:13) There exists a proof-like term c such that c ||− C ( pqrtuvw ) → C ( ptruuv ).Consider now, in the ground model M , a r.a. A which gives the r.m. N .We suppose to have an operation ( π, τ ) π τ from Π × Λ into Π such that :( ξ . π ) τ = ξ . π τ for every ξ, τ ∈ Λ and π ∈ Π.and two new combinators χ (read) and χ ′ (write) such that : χ ⋆ ξ . π τ ≻≻ ξ ⋆ τ . π (i.e. ξ ⋆ τ . π ∈ ⊥⊥ ⇒ χ ⋆ ξ . π τ ∈ ⊥⊥ ) χ ′ ⋆ τ . ξ . π ≻≻ ξ ⋆ π τ (i.e. ξ ⋆ π τ ∈ ⊥⊥ ⇒ χ ′ ⋆ τ . ξ . π ∈ ⊥⊥ ).Moreover, we suppose that χ, χ ′ may be used to form proof-like terms.11ntuitively, π τ is obtained by putting the term τ at the end of the stack π , in the sameway that τ . π is obtained by putting τ at the top of π .We define now, in the ground model M , a new r.a. A ; its r.m. will be called theextension of N by a C -generic (or a C -generic) .We define the terms B ∗ , C ∗ , I ∗ , K ∗ , W ∗ , cc ∗ and k ∗ π by the conditions : (cid:13) (cid:13) B ∗ = B ; I ∗ = I ; C ∗ ⋆ ξ . η . ζ . π τ ≻ ξ ⋆ ζ . η . π c τ ; i.e. C ∗ = λxλyλz ( χ ) λt (( χ ′ )( c ) t ) xzy ; K ∗ ⋆ ξ . η . π τ ≻ ξ ⋆ π c τ ; i.e. K ∗ = λxλy ( χ ) λt (( χ ′ )( c ) t ) x ; W ∗ ⋆ ξ . η . π τ ≻ ξ ⋆ η . η . π c τ ; i.e. W ∗ = λxλy ( χ ) λt (( χ ′ )( c ) t ) xyy ; k ∗ π ⋆ ξ . ̟ τ ≻ ξ ⋆ π c τ ; i.e. k ∗ π = λx ( χ ) λt ( k π )(( χ ′ )( c ) t ) x ; cc ∗ ⋆ ξ . π τ ≻ ξ ⋆ k ∗ π . π c τ ; i.e. cc ∗ = λx ( χ ) λt ( cc ) λk ((( χ ′ )( c ) t ) x ) λx ′ ( χ ) λt ′ ( k )(( χ ′ )( c ) t ′ ) x ′ .When checking below the axioms of r.a., the property needed for each combinator is : (cid:13) (cid:13) for C ∗ : c ||− C ( prtv ) → C ( ptrv ) ; for K ∗ : c ||− C ( pqr ) → C ( pr ) ;for W ∗ : c ||− C ( puv ) → C ( puuv ) ; for cc ∗ : c ||− C ( pu ) → C ( puu ) ;for k ∗ π : c ||− C ( rtw ) → C ( tr ).We get them replacing by some of the variables p, q, r, t, u, v, w in the definition (cid:13) (cid:13) of c .We define the r.a. A by setting Λ = Λ × V <ω ; Π = Π × V <ω ; Λ ⋆ Π = (Λ ⋆ Π) × V <ω .( ξ, u ) . ( π, v ) = ( ξ . π, uv ) ;( ξ, u ) ⋆ ( π, v ) = ( ξ ⋆ π, uv ) ;( ξ, u )( η, v ) = ( ξη, uv ).The pole ⊥⊥⊥ of A is defined by :( ξ ⋆ π, u ) ∈ ⊥⊥⊥ ⇔ ( ∀ τ ∈ Λ)( τ ||− C ( u ) ⇒ ξ ⋆ π τ ∈ ⊥⊥ ).The combinators are : B = ( B , ) , C = ( C ∗ , ) , I = ( I , ) , K = ( K ∗ , ) , W = ( W ∗ , ) , cc = ( cc ∗ , ) ; k ( π,u ) = ( k ∗ π , u ) ; PL A is { ( θ, ) ; θ ∈ PL A } . Theorem 18. A is a coherent r.a. Let us prove first that A is coherent : let θ ∈ PL A ; by definition of the formula C , thereexists τ ∈ PL A such that τ ||− C ( ).Since χ ′ θτ ∈ PL A , there exists π ∈ Π such that χ ′ θτ ⋆ π / ∈ ⊥⊥ , thus θ ⋆ π τ / ∈ ⊥⊥ , therefore( θ, ) ⋆ ( π, ) / ∈ ⊥⊥⊥ .We check now that A is a r.a. : • ( ξ, u ) ⋆ ( η, v ) . ( π, w ) ∈ ⊥⊥⊥ ⇒ ( ξ, u )( η, v ) ⋆ ( π, w ) ∈ ⊥⊥⊥ .By hypothesis, we have ( ξ ⋆ η . π, uvw ) ∈ ⊥⊥⊥ , therefore :( ∀ τ ∈ Λ)( τ ||− C ( uvw ) → ξ ⋆ η . π τ ∈ ⊥⊥ ) and therefore :( ∀ τ ∈ Λ)( τ ||− C ( uvw ) → ξη ⋆ π τ ∈ ⊥⊥ ) hence the result. • ( ξ, u ) ⋆ ( η, v )( ζ , w ) . ( π, z ) ∈ ⊥⊥⊥ ⇒ ( B , ) ⋆ ( ξ, u ) . ( η, v ) . ( ζ , w ) . ( π, z ) ∈ ⊥⊥⊥ .By hypothesis, we have ( ξ ⋆ ηζ . π, uvwz ) ∈ ⊥⊥⊥ therefore :( ∀ τ ∈ Λ)( τ ||− C ( uvwz ) → ξ ⋆ ηζ . π τ ∈ ⊥⊥ ) thus :( ∀ τ ∈ Λ)( τ ||− C ( uvwz ) → B ⋆ ξ . η . ζ . π τ ∈ ⊥⊥ ). • ( ξ, u ) ⋆ ( ζ , w ) . ( η, v ) . ( π, z ) ∈ ⊥⊥⊥ ⇒ ( C ∗ , ) ⋆ ( ξ, u ) . ( η, v ) . ( ζ , w ) . ( π, z ) ∈ ⊥⊥⊥ .By hypothesis, we have ( ξ ⋆ ζ . η . π, uwvz ) ∈ ⊥⊥⊥ , therefore :12 ∀ τ ∈ Λ)( c τ ||− C ( uwvz ) → ξ ⋆ ζ . η . π c τ ∈ ⊥⊥ ) therefore, by definition (cid:13) (cid:13) of C ∗ :( ∀ τ ∈ Λ)( c τ ||− C ( uwvz ) → C ∗ ⋆ ξ . η . ζ . π τ ∈ ⊥⊥ ). But, by the property (cid:13) (cid:13) of c , we have : τ ||− C ( uvwz ) → c τ ||− C ( uwvz ), hence the result. • ( ξ, u ) ⋆ ( π, v ) ∈ ⊥⊥⊥ ⇒ ( I , ) ⋆ ( ξ, u ) . ( π, v ) ∈ ⊥⊥⊥ .Immediate. • ( ξ, u ) ⋆ ( π, w ) ∈ ⊥⊥⊥ ⇒ ( K ∗ , ) ⋆ ( ξ, u ) . ( η, v ) . ( π, w ) ∈ ⊥⊥⊥ .By hypothesis, we have ( ξ ⋆ π, uw ) ∈ ⊥⊥⊥ , therefore :( ∀ τ ∈ Λ)( c τ ||− C ( uw ) → ξ ⋆ π c τ ∈ ⊥⊥ ), therefore by the definition (cid:13) (cid:13) of K ∗ :( ∀ τ ∈ Λ)( c τ ||− C ( uw ) → K ∗ ⋆ ξ . η . π τ ∈ ⊥⊥ ). But, by (cid:13) (cid:13) , we have : τ ||− C ( uvw ) → c τ ||− C ( uw ), hence the result. • ( ξ, u ) ⋆ ( η, v ) . ( η, v ) . ( π, w ) ∈ ⊥⊥⊥ ⇒ ( W ∗ , ) ⋆ ( ξ, u ) . ( η, v ) . ( π, w ) ∈ ⊥⊥⊥ .By hypothesis, we have ( ξ ⋆ η . η . π, uvvw ) ∈ ⊥⊥⊥ , therefore :( ∀ τ ∈ Λ)( c τ ||− C ( uvvw ) → ξ ⋆ η . η . π c τ ∈ ⊥⊥ ), thus, by the definition (cid:13) (cid:13) of W ∗ :( ∀ τ ∈ Λ)( c τ ||− C ( uvvw ) → W ∗ ⋆ ξ . η . π τ ∈ ⊥⊥ ). Now, by (cid:13) (cid:13) , we have : τ ||− C ( uvw ) → c τ ||− C ( uvvw ), hence the result : τ ||− C ( uvw ) → W ∗ ⋆ ξ . η . π τ ∈ ⊥⊥ . • ( ξ, v ) ⋆ ( π, u ) ∈ ⊥⊥⊥ ⇒ ( k ∗ π , u ) ⋆ ( ξ, v ) . ( ̟, w ) ∈ ⊥⊥⊥ .By hypothesis, we have ( ξ ⋆ π, vu ) ∈ ⊥⊥⊥ , therefore :( ∀ τ ∈ Λ)( c τ ||− C ( vu ) → ξ ⋆ π c τ ∈ ⊥⊥ ), thus, by the definition (cid:13) (cid:13) of k ∗ π :( ∀ τ ∈ Λ)( c τ ||− C ( vu ) → k ∗ π ⋆ ξ . ̟ τ ∈ ⊥⊥ ). Now, by (cid:13) (cid:13) , we have : τ ||− C ( uvw ) → c τ ||− C ( vu ), hence the result : τ ||− C ( uvw ) → k ∗ π ⋆ ξ . ̟ τ ∈ ⊥⊥ . • ( ξ, u ) ⋆ ( k ∗ π , v ) . ( π, v ) ∈ ⊥⊥⊥ ⇒ ( cc ∗ , ) ⋆ ( ξ, u ) . ( π, v ) ∈ ⊥⊥⊥ .By hypothesis, we have ( ξ ⋆ k ∗ π . π, uvv ) ∈ ⊥⊥⊥ , therefore :( ∀ τ ∈ Λ)( c τ ||− C ( uvv ) → ξ ⋆ k ∗ π . π c τ ∈ ⊥⊥ ), thus, by the definition (cid:13) (cid:13) of cc ∗ :( ∀ τ ∈ Λ)( c τ ||− C ( uvv ) → cc ∗ ⋆ ξ . π τ ∈ ⊥⊥ ). But, by (cid:13) (cid:13) , we have : τ ||− C ( uv ) → c τ ||− C ( uvv ), hence the result : τ ||− C ( uv ) → cc ∗ ⋆ ξ . π τ ∈ ⊥⊥ . q.e.d. The C-forcing defined in NN Let F ( ~a ) be a closed formula of the language of ZF with parameters in M .We define the formula p (cid:13) F ( ~a ) (read “ p forces F ( ~a )”) as the formula of ZF ε which ex-presses the C -forcing on N ∈ . In this formula, the variable p is restricted to V <ω .We define a subset ((( F ( ~a )))) of Π by ((( F ( ~a )))) = { ( π, p ) ; π ∈ k p ¬ F ( ~a ) k} . Lemma 19.
For every formula F ( ~x ) of ZF , there exist two proof-like terms p F , p ′ F of A such that :i) ξ ||− ( p (cid:13) F ( ~a )) ⇒ ( p F ξ, p ) |||− ((( F ( ~a )))) ii) ( ξ, p ) |||− ((( F ( ~a )))) ⇒ p ′ F ξ ||− ( p (cid:13) F ( ~a )) for every ξ ∈ Λ and p ∈ V <ω . By a well known property of forcing [7, 16], the formula p (cid:13) F ( ~x ) is equivalent, in ZF ε , tothe formula ∀ q ( C ( pq ) → q ¬ F ( ~x )).It follows that there are two proof-like terms q F , q ′ F such that :(1) q F ||− ( p (cid:13) F ( ~a )) → ∀ q ( C ( pq ) → q ¬ F ( ~a )) ;(2) q ′ F ||− ∀ q ( C ( pq ) → q ¬ F ( ~a )) → ( p (cid:13) F ( ~a )).13) By applying (1) to the hypothesis, we obtain q F ξ ||− ∀ q ( C ( pq ) → q ¬ F ( ~a )) that is : ∀ π ∀ q ∀ τ ( τ ||− C ( pq ) , π ∈ k q ¬ F ( ~a ) k → q F ξ ⋆ τ . π ∈ ⊥⊥ ). It follows that : ∀ π ∀ q ( π ∈ k q ¬ F ( ~a ) k → ∀ τ ( τ ||− C ( pq ) → ( χ )( q F ) ξ ⋆ π τ ∈ ⊥⊥ )).Now π ∈ k q ¬ F ( ~a ) k is the same as ( π, q ) ∈ ((( F ( ~a )))) and ∀ τ ( τ ||− C ( pq ) → ( χ )( q F ) ξ ⋆ π τ ∈ ⊥⊥ ) is the same as ( p F ξ, p ) ⋆ ( π, q ) ∈ ⊥⊥⊥ with p F = λx ( χ )( q F ) x . Thus we obtain ( p F ξ, p ) |||− ((( F ( ~a )))).ii) The hypothesis gives ∀ π ∀ q (( π, q ) ∈ ((( F ( ~a )))) → ( ξ ⋆ π, pq ) ∈ ⊥⊥⊥ ) that is : ∀ π ∀ q ∀ τ ( π ∈ k q ¬ F ( ~a ) k , τ ||− C ( pq ) → ξ ⋆ π τ ∈ ⊥⊥ ) and therefore : ∀ π ∀ q ∀ τ ( τ ||− C ( pq ) , π ∈ k q ¬ F ( ~a ) k → χ ′ ξ ⋆ τ . π ∈ ⊥⊥ ).It follows that χ ′ ξ ||− ∀ q ( C ( pq ) → q ¬ F ( ~a )) and therefore, by (2) :( q ′ F )( χ ′ ) ξ ||− ( p (cid:13) F ( ~a )). We set p ′ F = λx ( q ′ F )( χ ′ ) x . q.e.d. In the general theory of classical realizability, we define a truth value for the formulas ofZF ε and therefore, in particular, for the formulas of ZF. We will define here directly a newtruth value k| F ( a , . . . , a n ) k| for a formula of ZF with parameters in M for the r.a. A .To this aim, we first define the truth values k| a / ∈ b k| , k| a ⊂ b k| of the atomic formulasof ZF ; then that of F ( a , . . . , a n ), by induction on the length of the formula : k| a / ∈ b k| = ((( a / ∈ b ))); k| a ⊂ b k| = ((( a ⊂ b ))) ; k| F → F ′ k| = { ( ξ . π, pq ) ; ( ξ, p ) |||− F, ( π, q ) ∈ k| F ′ k|} ; k|∀ x F ( x, a , . . . , a n ) k| = S a k| F ( a, a , . . . , a n ) k| . Remark.
Be careful, as we said before, these are not the truth values, in the r.a. A , of a / ∈ b and a ⊂ b considered as formulas of ZF ε . We seek here to define directly the C -generic modelon N ∈ without going through a model of ZF ε . Theorem 20 below may be considered as a generalization of the well known result aboutiteration of forcing : the r.a. A , which is a kind of product of A by C , gives the samer.m. as the C -generic extension of N ∈ . Theorem 20.
For each closed formula F of ZF with parameters in the model N , thereexist two proof-like terms χ F , χ ′ F , which only depend on the propositional structure of F ,such that we have, for every ξ ∈ Λ and p ∈ V <ω : ξ ||− ( p (cid:13) F ) ⇒ ( χ F ξ, p ) |||− F and ( ξ, p ) |||− F ⇒ χ ′ F ξ ||− ( p (cid:13) F ) . The propositional structure of F is the propositional formula built with the connective → and only two atoms O ∈ , O ⊂ , which is obtained from F by deleting all quantifiers and byidentifying all atomic formulas t / ∈ u, t ⊂ u respectively with O ∈ , O ⊂ .For instance, the propositional structure of the formula : ∀ X ( ∀ x ( ∀ y (( x, y ) / ∈ Y → y / ∈ X ) → x / ∈ X ) → ∀ x ( x / ∈ X )) is (( O ∈ → O ∈ ) → O ∈ ) → O ∈ .Proof by recurrence on the length of F . • If F is atomic, we have F ≡ a / ∈ b or a ⊂ b . Apply lemma 19 with F ( ~a ) ≡ a / ∈ b or F ( ~a ) ≡ a ⊂ b . • If F ≡ ∀ x F ′ , then p (cid:13) F ≡ ∀ x ( p (cid:13) F ′ ). Therefore ξ ||− p (cid:13) F ≡ ∀ x ( ξ ||− ( p (cid:13) F ′ )).Moreover, ( ξ, p ) |||− F ≡ ∀ x (( ξ, p ) |||− F ′ ).The result is immediate, from the recurrence hypothesis. • If F ≡ F ′ → F ′′ , we have p (cid:13) F ≡ ∀ q ( q (cid:13) F ′ → pq (cid:13) F ′′ ) and therefore : (cid:13) (cid:13) ξ ||− ( p (cid:13) F ) ⇒ ∀ η ∀ q ( η ||− ( q (cid:13) F ′ ) → ξη ||− ( pq (cid:13) F ′′ )).14uppose that ξ ||− ( p (cid:13) F ) and set χ F = λxλy ( χ F ′′ )( x )( χ ′ F ′ ) y .We must show ( χ F ξ, p ) |||− F ′ → F ′′ ; thus, let ( η, q ) |||− F ′ and ( π, r ) ∈ k| F ′′ k| .We must show ( χ F ξ, p ) ⋆ ( η, q ) . ( π, r ) ∈ ⊥⊥⊥ that is ( χ F ξ ⋆ η . π, pqr ) ∈ ⊥⊥⊥ .Thus, let τ ||− C ( pqr ) ; we must show χ F ξ ⋆ η . π τ ∈ ⊥⊥ or else χ F ⋆ ξ . η . π τ ∈ ⊥⊥ .From the recurrence hypothesis applied to ( η, q ) |||− F ′ , we have χ ′ F ′ η ||− ( q (cid:13) F ′ ).From (cid:13) (cid:13) , we have therefore ( ξ )( χ ′ F ′ ) η ||− ( pq (cid:13) F ′′ ).Applying again the recurrence hypothesis, we get :(( χ F ′′ )( ξ )( χ ′ F ′ ) η, pq ) |||− F ′′ . But since ( π, r ) ∈ k| F ′′ k| , we have :(( χ F ′′ )( ξ )( χ ′ F ′ ) η, pq ) ⋆ ( π, r ) ∈ ⊥⊥⊥ , that is (( χ F ′′ )( ξ )( χ ′ F ′ ) η ⋆ π, pqr ) ∈ ⊥⊥⊥ .Since τ ||− C ( pqr ), we have ( χ F ′′ )( ξ )( χ ′ F ′ ) η ⋆ π τ ∈ ⊥⊥ .But, by definition of χ F , we have χ F ⋆ ξ . η . π τ ≻ ( χ F ′′ )( ξ )( χ ′ F ′ ) η ⋆ π τ which gives thedesired result : χ F ⋆ ξ . η . π τ ∈ ⊥⊥ .Suppose now that ( ξ, p ) |||− F ′ → F ′′ ; we set χ ′ F = λxλy ( χ ′ F ′′ )( x )( χ F ′ ) y .We must show χ ′ F ξ ||− ( p (cid:13) F ′ → F ′′ ) that is ∀ q ( χ ′ F ξ ||− ( q (cid:13) F ′ → pq (cid:13) F ′′ )).Thus, let η ||− q (cid:13) F ′ and π ∈ k pq (cid:13) F ′′ k ; we must show χ ′ F ξ ⋆ η . π ∈ ⊥⊥ .By the recurrence hypothesis, we have ( χ F ′ η, q ) |||− F ′ , therefore ( ξ, p )( χ F ′ η, q ) |||− F ′′ orelse, by definition of the algebra A : (( ξ )( χ F ′ ) η, pq ) |||− F ′′ .Applying again the recurrence hypothesis, we have ( χ ′ F ′′ )( ξ )( χ F ′ ) η ||− ( pq (cid:13) F ′′ ) andtherefore ( χ ′ F ′′ )( ξ )( χ F ′ ) η ⋆ π ∈ ⊥⊥ . But we have, by definition of χ ′ F : χ ′ F ξ ⋆ η . π ≻ χ ′ F ⋆ ξ . η . π ≻ ( χ ′ F ′′ )( ξ )( χ F ′ ) η ⋆ π ; the desired result χ ′ F ξ ⋆ η . π ∈ ⊥⊥ follows. q.e.d. Theorem 21.
For each axiom A of ZF , there exists a proof like term Θ A of the r.a. A such that (Θ A , ) |||− A . Indeed, if we denote by N ∈ [ G ] the C -generic model over N ∈ , with G ⊆ C being the genericset, we have N ∈ [ G ] | = ZF. Therefore, N | = ( (cid:13) A ), which means that there is a proof-liketerm Θ ′ A such that Θ ′ A ||− ( (cid:13) A ). By theorem 20, we can take Θ A = χ A Θ ′ A . q.e.d. A A A which gives a very interesting r.m. N . In the following, we use onlythis r.a. and a generic extension A .The terms of A are finite sequences of symbols :) , ( , B , C , I , K , W , cc , a , p , γ, κ, e , χ, χ ′ , h , h , . . . , h i , . . . Λ is the least set which contains these symbols (except parentheses) and is such that : t, u ∈ Λ ⇒ ( t ) u ∈ Λ. PL is the set of terms which do not contain neither p nor any h i .A stack is a finite sequence of terms, separated by the symbol . and terminated by thesymbol π (the empty stack) .Π is therefore the least set such that π ∈ Π and t ∈ Λ , π ∈ Π ⇒ t . π ∈ Π. k π is defined by recurrence : k π = a ; k t.π = λx ( k π )( x ) t .The application ( τ, π ) π τ from Λ × Π into Π consists in replacing π by τ . π .It is therefore recursively defined by : π τ = τ . π ; ( t . π ) τ = t . π τ .15 ⋆ Π is Λ × Π. ⊥⊥ is the least subset of Λ ⋆ Π satisfying the conditions :1. p ⋆ π ∈ ⊥⊥ for every stack π ∈ Π (stop) ;2. ξ ⋆ π ∈ ⊥⊥ ⇒ a ⋆ ξ . π ∈ ⊥⊥ for every ξ ∈ Λ , π ∈ Π (abort) ;3. If at least two out of ξ ⋆ π, η ⋆ π, ζ ⋆ π are in ⊥⊥ , then γ ⋆ ξ . η . ζ . π ∈ ⊥⊥ (fork) ;4. ξ ⋆ π ∈ ⊥⊥ ⇒ e ⋆ h i . h i . η . ξ . π ∈ ⊥⊥ for every ξ, η ∈ Λ and i ∈ N (elimination ofconstants) ;5. ξ ⋆ π ∈ ⊥⊥ ⇒ e ⋆ h i . h j . ξ . η . π ∈ ⊥⊥ for every ξ, η ∈ Λ and i, j ∈ N , i = j ; (eliminationof constants) ξ ⋆ h n . π ∈ ⊥⊥ ⇒ κ ⋆ ξ . π ∈ ⊥⊥ if h n does not appear in ξ, π ; (introduction of constants) and also the general axiomatic conditions for B , C , I , K , W , cc , χ, χ ′ and the application :7. ξ ⋆ η . π ∈ ⊥⊥ ⇒ ( ξ ) η ⋆ π ∈ ⊥⊥ (push) ;8. ξ ⋆ π ∈ ⊥⊥ ⇒ I ⋆ ξ . π ∈ ⊥⊥ (no operation) ;9. ξ ⋆ π ∈ ⊥⊥ ⇒ K ⋆ ξ . η . π ∈ ⊥⊥ (delete) ;10. ξ ⋆ η . η . π ∈ ⊥⊥ ⇒ W ⋆ ξ . η . π ∈ ⊥⊥ (copy) ;11. ξ ⋆ ζ . η . π ∈ ⊥⊥ ⇒ C ⋆ ξ . η . ζ . π ∈ ⊥⊥ (switch) ;12. ξ ⋆ ( η ) ζ . π ∈ ⊥⊥ ⇒ B ⋆ ξ . η . ζ . π ∈ ⊥⊥ (apply) ;13. ξ ⋆ k π . π ∈ ⊥⊥ ⇒ cc ⋆ ξ . π ∈ ⊥⊥ (save the stack) ξ ⋆ τ . π ∈ ⊥⊥ ⇒ χ ⋆ ξ . π τ ∈ ⊥⊥ (read the end of the stack) .15. ξ ⋆ π τ ∈ ⊥⊥ ⇒ χ ′ ⋆ τ . ξ . π ∈ ⊥⊥ (write at the end of the stack) .The property : ξ ⋆ π ∈ ⊥⊥ ⇒ k π ⋆ ξ . ̟ ∈ ⊥⊥ (restore the stack) now follows easily from the definition of k π . Theorem 22. ג has at most 4 elements. Indeed, we have immediately γ ||− ∀ x ג ∀ y ג ( h x ≤ y i = 1 ֒ → ( x = 0 , y = 1 , x = y → ⊥ )). q.e.d. If ג ג a , a be the atoms of ג
2. Then M D = M a = a N and M a = a N are classes inthe r.m. N respectively defined by the formulas x = a x and x = a x .We define the binary functional ⊔ in N as the extension of the functional ( x, y ) x ∪ y on M . We don’t use the symbol ∪ , because it already denotes the union. For instance,we have a ⊔ a = 1 but a ∪ a is empty, since a , a are.The identity x = a x ⊔ a x gives a bijection from N onto M a ×M a .We have M ≺ M a , M a . Moreover, M a = M D is well founded in N and therefore : The class of ordinals On is defined in N . Remark.
If the ground model M satisfies V = L, then M a is isomorphic to L N ∈ , the class ofconstructible sets of N ∈ . Execution of processes
If a given process ξ ⋆ π is in ⊥⊥ , it is obtained by applying precisely one of the rules ofdefinition of ⊥⊥ : if ξ is an application, it is rule 7, else ξ is an instruction and there is one16nd only one corresponding rule.In this way, we get a finite tree, which is the proof that ξ ⋆ π ∈ ⊥⊥ ; it is linear, exceptin the case of rule 3 (instruction γ ) where there is a triple branch. This tree is called theexecution of the process ξ ⋆ π .We can, of course, build this tree for any process ; it may then be infinite. Computing with the instruction γγγ
Let us consider, in the ground model M , some functions f i : N k i → N , satisfying a set ofaxioms of the form : ( ∀ ~x ∈ N k )( t [ ~x ] = u [ ~x ] , . . . , t n − [ ~x ] = u n − [ ~x ] → t [ ~x ] = u [ ~x ])where t i , u i are terms built with the symbols f i and the variables ~x .Moreover, one of these axioms concerns a particular function f , and says that f has atmost one zero : ( ∀ x, y ∈ N )( f [ x ] = f [ y ] = 0 → x = y ).These function symbols are also interpreted in N where we have f i : גN k i → גN and inthis way, we have a set E of realized axioms : I ||− ∀ ~x גN k ( t [ ~x ] = u [ ~x ] , . . . , t n − [ ~x ] = u n − [ ~x ] ֒ → t [ ~x ] = u [ ~x ])and in particular : I ||− ∀ x גN ∀ y גN ( f [ x ] = 0 , f [ y ] = 0 ֒ → x = y ).Now suppose that, with the axioms E and some other axioms realized in N , which do notcontain the symbols f i , like for instance : E + ZF ε + ג has at most 4 elements + גN is countable + · · · we can prove ∃ n int ( f [ n ] = 0). In this way, we get a proof-like term θ such that : θ ||− ∀ n int ( f [ n ] = 0) → ⊥ and θ may contain the instructions e , κ and, above all, γ .We shall show how θ allows to compute the (unique) solution n of the equation f [ n ] = 0.Note that we do not assume that the f i (in particular f ) are recursive (in fact, it is noteven necessary that their domain or range is N ). On the other hand, we may add symbolsfor all recursive functions, since they are defined by axiom systems of this form.Let us add a term constant δ and the rule δ ⋆ n . π ∈ ⊥⊥ in the definition of ⊥⊥ . Thus,we have δ ||− ∀ n int ( f [ n ] = 0) and therefore θ ⋆ δ . π ∈ ⊥⊥ .But any process ξ ⋆ π ∈ ⊥⊥ which does not contain p (but possibly containing δ ) com-putes n . We show this by recurrence on the number of applications of rules for ⊥⊥ usedto build it :If this number is 1, the process is δ ⋆ n . π . Else, the only non trivial case is when theprocess is γ ⋆ ξ . η . ζ . π and when two out of the three processes ξ ⋆ π, η ⋆ π, ζ ⋆ π arein ⊥⊥ (but we don’t know which). By the recurrence hypothesis, at least two of them willgive the integer n which is therefore determined as the only integer obtained at least twotimes (example : γ ⋆ δn . δn . δn . π ). Remarks.
1. Since f is not supposed recursive, the trivial method to find n by trying 0,1,2, . . . may notbe available. A working algorithm is by proving f [ n ] = 0 by equational deduction from E . Bothare, in general, very heavy or totally impracticable. Moral : it is much better to use powerfulset theoretical axioms than weak equational ones to get a program for the result.2. If f has several zeroes, we can define f ′ by a system of equations such that f ′ has only onezero which is the first zero of f , and apply the method to f ′ . This supposes f to be recursive. ג Although it will not be used in the following, it is interesting to show that there is a r.m.of A in which ג Lemma 23. If θ ||− ∀ x ג ( x = 0 , x = 1 → ⊥ ) then, for any formulas F, G : θ ′ ||− F, G → F and θ ′ ||− F, G → G with θ ′ = λxλy ( cc ) λk (( θ )( k ) x )( k ) y . The hypothesis means that θ ||− ⊥ , ⊤ → ⊥ and θ ||− ⊤ , ⊥ → ⊥ .We have x : F, y : G, k : ¬ F ⊢ kx : ⊥ , ( θ )( k ) x : ⊤ → ⊥ , (( θ )( k ) x )( k ) y : ⊥ .It follows that ( cc ) λk (( θ )( k ) x )( k ) y : F hence the first result.We have x : F, y : G, k : ¬ G ⊢ ky : ⊥ , ( θ )( k ) x : ⊥ → ⊥ , (( θ )( k ) x )( k ) y : ⊥ .It follows that ( cc ) λk (( θ )( k ) x )( k ) y : G hence the second result. q.e.d. Suppose that, in every r.m. for the r.a. A , the Boolean algebra ג θ .Choose the formulas F ≡ ∃ n int ( n = 0) and G ≡ ∃ n int ( n = 1). Then, we have λx x ||− F and λx x ||− G . By lemma 23, it follows that θ ′′ = (( θ ′ ) λx x λx x ||− F and also ||− G .Then, by the algorithm given above, the proof-like term θ ′′ computes simultaneously 0and 1, which is a contradiction. גגNN is countable We define two sets, in the ground model M : H = { h i ; i ∈ N } , H = { ( h i , h i . π ) ; i ∈ N , π ∈ Π } and also the bijection h : N → H such that h [ i ] = h i for every i ∈ N .This bijection extends to the model N into a bijection h : גN → גH . Moreover, we havetrivially ||− H ⊆ גH ; in fact I ||− ∀ x ( x ε/ גH → x ε/ H ). Lemma 24. ||− ∀ i גN ∀ j גN ( h [ i ] ε H , h [ j ] ε H , h i = j i 6 = 0 → i = j ) . By definition of H , we have k h [ i ] ε/ H k = k{ h i } → ⊥k .Therefore, it suffices to show that e ||− { h i } , { h j } , h i = j i 6 = 0 , i = j → ⊥ .Let t ||− h i = j i 6 = 0 and u ||− i = j . We must show e ⋆ h i . h j . t . u . π ∈ ⊥⊥ , which followsimmediately from the execution rule of e . q.e.d. Thus we have
N | = ∀ i גN ∀ j גN ( h [ i ] ε H , h [ j ] ε H , ia = ja → i = j ). It follows that : N | = ( H is countable) .Indeed, if i ε גN and h [ i ] ε H , then i is determined by ia , which is an integer of M a andtherefore an integer of N .Define the function symbols pr , pr : N → N by : n = pr [ n ] + (pr [ n ] + pr [ n ])(pr [ n ] + pr [ n ] + 1) (bijection from N onto N ). Theorem 25. κ ||− ∀ ν גN ∃ n גN { h [ n ] ε H , ν = pr [ n ] } . ||− גN is countable. ν ∈ N , π ∈ Π and ξ ||− ∀ n גN { ν = pr [ n ] ֒ → h [ n ] ε/ H } . Thus, we have ξ ⋆ h n . π ∈ ⊥⊥ forall n ∈ N such that ν = pr [ n ]. There is an infinity of such n , so that we can choose onesuch that h n does not appear in ξ, π . It follows that κ ⋆ ξ . π ∈ ⊥⊥ .Since h : גN → גH is a bijection, we obtain a surjection from H onto גN . It follows that : N | = ( גN is countable ). q.e.d. Theorem 26.
N | = NEPC (the non extensional principle of choice).
This means that for any formula R ( x, y ) of ZF ε , there is a binary relation Φ( x, y ) suchthat ||− ∀ x ∀ y ∀ y ′ (Φ( x, y ) , Φ( x, y ′ ) → y = y ′ ) (functional relation) ; ||− ∀ x ∀ y ( R ( x, y ) → ∃ y ′ { R ( x, y ′ ) , Φ( x, y ′ ) } ) (choice).This does not give the usual principle of choice in the model N ∈ of ZF because, even if R is compatible with the extensional equivalence = ∈ , Φ is not necessarily so.By lemma 13, we have ||− ∀ x ∀ y ( R ( x, y ) → ∃ ̟ ג Π R ( x, f [ x, ̟ ])) where f is a functionalsymbol defined in M . Now, Π is countable in M , thus ג Π is equipotent to גN andtherefore countable by theorem 25. Therefore, we can define Φ( x, y ) as “ y = f [ x, ̟ ] forthe first ̟ ε ג Π such that R ( x, f [ x, ̟ ])”. q.e.d. By the results of [12], it follows also that
N | = ( R is not well orderable ).Note that these results do not use the instruction γ and therefore are valid for any ג γ , i.e. the fact that ג Theorem 27.
N | = the axiom of well ordered choice (WOC) i.e. : The product of afamily of non void sets indexed by a well ordered set is non void. This follows immediately from NEPC and the fact that On is isomorphic to a class of N . q.e.d. Remark.
In fact, since N satisfies NEPC, it also satisfies the well ordered principle of choice(WOPC). Theorem 27 has two interesting consequences :1. There exists a proof-like term Θ
W OC ||−
WOC which means that we now have aprogram for the axiom WOC, which is a λ -term with the instructions γ, κ, e .2. This gives a new proof that AC (and even “ R is well orderable” ) is not a consequenceof ZF +WOC [6]. A A and a program for AC (and others) Lemma 28.
Let R ( x, y ) be a formula of ZF ε such that R ( a x, a y ) defines, in N , a func-tional from M a into M a or from M a into M a . Then, this functional has a countableimage. Remember that M a i ( i = 0 ,
1) is the class defined by a i x = x .Suppose, for instance, that R ( x, y ) defines a functional from M a into M a i.e. : N | = ∀ x ∀ y ∀ y ′ ( R ( a x, a y ) , R ( a x, a y ′ ) → a y = a y ′ ).19pplying lemma 13 to the formula ¬ R ( a x, a y ), we obtain : I ||− ∀ ̟ ג Π ¬ R ( a x, a f [ a x, ̟ ]) → ∀ y ¬ R ( a x, a y )for some functional f : M× Π → M defined in M .By lemma 7, we have a f [ a x, ̟ ] = a f [ a a x, ̟ ]. Since a a = 0, we get : I ||− ∀ ̟ ג Π ¬ R ( a x, a f [ ∅ , ̟ ]) → ∀ y ¬ R ( a x, a y ).Now Π is countable (in M ), thus ג Π is equipotent to גN ; therefore ג Π is countable (in N )by theorem 25. Hence we have, for some surjection g from N onto { f [ ∅ , ̟ ] ; ̟ ε ג Π } : ||− ∀ n int ¬ R ( a x, a g ( n )) → ∀ y ¬ R ( a x, a y ).Thus, we have ||− ∃ y R ( a x, a y ) → ∃ n int R ( a x, a g ( n )). It follows that a g is a surjectionfrom N onto the image of R . q.e.d. Remark.
This shows that M a and M a cannot be both well founded : otherwise, their classesof ordinals would be isomorphic, which is excluded by lemma 28 and theorem 16.Much more general results are given in [12, 14]. In order to simplify a little, we suppose that the ground model M satisfy V = L (thisis not really necessary). The important point is the principle of choice (PC) : there is abijective functional between M and On .We denote by On a the class of ordinals of M a , which is order isomorphic to the classOn N ∈ of ordinals of N ∈ . Lemma 29.
N | = ∃ X ∀ x ∃ y { x = ∈ y, h a y ∈ a X i ≥ a } . For each α in On a , we can choose, by WOPC, an element W α of the class of sets ex-tensionally equivalent to V α . Now, the functional α a W α from On a into M a has acountable image by lemma 28. It follows that there exists α such that a W α = a W α for an unbounded class U of α in On a .Now, we have ∀ x ∃ α { U ( α ) , x ∈ W α } (in any model of ZF, every set belongs to some V α )and therefore ∀ x ∃ y ∃ α { U ( α ) , x = ∈ y, y ε W α } . By lemma 11, it follows that : ∀ x ∃ y ∃ α { U ( α ) , x = ∈ y, h y ∈ Cl[ W α ] i = 1 } . But, by lemma 7, we have : a = a h y ∈ Cl[ W α ] i = a h a y ∈ a Cl[ a W α ] i and, by U ( α ), a W α = a W α .Therefore, we have ∀ x ∃ y ∃ α { U ( α ) , x = ∈ y, a h a y ∈ a Cl[ a W α ] i = a } .Hence the result, with X = Cl[ a W α ]. q.e.d. Theorem 30.
There exists a generic extension N ∈ [ G ] of N ∈ which satisfies AC. Let Y = { a y ; h a y ∈ a X i ≥ a } : such a set exists in N by lemma 12.By lemma 29, ( a x, a y ) a x ⊔ a y is a surjective functional from M a × Y onto thewhole model N ∈ of ZF.Since M a | = V = L, there exists a surjective functional Ψ : On × Y → N ∈ and therefore N ∈ is the union of the Z α with α in On , where Z α is the image by Ψ of { α }× Y .Let us consider, for each ordinal α of N ∈ , the equivalence relation ≃ α on Y defined by y ≃ α y ′ ⇔ Ψ( α, y ) = ∈ Ψ( α, y ′ ). These equivalence relations form a set (included in P ( Y )). Thus, there exist an ordinal α and for all β , a surjection S β : Z → Z β with Z = S α<α Z α .Finally, using NECP (non extensional choice principle) we get a surjective functional from20 n × Z onto N ∈ (note that, by definition, Z is a set of N ∈ ).Let us now make Z countable (or even only well ordered) by means of a generic G on N ∈ ;then N ∈ [ G ] | = AC. q.e.d. In the following, we take for ( C, ≤ ) the set of conditions of N ∈ given by theorem 30.Applying the constructions of section 3, we obtain a r.a. A and a generic model N ∈ [ G ]which satisfies AC by theorem 30. Therefore, we have N ∈ | = ( (cid:13) AC).It follows that ||− ( (cid:13) AC) and finally |||−
AC by theorem 20. Hence the :
Theorem 31.
There exists a proof-like term Θ AC of the r.a. A such that (Θ AC , ) |||− AC.
More generally by theorem 21, it follows that for each axiom A of ZFC, there exists aproof-like term Θ A of the r.a. A such that (Θ A , ) |||− A . Note that Θ AC is the only onewhich contains the instructions γ, κ, e . Example of computation with Θ AC Θ AC Consider a function f : N → ∃ n int ( f [ n ] = 0) in the theoryZF + AC + E where E is a set of axioms of the form :( ∀ ~x ∈ N k )( t [ ~x ] = u [ ~x ] , . . . , t n − [ ~x ] = u n − [ ~x ] → t [ ~x ] = u [ ~x ])(cf. section 4, Computing with the instruction γ ).We denote by E ∈ the conjunction of the corresponding set, written in the language of N ∈ :( ∀ ~x ∈ N k )( t [ ~x ] = ∈ u [ ~x ] , . . . , t n − [ ~x ] = ∈ u n − [ ~x ] → t [ ~x ] = ∈ u [ ~x ]).This proof gives a term Φ written with the only combinators B , C , I , K , W , cc such that : ⊢ Φ : ZFC , E ∈ → ( ∃ n ∈ N )( f [ n ] = ∈ of axioms of ZFC.Therefore, by theorems 21 and 31, we have in the r.a. A :(Φ ∗ Θ ZF C , ) |||− ( E ∈ → ( ∃ n ∈ N )( f [ n ] = ∈ t ∈ Λ, we obtain t ∗ replacing C , K , W , cc by C ∗ , K ∗ , W ∗ , cc ∗ ).By theorem 20 applied with F ≡ E ∈ → ( ∃ n ∈ N )( f [ n ] = ∈ χ ′ F )(Φ ∗ )Θ ZF C ||− (cid:16) (cid:13) ( E ∈ → ( ∃ n ∈ N )( f [ n ] = ∈ (cid:17) .Since (cid:13) is a forcing on N ∈ , and F is arithmetical, we have :ZF ε ⊢ (cid:16) (cid:13) ( E ∈ → ( ∃ n ∈ N )( f [ n ] = ∈ (cid:17) → (cid:16) E → ∃ n int ( f [ n ] = 0) (cid:17) .Hence, there is a proof-like term Ξ in the r.a. A such that :(Ξ)( χ ′ F )(Φ ∗ )Θ ZF C ||− E → ∃ n int ( f [ n ] = 0).Now we can apply the algorithm of section 4, Computing with the instruction γ . Programs for other axioms.
Consider an axiom A that we can prove consistent withZFC by forcing. Let C be the set of conditions given by theorem 30 and take for ( C, ≤ ) theset of conditions which gives the iterated forcing for A over C . Applying the constructionsof section 3, we obtain a r.a. A and a generic model N ∈ [ G ] which satisfies A . It followsthat ||− ( (cid:13) A ) and finally |||− A by theorem 20. Theorem 32.
For every formula A of the language of ZF which can be proved consistentwith ZFC by forcing, there exists a proof-like term Θ A of the r.a. A such that (Θ A , ) |||− F . Then we can use Θ A in computations as explained above.21 inal remark. In the introdution, I said that the problem is to turn proofs in ZFC into programs. Butthis is an incorrect formulation and, moreover this is rather trivial : there is a simplealgorithm to transform a proof in ZFC of an arithmetical formula A into a program.First, transform it into a proof of ZF ⊢ A by restricting its quantifiers to L. Then, geta program from this new proof using c.r.The problem solved in the present article is different : consider the program Pr obtainedfrom a proof of ZF ⊢ ( AC → A ) and, forgetting this proof , transform directly theprogram Pr. This is more difficult because the program contains much less informationthan the proof which gave it. In fact, the interesting point is that this is possible.You may compare with the problem of modifying a program, knowing its source code oronly its compiled code. The first situation is (very) much easier. References [1] S. Berardi, M. Bezem and T. Coquand.
On the computational content of the axiomof choice.
J. Symb. Logic 63, 2 p. 600-622 (1998).[2] U. Berger and P. Oliva.
Modified bar recursion and classical dependent choice.
Proc. Logic Colloquium 2001 (Springer) p. 89-107 (2005).[3] H.B. Curry, R. Feys.
Combinatory Logic.
North-Holland (1958).[4] T. Griffin.
A formulæ-as-type notion of control.
Conf. record 17th A.C.M. Symp. on Principles of Progr. Languages (1990).[5] W. Howard.
The formulas–as–types notion of construction.
Essays on combinatory logic, λ -calculus, and formalism, J.P. Seldin and J.R. Hindleyed., Acad. Press p. 479–490 (1980).[6] T.J. Jech. The axiom of choice.
North Holland (1973).[7] T.J. Jech.
Set theory.
Springer (2006)[8] A. Karagila.
Realizing realizability results with classical constructions.
Bull. Symb. Log. 25 p. 429-445 (2019).[9] G. Kreisel.
On the interpretation of non-finitist proofs I.
J. Symb. Log. 16, 4 p. 241-267 (1951).[10] G. Kreisel.
On the interpretation of non-finitist proofs II.
J. Symb. Log. 17, 1 p. 43-58 (1952).[11] J.-L. Krivine.
Realizability algebras II : new models of ZF + DC.
Log. Methods Comp. Sc. 8 (1:10) p. 1-28 (2012).[12] J.-L. Krivine.
Realizability algebras III : some examples.
Math. Struct. in Comp. Sc. 28, 1, p. 45-76 (2018)2213] J.-L. Krivine.
Realizability in classical logic.
Panoramas et synth`eses, Soci´et´e Math´ematique de France, 27, p. 197-229 (2009).[14] J.-L. Krivine.
On the structure of classical realizability models of ZF .
Proc. TYPES’2014 - LIPIcs, 39, p. 146-161 (2015).[15] J.-L. Krivine.
Bar recursion in classical realizability : dependent choice and contin-uum hypothesis.
Proc. CSL 2016, LIPIcs 62, p. 25:1-25:11 (2016).[16] K. Kunen.
Set theory. An introduction to independence proofs.
North Holland (1992).[17] A. Miquel.
Forcing as a program transformation.
Logic in Computer Science (LICS’11) p. 197-206 (2011).[18] C. Spector.
Provably recursive functionals of analysis : a consistency proof of anal-ysis by an extension of principles in current intuitionistic mathematics.
Recursivefunction theory : Proc. Symp. in pure math. vol. 5, Amer. Math. Soc. p.1-27 (1962).[19] T. Streicher.
A classical realizability model arising from a stable model of untyped λ -calculus.-calculus.