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

Theorem dfac3 10159
Description: Equivalence of two versions of the Axiom of Choice. The left-hand side is defined as the Axiom of Choice (first form) of [Enderton] p. 49. The right-hand side is the Axiom of Choice of [TakeutiZaring] p. 83. The proof does not depend on AC. (Contributed by NM, 24-Mar-2004.) (Revised by Stefan O'Rear, 22-Feb-2015.)
Assertion
Ref Expression
dfac3 (CHOICE ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
Distinct variable group:   𝑥,𝑓,𝑧

Proof of Theorem dfac3
Dummy variables 𝑦 𝑤 𝑣 𝑢 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-ac 10154 . 2 (CHOICE ↔ ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
2 vex 3482 . . . . . . . 8 𝑥 ∈ V
3 vuniex 7758 . . . . . . . 8 𝑥 ∈ V
42, 3xpex 7772 . . . . . . 7 (𝑥 × 𝑥) ∈ V
5 simpl 482 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑤𝑥)
6 elunii 4917 . . . . . . . . . . 11 ((𝑣𝑤𝑤𝑥) → 𝑣 𝑥)
76ancoms 458 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑣 𝑥)
85, 7jca 511 . . . . . . . . 9 ((𝑤𝑥𝑣𝑤) → (𝑤𝑥𝑣 𝑥))
98ssopab2i 5560 . . . . . . . 8 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
10 df-xp 5695 . . . . . . . 8 (𝑥 × 𝑥) = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
119, 10sseqtrri 4033 . . . . . . 7 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ (𝑥 × 𝑥)
124, 11ssexi 5328 . . . . . 6 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∈ V
13 sseq2 4022 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓𝑦𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
14 dmeq 5917 . . . . . . . . 9 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑦 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
1514fneq2d 6663 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓 Fn dom 𝑦𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
1613, 15anbi12d 632 . . . . . . 7 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑓𝑦𝑓 Fn dom 𝑦) ↔ (𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1716exbidv 1919 . . . . . 6 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1812, 17spcv 3605 . . . . 5 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
19 fndm 6672 . . . . . . . . . . . . 13 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
20 dmopab 5929 . . . . . . . . . . . . . . . 16 dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)}
2120eleq2i 2831 . . . . . . . . . . . . . . 15 (𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ↔ 𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)})
22 vex 3482 . . . . . . . . . . . . . . . 16 𝑧 ∈ V
23 elequ1 2113 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑤𝑥𝑧𝑥))
24 eleq2 2828 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑣𝑤𝑣𝑧))
2523, 24anbi12d 632 . . . . . . . . . . . . . . . . 17 (𝑤 = 𝑧 → ((𝑤𝑥𝑣𝑤) ↔ (𝑧𝑥𝑣𝑧)))
2625exbidv 1919 . . . . . . . . . . . . . . . 16 (𝑤 = 𝑧 → (∃𝑣(𝑤𝑥𝑣𝑤) ↔ ∃𝑣(𝑧𝑥𝑣𝑧)))
2722, 26elab 3681 . . . . . . . . . . . . . . 15 (𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)} ↔ ∃𝑣(𝑧𝑥𝑣𝑧))
28 19.42v 1951 . . . . . . . . . . . . . . . 16 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
29 n0 4359 . . . . . . . . . . . . . . . . 17 (𝑧 ≠ ∅ ↔ ∃𝑣 𝑣𝑧)
3029anbi2i 623 . . . . . . . . . . . . . . . 16 ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
3128, 30bitr4i 278 . . . . . . . . . . . . . . 15 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑧 ≠ ∅))
3221, 27, 313bitrri 298 . . . . . . . . . . . . . 14 ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
33 eleq2 2828 . . . . . . . . . . . . . 14 (dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑧 ∈ dom 𝑓𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
3432, 33bitr4id 290 . . . . . . . . . . . . 13 (dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
3519, 34syl 17 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
3635adantl 481 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
37 fnfun 6669 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → Fun 𝑓)
38 funfvima3 7256 . . . . . . . . . . . . 13 ((Fun 𝑓𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
3938ancoms 458 . . . . . . . . . . . 12 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ Fun 𝑓) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4037, 39sylan2 593 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4136, 40sylbid 240 . . . . . . . . . 10 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4241imp 406 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}))
43 imasng 6104 . . . . . . . . . . . . . 14 (𝑧 ∈ V → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢})
4443elv 3483 . . . . . . . . . . . . 13 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢}
45 vex 3482 . . . . . . . . . . . . . . 15 𝑢 ∈ V
46 elequ1 2113 . . . . . . . . . . . . . . . 16 (𝑣 = 𝑢 → (𝑣𝑧𝑢𝑧))
4746anbi2d 630 . . . . . . . . . . . . . . 15 (𝑣 = 𝑢 → ((𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑢𝑧)))
48 eqid 2735 . . . . . . . . . . . . . . 15 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}
4922, 45, 25, 47, 48brab 5553 . . . . . . . . . . . . . 14 (𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢 ↔ (𝑧𝑥𝑢𝑧))
5049abbii 2807 . . . . . . . . . . . . 13 {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢} = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
5144, 50eqtri 2763 . . . . . . . . . . . 12 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
52 ibar 528 . . . . . . . . . . . . 13 (𝑧𝑥 → (𝑢𝑧 ↔ (𝑧𝑥𝑢𝑧)))
5352eqabdv 2873 . . . . . . . . . . . 12 (𝑧𝑥𝑧 = {𝑢 ∣ (𝑧𝑥𝑢𝑧)})
5451, 53eqtr4id 2794 . . . . . . . . . . 11 (𝑧𝑥 → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = 𝑧)
5554eleq2d 2825 . . . . . . . . . 10 (𝑧𝑥 → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5655ad2antrl 728 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5742, 56mpbid 232 . . . . . . . 8 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ 𝑧)
5857exp32 420 . . . . . . 7 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧𝑥 → (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)))
5958ralrimiv 3143 . . . . . 6 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6059eximi 1832 . . . . 5 (∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6118, 60syl 17 . . . 4 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6261alrimiv 1925 . . 3 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
63 eqid 2735 . . . . 5 (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢})) = (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢}))
6463aceq3lem 10158 . . . 4 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6564alrimiv 1925 . . 3 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6662, 65impbii 209 . 2 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
671, 66bitri 275 1 (CHOICE ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  wal 1535   = wceq 1537  wex 1776  wcel 2106  {cab 2712  wne 2938  wral 3059  Vcvv 3478  wss 3963  c0 4339  {csn 4631   cuni 4912   class class class wbr 5148  {copab 5210  cmpt 5231   × cxp 5687  dom cdm 5689  cima 5692  Fun wfun 6557   Fn wfn 6558  cfv 6563  CHOICEwac 10153
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1908  ax-6 1965  ax-7 2005  ax-8 2108  ax-9 2116  ax-10 2139  ax-11 2155  ax-12 2175  ax-ext 2706  ax-sep 5302  ax-nul 5312  ax-pow 5371  ax-pr 5438  ax-un 7754
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1540  df-fal 1550  df-ex 1777  df-nf 1781  df-sb 2063  df-mo 2538  df-eu 2567  df-clab 2713  df-cleq 2727  df-clel 2814  df-nfc 2890  df-ne 2939  df-ral 3060  df-rex 3069  df-rab 3434  df-v 3480  df-dif 3966  df-un 3968  df-in 3970  df-ss 3980  df-nul 4340  df-if 4532  df-pw 4607  df-sn 4632  df-pr 4634  df-op 4638  df-uni 4913  df-br 5149  df-opab 5211  df-mpt 5232  df-id 5583  df-xp 5695  df-rel 5696  df-cnv 5697  df-co 5698  df-dm 5699  df-rn 5700  df-res 5701  df-ima 5702  df-iota 6516  df-fun 6565  df-fn 6566  df-fv 6571  df-ac 10154
This theorem is referenced by:  dfac4  10160  dfac5  10167  dfac2a  10168  dfac2b  10169  dfac8  10174  dfac9  10175  ac4  10513  dfac11  43051
  Copyright terms: Public domain W3C validator