MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  hta Structured version   Unicode version

Theorem hta 7813
Description: A ZFC emulation of Hilbert's transfinite axiom. The set  B has the properties of Hilbert's epsilon, except that it also depends on a well-ordering  R. This theorem arose from discussions with Raph Levien on 5-Mar-2004 about translating the HOL proof language, which uses Hilbert's epsilon. See http://us.metamath.org/downloads/choice.txt (copy of obsolete link http://ghilbert.org/choice.txt) and http://us.metamath.org/downloads/megillaward2005he.pdf.

Hilbert's epsilon is described at http://plato.stanford.edu/entries/epsilon-calculus/. This theorem differs from Hilbert's transfinite axiom described on that page in that it requires  R  We  A as an antecedent. Class  A collects the sets of the least rank for which  ph ( x ) is true. Class  B, which emulates the epsilon, is the minimum element in a well-ordering  R on  A.

If a well-ordering  R on  A can be expressed in a closed form, as might be the case if we are working with say natural numbers, we can eliminate the antecedent with modus ponens, giving us the exact equivalent of Hilbert's transfinite axiom. Otherwise, we replace  R with a dummy set variable, say  w, and attach  w  We  A as an antecedent in each step of the ZFC version of the HOL proof until the epsilon is eliminated. At that point,  B (which will have  w as a free variable) will no longer be present, and we can eliminate  w  We  A by applying exlimiv 1644 and weth 8367, using scottexs 7803 to establish the existence of 
A.

For a version of this theorem scheme using class (meta)variables instead of wff (meta)variables, see htalem 7812. (Contributed by NM, 11-Mar-2004.) (Revised by Mario Carneiro, 25-Jun-2015.)

Hypotheses
Ref Expression
hta.1  |-  A  =  { x  |  (
ph  /\  A. y
( [. y  /  x ]. ph  ->  ( rank `  x )  C_  ( rank `  y ) ) ) }
hta.2  |-  B  =  ( iota_ z  e.  A A. w  e.  A  -.  w R z )
Assertion
Ref Expression
hta  |-  ( R  We  A  ->  ( ph  ->  [. B  /  x ]. ph ) )
Distinct variable groups:    x, y    z, w, A    ph, y    w, R, z
Allowed substitution hints:    ph( x, z, w)    A( x, y)    B( x, y, z, w)    R( x, y)

Proof of Theorem hta
StepHypRef Expression
1 19.8a 1762 . . 3  |-  ( ph  ->  E. x ph )
2 scott0s 7804 . . . 4  |-  ( E. x ph  <->  { x  |  ( ph  /\  A. y ( [. y  /  x ]. ph  ->  (
rank `  x )  C_  ( rank `  y
) ) ) }  =/=  (/) )
3 hta.1 . . . . 5  |-  A  =  { x  |  (
ph  /\  A. y
( [. y  /  x ]. ph  ->  ( rank `  x )  C_  ( rank `  y ) ) ) }
43neeq1i 2608 . . . 4  |-  ( A  =/=  (/)  <->  { x  |  (
ph  /\  A. y
( [. y  /  x ]. ph  ->  ( rank `  x )  C_  ( rank `  y ) ) ) }  =/=  (/) )
52, 4bitr4i 244 . . 3  |-  ( E. x ph  <->  A  =/=  (/) )
61, 5sylib 189 . 2  |-  ( ph  ->  A  =/=  (/) )
7 scottexs 7803 . . . . 5  |-  { x  |  ( ph  /\  A. y ( [. y  /  x ]. ph  ->  (
rank `  x )  C_  ( rank `  y
) ) ) }  e.  _V
83, 7eqeltri 2505 . . . 4  |-  A  e. 
_V
9 hta.2 . . . 4  |-  B  =  ( iota_ z  e.  A A. w  e.  A  -.  w R z )
108, 9htalem 7812 . . 3  |-  ( ( R  We  A  /\  A  =/=  (/) )  ->  B  e.  A )
1110ex 424 . 2  |-  ( R  We  A  ->  ( A  =/=  (/)  ->  B  e.  A ) )
12 simpl 444 . . . . . 6  |-  ( (
ph  /\  A. y
( [. y  /  x ]. ph  ->  ( rank `  x )  C_  ( rank `  y ) ) )  ->  ph )
1312ss2abi 3407 . . . . 5  |-  { x  |  ( ph  /\  A. y ( [. y  /  x ]. ph  ->  (
rank `  x )  C_  ( rank `  y
) ) ) } 
C_  { x  | 
ph }
143, 13eqsstri 3370 . . . 4  |-  A  C_  { x  |  ph }
1514sseli 3336 . . 3  |-  ( B  e.  A  ->  B  e.  { x  |  ph } )
16 df-sbc 3154 . . 3  |-  ( [. B  /  x ]. ph  <->  B  e.  { x  |  ph }
)
1715, 16sylibr 204 . 2  |-  ( B  e.  A  ->  [. B  /  x ]. ph )
186, 11, 17syl56 32 1  |-  ( R  We  A  ->  ( ph  ->  [. B  /  x ]. ph ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 359   A.wal 1549   E.wex 1550    = wceq 1652    e. wcel 1725   {cab 2421    =/= wne 2598   A.wral 2697   _Vcvv 2948   [.wsbc 3153    C_ wss 3312   (/)c0 3620   class class class wbr 4204    We wwe 4532   ` cfv 5446   iota_crio 6534   rankcrnk 7681
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1555  ax-5 1566  ax-17 1626  ax-9 1666  ax-8 1687  ax-13 1727  ax-14 1729  ax-6 1744  ax-7 1749  ax-11 1761  ax-12 1950  ax-ext 2416  ax-rep 4312  ax-sep 4322  ax-nul 4330  ax-pow 4369  ax-pr 4395  ax-un 4693  ax-reg 7552  ax-inf2 7588
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1328  df-ex 1551  df-nf 1554  df-sb 1659  df-eu 2284  df-mo 2285  df-clab 2422  df-cleq 2428  df-clel 2431  df-nfc 2560  df-ne 2600  df-ral 2702  df-rex 2703  df-reu 2704  df-rmo 2705  df-rab 2706  df-v 2950  df-sbc 3154  df-csb 3244  df-dif 3315  df-un 3317  df-in 3319  df-ss 3326  df-pss 3328  df-nul 3621  df-if 3732  df-pw 3793  df-sn 3812  df-pr 3813  df-tp 3814  df-op 3815  df-uni 4008  df-int 4043  df-iun 4087  df-iin 4088  df-br 4205  df-opab 4259  df-mpt 4260  df-tr 4295  df-eprel 4486  df-id 4490  df-po 4495  df-so 4496  df-fr 4533  df-we 4535  df-ord 4576  df-on 4577  df-lim 4578  df-suc 4579  df-om 4838  df-xp 4876  df-rel 4877  df-cnv 4878  df-co 4879  df-dm 4880  df-rn 4881  df-res 4882  df-ima 4883  df-iota 5410  df-fun 5448  df-fn 5449  df-f 5450  df-f1 5451  df-fo 5452  df-f1o 5453  df-fv 5454  df-riota 6541  df-recs 6625  df-rdg 6660  df-r1 7682  df-rank 7683
  Copyright terms: Public domain W3C validator