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

Theorem dfac3 10111
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 10106 . 2 (CHOICE ↔ ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
2 vex 3470 . . . . . . . 8 𝑥 ∈ V
3 vuniex 7722 . . . . . . . 8 𝑥 ∈ V
42, 3xpex 7733 . . . . . . 7 (𝑥 × 𝑥) ∈ V
5 simpl 482 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑤𝑥)
6 elunii 4904 . . . . . . . . . . 11 ((𝑣𝑤𝑤𝑥) → 𝑣 𝑥)
76ancoms 458 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑣 𝑥)
85, 7jca 511 . . . . . . . . 9 ((𝑤𝑥𝑣𝑤) → (𝑤𝑥𝑣 𝑥))
98ssopab2i 5540 . . . . . . . 8 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
10 df-xp 5672 . . . . . . . 8 (𝑥 × 𝑥) = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
119, 10sseqtrri 4011 . . . . . . 7 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ (𝑥 × 𝑥)
124, 11ssexi 5312 . . . . . 6 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∈ V
13 sseq2 4000 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓𝑦𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
14 dmeq 5893 . . . . . . . . 9 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑦 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
1514fneq2d 6633 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓 Fn dom 𝑦𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
1613, 15anbi12d 630 . . . . . . 7 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑓𝑦𝑓 Fn dom 𝑦) ↔ (𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1716exbidv 1916 . . . . . 6 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1812, 17spcv 3587 . . . . 5 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
19 fndm 6642 . . . . . . . . . . . . 13 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
20 dmopab 5905 . . . . . . . . . . . . . . . 16 dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)}
2120eleq2i 2817 . . . . . . . . . . . . . . 15 (𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ↔ 𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)})
22 vex 3470 . . . . . . . . . . . . . . . 16 𝑧 ∈ V
23 elequ1 2105 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑤𝑥𝑧𝑥))
24 eleq2 2814 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑣𝑤𝑣𝑧))
2523, 24anbi12d 630 . . . . . . . . . . . . . . . . 17 (𝑤 = 𝑧 → ((𝑤𝑥𝑣𝑤) ↔ (𝑧𝑥𝑣𝑧)))
2625exbidv 1916 . . . . . . . . . . . . . . . 16 (𝑤 = 𝑧 → (∃𝑣(𝑤𝑥𝑣𝑤) ↔ ∃𝑣(𝑧𝑥𝑣𝑧)))
2722, 26elab 3660 . . . . . . . . . . . . . . 15 (𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)} ↔ ∃𝑣(𝑧𝑥𝑣𝑧))
28 19.42v 1949 . . . . . . . . . . . . . . . 16 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
29 n0 4338 . . . . . . . . . . . . . . . . 17 (𝑧 ≠ ∅ ↔ ∃𝑣 𝑣𝑧)
3029anbi2i 622 . . . . . . . . . . . . . . . 16 ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
3128, 30bitr4i 278 . . . . . . . . . . . . . . 15 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑧 ≠ ∅))
3221, 27, 313bitrri 298 . . . . . . . . . . . . . 14 ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
33 eleq2 2814 . . . . . . . . . . . . . 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 6639 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → Fun 𝑓)
38 funfvima3 7229 . . . . . . . . . . . . 13 ((Fun 𝑓𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
3938ancoms 458 . . . . . . . . . . . 12 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ Fun 𝑓) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4037, 39sylan2 592 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4136, 40sylbid 239 . . . . . . . . . 10 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4241imp 406 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}))
43 imasng 6072 . . . . . . . . . . . . . 14 (𝑧 ∈ V → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢})
4443elv 3472 . . . . . . . . . . . . 13 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢}
45 vex 3470 . . . . . . . . . . . . . . 15 𝑢 ∈ V
46 elequ1 2105 . . . . . . . . . . . . . . . 16 (𝑣 = 𝑢 → (𝑣𝑧𝑢𝑧))
4746anbi2d 628 . . . . . . . . . . . . . . 15 (𝑣 = 𝑢 → ((𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑢𝑧)))
48 eqid 2724 . . . . . . . . . . . . . . 15 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}
4922, 45, 25, 47, 48brab 5533 . . . . . . . . . . . . . 14 (𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢 ↔ (𝑧𝑥𝑢𝑧))
5049abbii 2794 . . . . . . . . . . . . 13 {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢} = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
5144, 50eqtri 2752 . . . . . . . . . . . 12 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
52 ibar 528 . . . . . . . . . . . . 13 (𝑧𝑥 → (𝑢𝑧 ↔ (𝑧𝑥𝑢𝑧)))
5352eqabdv 2859 . . . . . . . . . . . 12 (𝑧𝑥𝑧 = {𝑢 ∣ (𝑧𝑥𝑢𝑧)})
5451, 53eqtr4id 2783 . . . . . . . . . . 11 (𝑧𝑥 → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = 𝑧)
5554eleq2d 2811 . . . . . . . . . 10 (𝑧𝑥 → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5655ad2antrl 725 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5742, 56mpbid 231 . . . . . . . 8 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ 𝑧)
5857exp32 420 . . . . . . 7 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧𝑥 → (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)))
5958ralrimiv 3137 . . . . . 6 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6059eximi 1829 . . . . 5 (∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6118, 60syl 17 . . . 4 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6261alrimiv 1922 . . 3 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
63 eqid 2724 . . . . 5 (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢})) = (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢}))
6463aceq3lem 10110 . . . 4 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6564alrimiv 1922 . . 3 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6662, 65impbii 208 . 2 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
671, 66bitri 275 1 (CHOICE ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 395  wal 1531   = wceq 1533  wex 1773  wcel 2098  {cab 2701  wne 2932  wral 3053  Vcvv 3466  wss 3940  c0 4314  {csn 4620   cuni 4899   class class class wbr 5138  {copab 5200  cmpt 5221   × cxp 5664  dom cdm 5666  cima 5669  Fun wfun 6527   Fn wfn 6528  cfv 6533  CHOICEwac 10105
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1789  ax-4 1803  ax-5 1905  ax-6 1963  ax-7 2003  ax-8 2100  ax-9 2108  ax-10 2129  ax-11 2146  ax-12 2163  ax-ext 2695  ax-sep 5289  ax-nul 5296  ax-pow 5353  ax-pr 5417  ax-un 7718
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 845  df-3an 1086  df-tru 1536  df-fal 1546  df-ex 1774  df-nf 1778  df-sb 2060  df-mo 2526  df-eu 2555  df-clab 2702  df-cleq 2716  df-clel 2802  df-nfc 2877  df-ne 2933  df-ral 3054  df-rex 3063  df-rab 3425  df-v 3468  df-dif 3943  df-un 3945  df-in 3947  df-ss 3957  df-nul 4315  df-if 4521  df-pw 4596  df-sn 4621  df-pr 4623  df-op 4627  df-uni 4900  df-br 5139  df-opab 5201  df-mpt 5222  df-id 5564  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-iota 6485  df-fun 6535  df-fn 6536  df-fv 6541  df-ac 10106
This theorem is referenced by:  dfac4  10112  dfac5  10118  dfac2a  10119  dfac2b  10120  dfac8  10125  dfac9  10126  ac4  10465  dfac11  42259
  Copyright terms: Public domain W3C validator