Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > MPE Home > Th. List > hta | Structured version Visualization version GIF version |
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
https://us.metamath.org/downloads/choice.txt
(copy of obsolete link
http://ghilbert.org/choice.txt) and
https://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 Hilbert's 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 1932 and weth 10330, using scottexs 9722 to establish the existence of 𝐴. For a version of this theorem scheme using class (meta)variables instead of wff (meta)variables, see htalem 9731. (Contributed by NM, 11-Mar-2004.) (Revised by Mario Carneiro, 25-Jun-2015.) |
Ref | Expression |
---|---|
hta.1 | ⊢ 𝐴 = {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} |
hta.2 | ⊢ 𝐵 = (℩𝑧 ∈ 𝐴 ∀𝑤 ∈ 𝐴 ¬ 𝑤𝑅𝑧) |
Ref | Expression |
---|---|
hta | ⊢ (𝑅 We 𝐴 → (𝜑 → [𝐵 / 𝑥]𝜑)) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | 19.8a 2173 | . . 3 ⊢ (𝜑 → ∃𝑥𝜑) | |
2 | scott0s 9723 | . . . 4 ⊢ (∃𝑥𝜑 ↔ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ≠ ∅) | |
3 | hta.1 | . . . . 5 ⊢ 𝐴 = {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} | |
4 | 3 | neeq1i 3005 | . . . 4 ⊢ (𝐴 ≠ ∅ ↔ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ≠ ∅) |
5 | 2, 4 | bitr4i 277 | . . 3 ⊢ (∃𝑥𝜑 ↔ 𝐴 ≠ ∅) |
6 | 1, 5 | sylib 217 | . 2 ⊢ (𝜑 → 𝐴 ≠ ∅) |
7 | scottexs 9722 | . . . . 5 ⊢ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ∈ V | |
8 | 3, 7 | eqeltri 2833 | . . . 4 ⊢ 𝐴 ∈ V |
9 | hta.2 | . . . 4 ⊢ 𝐵 = (℩𝑧 ∈ 𝐴 ∀𝑤 ∈ 𝐴 ¬ 𝑤𝑅𝑧) | |
10 | 8, 9 | htalem 9731 | . . 3 ⊢ ((𝑅 We 𝐴 ∧ 𝐴 ≠ ∅) → 𝐵 ∈ 𝐴) |
11 | 10 | ex 413 | . 2 ⊢ (𝑅 We 𝐴 → (𝐴 ≠ ∅ → 𝐵 ∈ 𝐴)) |
12 | simpl 483 | . . . . . 6 ⊢ ((𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦))) → 𝜑) | |
13 | 12 | ss2abi 4009 | . . . . 5 ⊢ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ⊆ {𝑥 ∣ 𝜑} |
14 | 3, 13 | eqsstri 3964 | . . . 4 ⊢ 𝐴 ⊆ {𝑥 ∣ 𝜑} |
15 | 14 | sseli 3926 | . . 3 ⊢ (𝐵 ∈ 𝐴 → 𝐵 ∈ {𝑥 ∣ 𝜑}) |
16 | df-sbc 3726 | . . 3 ⊢ ([𝐵 / 𝑥]𝜑 ↔ 𝐵 ∈ {𝑥 ∣ 𝜑}) | |
17 | 15, 16 | sylibr 233 | . 2 ⊢ (𝐵 ∈ 𝐴 → [𝐵 / 𝑥]𝜑) |
18 | 6, 11, 17 | syl56 36 | 1 ⊢ (𝑅 We 𝐴 → (𝜑 → [𝐵 / 𝑥]𝜑)) |
Colors of variables: wff setvar class |
Syntax hints: ¬ wn 3 → wi 4 ∧ wa 396 ∀wal 1538 = wceq 1540 ∃wex 1780 ∈ wcel 2105 {cab 2713 ≠ wne 2940 ∀wral 3061 Vcvv 3440 [wsbc 3725 ⊆ wss 3896 ∅c0 4266 class class class wbr 5086 We wwe 5561 ‘cfv 6465 ℩crio 7272 rankcrnk 9598 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1796 ax-4 1810 ax-5 1912 ax-6 1970 ax-7 2010 ax-8 2107 ax-9 2115 ax-10 2136 ax-11 2153 ax-12 2170 ax-ext 2707 ax-rep 5223 ax-sep 5237 ax-nul 5244 ax-pow 5302 ax-pr 5366 ax-un 7629 ax-reg 9427 ax-inf2 9476 |
This theorem depends on definitions: df-bi 206 df-an 397 df-or 845 df-3or 1087 df-3an 1088 df-tru 1543 df-fal 1553 df-ex 1781 df-nf 1785 df-sb 2067 df-mo 2538 df-eu 2567 df-clab 2714 df-cleq 2728 df-clel 2814 df-nfc 2886 df-ne 2941 df-ral 3062 df-rex 3071 df-rmo 3349 df-reu 3350 df-rab 3404 df-v 3442 df-sbc 3726 df-csb 3842 df-dif 3899 df-un 3901 df-in 3903 df-ss 3913 df-pss 3915 df-nul 4267 df-if 4471 df-pw 4546 df-sn 4571 df-pr 4573 df-op 4577 df-uni 4850 df-int 4892 df-iun 4938 df-iin 4939 df-br 5087 df-opab 5149 df-mpt 5170 df-tr 5204 df-id 5506 df-eprel 5512 df-po 5520 df-so 5521 df-fr 5562 df-we 5564 df-xp 5613 df-rel 5614 df-cnv 5615 df-co 5616 df-dm 5617 df-rn 5618 df-res 5619 df-ima 5620 df-pred 6224 df-ord 6291 df-on 6292 df-lim 6293 df-suc 6294 df-iota 6417 df-fun 6467 df-fn 6468 df-f 6469 df-f1 6470 df-fo 6471 df-f1o 6472 df-fv 6473 df-riota 7273 df-ov 7319 df-om 7759 df-2nd 7878 df-frecs 8145 df-wrecs 8176 df-recs 8250 df-rdg 8289 df-r1 9599 df-rank 9600 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |