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

Theorem dfac3 10120
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 10115 . 2 (CHOICE ↔ ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
2 vex 3476 . . . . . . . 8 𝑥 ∈ V
3 vuniex 7733 . . . . . . . 8 𝑥 ∈ V
42, 3xpex 7744 . . . . . . 7 (𝑥 × 𝑥) ∈ V
5 simpl 481 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑤𝑥)
6 elunii 4914 . . . . . . . . . . 11 ((𝑣𝑤𝑤𝑥) → 𝑣 𝑥)
76ancoms 457 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑣 𝑥)
85, 7jca 510 . . . . . . . . 9 ((𝑤𝑥𝑣𝑤) → (𝑤𝑥𝑣 𝑥))
98ssopab2i 5551 . . . . . . . 8 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
10 df-xp 5683 . . . . . . . 8 (𝑥 × 𝑥) = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
119, 10sseqtrri 4020 . . . . . . 7 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ (𝑥 × 𝑥)
124, 11ssexi 5323 . . . . . 6 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∈ V
13 sseq2 4009 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓𝑦𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
14 dmeq 5904 . . . . . . . . 9 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑦 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
1514fneq2d 6644 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓 Fn dom 𝑦𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
1613, 15anbi12d 629 . . . . . . 7 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑓𝑦𝑓 Fn dom 𝑦) ↔ (𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1716exbidv 1922 . . . . . 6 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1812, 17spcv 3596 . . . . 5 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
19 fndm 6653 . . . . . . . . . . . . 13 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
20 dmopab 5916 . . . . . . . . . . . . . . . 16 dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)}
2120eleq2i 2823 . . . . . . . . . . . . . . 15 (𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ↔ 𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)})
22 vex 3476 . . . . . . . . . . . . . . . 16 𝑧 ∈ V
23 elequ1 2111 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑤𝑥𝑧𝑥))
24 eleq2 2820 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑣𝑤𝑣𝑧))
2523, 24anbi12d 629 . . . . . . . . . . . . . . . . 17 (𝑤 = 𝑧 → ((𝑤𝑥𝑣𝑤) ↔ (𝑧𝑥𝑣𝑧)))
2625exbidv 1922 . . . . . . . . . . . . . . . 16 (𝑤 = 𝑧 → (∃𝑣(𝑤𝑥𝑣𝑤) ↔ ∃𝑣(𝑧𝑥𝑣𝑧)))
2722, 26elab 3669 . . . . . . . . . . . . . . 15 (𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)} ↔ ∃𝑣(𝑧𝑥𝑣𝑧))
28 19.42v 1955 . . . . . . . . . . . . . . . 16 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
29 n0 4347 . . . . . . . . . . . . . . . . 17 (𝑧 ≠ ∅ ↔ ∃𝑣 𝑣𝑧)
3029anbi2i 621 . . . . . . . . . . . . . . . 16 ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
3128, 30bitr4i 277 . . . . . . . . . . . . . . 15 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑧 ≠ ∅))
3221, 27, 313bitrri 297 . . . . . . . . . . . . . 14 ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
33 eleq2 2820 . . . . . . . . . . . . . 14 (dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑧 ∈ dom 𝑓𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
3432, 33bitr4id 289 . . . . . . . . . . . . 13 (dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
3519, 34syl 17 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
3635adantl 480 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
37 fnfun 6650 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → Fun 𝑓)
38 funfvima3 7241 . . . . . . . . . . . . 13 ((Fun 𝑓𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
3938ancoms 457 . . . . . . . . . . . 12 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ Fun 𝑓) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4037, 39sylan2 591 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4136, 40sylbid 239 . . . . . . . . . 10 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4241imp 405 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}))
43 imasng 6083 . . . . . . . . . . . . . 14 (𝑧 ∈ V → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢})
4443elv 3478 . . . . . . . . . . . . 13 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢}
45 vex 3476 . . . . . . . . . . . . . . 15 𝑢 ∈ V
46 elequ1 2111 . . . . . . . . . . . . . . . 16 (𝑣 = 𝑢 → (𝑣𝑧𝑢𝑧))
4746anbi2d 627 . . . . . . . . . . . . . . 15 (𝑣 = 𝑢 → ((𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑢𝑧)))
48 eqid 2730 . . . . . . . . . . . . . . 15 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}
4922, 45, 25, 47, 48brab 5544 . . . . . . . . . . . . . 14 (𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢 ↔ (𝑧𝑥𝑢𝑧))
5049abbii 2800 . . . . . . . . . . . . 13 {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢} = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
5144, 50eqtri 2758 . . . . . . . . . . . 12 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
52 ibar 527 . . . . . . . . . . . . 13 (𝑧𝑥 → (𝑢𝑧 ↔ (𝑧𝑥𝑢𝑧)))
5352eqabdv 2865 . . . . . . . . . . . 12 (𝑧𝑥𝑧 = {𝑢 ∣ (𝑧𝑥𝑢𝑧)})
5451, 53eqtr4id 2789 . . . . . . . . . . 11 (𝑧𝑥 → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = 𝑧)
5554eleq2d 2817 . . . . . . . . . 10 (𝑧𝑥 → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5655ad2antrl 724 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5742, 56mpbid 231 . . . . . . . 8 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ 𝑧)
5857exp32 419 . . . . . . 7 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧𝑥 → (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)))
5958ralrimiv 3143 . . . . . 6 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6059eximi 1835 . . . . 5 (∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6118, 60syl 17 . . . 4 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6261alrimiv 1928 . . 3 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
63 eqid 2730 . . . . 5 (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢})) = (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢}))
6463aceq3lem 10119 . . . 4 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6564alrimiv 1928 . . 3 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6662, 65impbii 208 . 2 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
671, 66bitri 274 1 (CHOICE ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 394  wal 1537   = wceq 1539  wex 1779  wcel 2104  {cab 2707  wne 2938  wral 3059  Vcvv 3472  wss 3949  c0 4323  {csn 4629   cuni 4909   class class class wbr 5149  {copab 5211  cmpt 5232   × cxp 5675  dom cdm 5677  cima 5680  Fun wfun 6538   Fn wfn 6539  cfv 6544  CHOICEwac 10114
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1911  ax-6 1969  ax-7 2009  ax-8 2106  ax-9 2114  ax-10 2135  ax-11 2152  ax-12 2169  ax-ext 2701  ax-sep 5300  ax-nul 5307  ax-pow 5364  ax-pr 5428  ax-un 7729
This theorem depends on definitions:  df-bi 206  df-an 395  df-or 844  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2532  df-eu 2561  df-clab 2708  df-cleq 2722  df-clel 2808  df-nfc 2883  df-ne 2939  df-ral 3060  df-rex 3069  df-rab 3431  df-v 3474  df-dif 3952  df-un 3954  df-in 3956  df-ss 3966  df-nul 4324  df-if 4530  df-pw 4605  df-sn 4630  df-pr 4632  df-op 4636  df-uni 4910  df-br 5150  df-opab 5212  df-mpt 5233  df-id 5575  df-xp 5683  df-rel 5684  df-cnv 5685  df-co 5686  df-dm 5687  df-rn 5688  df-res 5689  df-ima 5690  df-iota 6496  df-fun 6546  df-fn 6547  df-fv 6552  df-ac 10115
This theorem is referenced by:  dfac4  10121  dfac5  10127  dfac2a  10128  dfac2b  10129  dfac8  10134  dfac9  10135  ac4  10474  dfac11  42108
  Copyright terms: Public domain W3C validator