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 1933 and weth 10251, using scottexs 9645 to establish the existence of 𝐴. For a version of this theorem scheme using class (meta)variables instead of wff (meta)variables, see htalem 9654. (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 2174 | . . 3 ⊢ (𝜑 → ∃𝑥𝜑) | |
2 | scott0s 9646 | . . . 4 ⊢ (∃𝑥𝜑 ↔ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ≠ ∅) | |
3 | hta.1 | . . . . 5 ⊢ 𝐴 = {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} | |
4 | 3 | neeq1i 3008 | . . . 4 ⊢ (𝐴 ≠ ∅ ↔ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ≠ ∅) |
5 | 2, 4 | bitr4i 277 | . . 3 ⊢ (∃𝑥𝜑 ↔ 𝐴 ≠ ∅) |
6 | 1, 5 | sylib 217 | . 2 ⊢ (𝜑 → 𝐴 ≠ ∅) |
7 | scottexs 9645 | . . . . 5 ⊢ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ∈ V | |
8 | 3, 7 | eqeltri 2835 | . . . 4 ⊢ 𝐴 ∈ V |
9 | hta.2 | . . . 4 ⊢ 𝐵 = (℩𝑧 ∈ 𝐴 ∀𝑤 ∈ 𝐴 ¬ 𝑤𝑅𝑧) | |
10 | 8, 9 | htalem 9654 | . . 3 ⊢ ((𝑅 We 𝐴 ∧ 𝐴 ≠ ∅) → 𝐵 ∈ 𝐴) |
11 | 10 | ex 413 | . 2 ⊢ (𝑅 We 𝐴 → (𝐴 ≠ ∅ → 𝐵 ∈ 𝐴)) |
12 | simpl 483 | . . . . . 6 ⊢ ((𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦))) → 𝜑) | |
13 | 12 | ss2abi 4000 | . . . . 5 ⊢ {𝑥 ∣ (𝜑 ∧ ∀𝑦([𝑦 / 𝑥]𝜑 → (rank‘𝑥) ⊆ (rank‘𝑦)))} ⊆ {𝑥 ∣ 𝜑} |
14 | 3, 13 | eqsstri 3955 | . . . 4 ⊢ 𝐴 ⊆ {𝑥 ∣ 𝜑} |
15 | 14 | sseli 3917 | . . 3 ⊢ (𝐵 ∈ 𝐴 → 𝐵 ∈ {𝑥 ∣ 𝜑}) |
16 | df-sbc 3717 | . . 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 1537 = wceq 1539 ∃wex 1782 ∈ wcel 2106 {cab 2715 ≠ wne 2943 ∀wral 3064 Vcvv 3432 [wsbc 3716 ⊆ wss 3887 ∅c0 4256 class class class wbr 5074 We wwe 5543 ‘cfv 6433 ℩crio 7231 rankcrnk 9521 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1798 ax-4 1812 ax-5 1913 ax-6 1971 ax-7 2011 ax-8 2108 ax-9 2116 ax-10 2137 ax-11 2154 ax-12 2171 ax-ext 2709 ax-rep 5209 ax-sep 5223 ax-nul 5230 ax-pow 5288 ax-pr 5352 ax-un 7588 ax-reg 9351 ax-inf2 9399 |
This theorem depends on definitions: df-bi 206 df-an 397 df-or 845 df-3or 1087 df-3an 1088 df-tru 1542 df-fal 1552 df-ex 1783 df-nf 1787 df-sb 2068 df-mo 2540 df-eu 2569 df-clab 2716 df-cleq 2730 df-clel 2816 df-nfc 2889 df-ne 2944 df-ral 3069 df-rex 3070 df-rmo 3071 df-reu 3072 df-rab 3073 df-v 3434 df-sbc 3717 df-csb 3833 df-dif 3890 df-un 3892 df-in 3894 df-ss 3904 df-pss 3906 df-nul 4257 df-if 4460 df-pw 4535 df-sn 4562 df-pr 4564 df-op 4568 df-uni 4840 df-int 4880 df-iun 4926 df-iin 4927 df-br 5075 df-opab 5137 df-mpt 5158 df-tr 5192 df-id 5489 df-eprel 5495 df-po 5503 df-so 5504 df-fr 5544 df-we 5546 df-xp 5595 df-rel 5596 df-cnv 5597 df-co 5598 df-dm 5599 df-rn 5600 df-res 5601 df-ima 5602 df-pred 6202 df-ord 6269 df-on 6270 df-lim 6271 df-suc 6272 df-iota 6391 df-fun 6435 df-fn 6436 df-f 6437 df-f1 6438 df-fo 6439 df-f1o 6440 df-fv 6441 df-riota 7232 df-ov 7278 df-om 7713 df-2nd 7832 df-frecs 8097 df-wrecs 8128 df-recs 8202 df-rdg 8241 df-r1 9522 df-rank 9523 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |