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

Theorem hta 8616
 Description: A ZFC emulation of Hilbert's transfinite axiom. The set 𝐵 has the properties of Hilbert's epsilon, except that it also depends on a well-ordering 𝑅. 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 𝑅 We 𝐴 as an antecedent. Class 𝐴 collects the sets of the least rank for which 𝜑(𝑥) is true. Class 𝐵, which emulates the epsilon, is the minimum element in a well-ordering 𝑅 on 𝐴. If a well-ordering 𝑅 on 𝐴 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 𝑅 with a dummy setvar variable, say 𝑤, and attach 𝑤 We 𝐴 as an antecedent in each step of the ZFC version of the HOL proof until the epsilon is eliminated. At that point, 𝐵 (which will have 𝑤 as a free variable) will no longer be present, and we can eliminate 𝑤 We 𝐴 by applying exlimiv 1843 and weth 9173, using scottexs 8606 to establish the existence of 𝐴. For a version of this theorem scheme using class (meta)variables instead of wff (meta)variables, see htalem 8615. (Contributed by NM, 11-Mar-2004.) (Revised by Mario Carneiro, 25-Jun-2015.)
Hypotheses
Ref Expression
hta.1 𝐴 = {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))}
hta.2 𝐵 = (𝑧𝐴𝑤𝐴 ¬ 𝑤𝑅𝑧)
Assertion
Ref Expression
hta (𝑅 We 𝐴 → (𝜑[𝐵 / 𝑥]𝜑))
Distinct variable groups:   𝑥,𝑦   𝑧,𝑤,𝐴   𝜑,𝑦   𝑤,𝑅,𝑧
Allowed substitution hints:   𝜑(𝑥,𝑧,𝑤)   𝐴(𝑥,𝑦)   𝐵(𝑥,𝑦,𝑧,𝑤)   𝑅(𝑥,𝑦)

Proof of Theorem hta
StepHypRef Expression
1 19.8a 2036 . . 3 (𝜑 → ∃𝑥𝜑)
2 scott0s 8607 . . . 4 (∃𝑥𝜑 ↔ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ≠ ∅)
3 hta.1 . . . . 5 𝐴 = {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))}
43neeq1i 2841 . . . 4 (𝐴 ≠ ∅ ↔ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ≠ ∅)
52, 4bitr4i 265 . . 3 (∃𝑥𝜑𝐴 ≠ ∅)
61, 5sylib 206 . 2 (𝜑𝐴 ≠ ∅)
7 scottexs 8606 . . . . 5 {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ∈ V
83, 7eqeltri 2679 . . . 4 𝐴 ∈ V
9 hta.2 . . . 4 𝐵 = (𝑧𝐴𝑤𝐴 ¬ 𝑤𝑅𝑧)
108, 9htalem 8615 . . 3 ((𝑅 We 𝐴𝐴 ≠ ∅) → 𝐵𝐴)
1110ex 448 . 2 (𝑅 We 𝐴 → (𝐴 ≠ ∅ → 𝐵𝐴))
12 simpl 471 . . . . . 6 ((𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦))) → 𝜑)
1312ss2abi 3632 . . . . 5 {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ⊆ {𝑥𝜑}
143, 13eqsstri 3593 . . . 4 𝐴 ⊆ {𝑥𝜑}
1514sseli 3559 . . 3 (𝐵𝐴𝐵 ∈ {𝑥𝜑})
16 df-sbc 3398 . . 3 ([𝐵 / 𝑥]𝜑𝐵 ∈ {𝑥𝜑})
1715, 16sylibr 222 . 2 (𝐵𝐴[𝐵 / 𝑥]𝜑)
186, 11, 17syl56 35 1 (𝑅 We 𝐴 → (𝜑[𝐵 / 𝑥]𝜑))
 Colors of variables: wff setvar class Syntax hints:  ¬ wn 3   → wi 4   ∧ wa 382  ∀wal 1472   = wceq 1474  ∃wex 1694   ∈ wcel 1975  {cab 2591   ≠ wne 2775  ∀wral 2891  Vcvv 3168  [wsbc 3397   ⊆ wss 3535  ∅c0 3869   class class class wbr 4573   We wwe 4982  ‘cfv 5786  ℩crio 6484  rankcrnk 8482 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1711  ax-4 1726  ax-5 1825  ax-6 1873  ax-7 1920  ax-8 1977  ax-9 1984  ax-10 2004  ax-11 2019  ax-12 2031  ax-13 2228  ax-ext 2585  ax-rep 4689  ax-sep 4699  ax-nul 4708  ax-pow 4760  ax-pr 4824  ax-un 6820  ax-reg 8353  ax-inf2 8394 This theorem depends on definitions:  df-bi 195  df-or 383  df-an 384  df-3or 1031  df-3an 1032  df-tru 1477  df-ex 1695  df-nf 1700  df-sb 1866  df-eu 2457  df-mo 2458  df-clab 2592  df-cleq 2598  df-clel 2601  df-nfc 2735  df-ne 2777  df-ral 2896  df-rex 2897  df-reu 2898  df-rmo 2899  df-rab 2900  df-v 3170  df-sbc 3398  df-csb 3495  df-dif 3538  df-un 3540  df-in 3542  df-ss 3549  df-pss 3551  df-nul 3870  df-if 4032  df-pw 4105  df-sn 4121  df-pr 4123  df-tp 4125  df-op 4127  df-uni 4363  df-int 4401  df-iun 4447  df-iin 4448  df-br 4574  df-opab 4634  df-mpt 4635  df-tr 4671  df-eprel 4935  df-id 4939  df-po 4945  df-so 4946  df-fr 4983  df-we 4985  df-xp 5030  df-rel 5031  df-cnv 5032  df-co 5033  df-dm 5034  df-rn 5035  df-res 5036  df-ima 5037  df-pred 5579  df-ord 5625  df-on 5626  df-lim 5627  df-suc 5628  df-iota 5750  df-fun 5788  df-fn 5789  df-f 5790  df-f1 5791  df-fo 5792  df-f1o 5793  df-fv 5794  df-riota 6485  df-om 6931  df-wrecs 7267  df-recs 7328  df-rdg 7366  df-r1 8483  df-rank 8484 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator