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

Theorem dfac3 9877
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 9872 . 2 (CHOICE ↔ ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
2 vex 3436 . . . . . . . 8 𝑥 ∈ V
3 vuniex 7592 . . . . . . . 8 𝑥 ∈ V
42, 3xpex 7603 . . . . . . 7 (𝑥 × 𝑥) ∈ V
5 simpl 483 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑤𝑥)
6 elunii 4844 . . . . . . . . . . 11 ((𝑣𝑤𝑤𝑥) → 𝑣 𝑥)
76ancoms 459 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑣 𝑥)
85, 7jca 512 . . . . . . . . 9 ((𝑤𝑥𝑣𝑤) → (𝑤𝑥𝑣 𝑥))
98ssopab2i 5463 . . . . . . . 8 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
10 df-xp 5595 . . . . . . . 8 (𝑥 × 𝑥) = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
119, 10sseqtrri 3958 . . . . . . 7 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ (𝑥 × 𝑥)
124, 11ssexi 5246 . . . . . 6 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∈ V
13 sseq2 3947 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓𝑦𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
14 dmeq 5812 . . . . . . . . 9 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑦 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
1514fneq2d 6527 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓 Fn dom 𝑦𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
1613, 15anbi12d 631 . . . . . . 7 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑓𝑦𝑓 Fn dom 𝑦) ↔ (𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1716exbidv 1924 . . . . . 6 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1812, 17spcv 3544 . . . . 5 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
19 fndm 6536 . . . . . . . . . . . . 13 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
20 dmopab 5824 . . . . . . . . . . . . . . . 16 dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)}
2120eleq2i 2830 . . . . . . . . . . . . . . 15 (𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ↔ 𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)})
22 vex 3436 . . . . . . . . . . . . . . . 16 𝑧 ∈ V
23 elequ1 2113 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑤𝑥𝑧𝑥))
24 eleq2 2827 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑣𝑤𝑣𝑧))
2523, 24anbi12d 631 . . . . . . . . . . . . . . . . 17 (𝑤 = 𝑧 → ((𝑤𝑥𝑣𝑤) ↔ (𝑧𝑥𝑣𝑧)))
2625exbidv 1924 . . . . . . . . . . . . . . . 16 (𝑤 = 𝑧 → (∃𝑣(𝑤𝑥𝑣𝑤) ↔ ∃𝑣(𝑧𝑥𝑣𝑧)))
2722, 26elab 3609 . . . . . . . . . . . . . . 15 (𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)} ↔ ∃𝑣(𝑧𝑥𝑣𝑧))
28 19.42v 1957 . . . . . . . . . . . . . . . 16 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
29 n0 4280 . . . . . . . . . . . . . . . . 17 (𝑧 ≠ ∅ ↔ ∃𝑣 𝑣𝑧)
3029anbi2i 623 . . . . . . . . . . . . . . . 16 ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
3128, 30bitr4i 277 . . . . . . . . . . . . . . 15 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑧 ≠ ∅))
3221, 27, 313bitrri 298 . . . . . . . . . . . . . 14 ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
33 eleq2 2827 . . . . . . . . . . . . . 14 (dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑧 ∈ dom 𝑓𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
3432, 33bitr4id 290 . . . . . . . . . . . . 13 (dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
3519, 34syl 17 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
3635adantl 482 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom 𝑓))
37 fnfun 6533 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → Fun 𝑓)
38 funfvima3 7112 . . . . . . . . . . . . 13 ((Fun 𝑓𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
3938ancoms 459 . . . . . . . . . . . 12 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ Fun 𝑓) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4037, 39sylan2 593 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4136, 40sylbid 239 . . . . . . . . . 10 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4241imp 407 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}))
43 imasng 5991 . . . . . . . . . . . . . 14 (𝑧 ∈ V → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢})
4443elv 3438 . . . . . . . . . . . . 13 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢}
45 vex 3436 . . . . . . . . . . . . . . 15 𝑢 ∈ V
46 elequ1 2113 . . . . . . . . . . . . . . . 16 (𝑣 = 𝑢 → (𝑣𝑧𝑢𝑧))
4746anbi2d 629 . . . . . . . . . . . . . . 15 (𝑣 = 𝑢 → ((𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑢𝑧)))
48 eqid 2738 . . . . . . . . . . . . . . 15 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}
4922, 45, 25, 47, 48brab 5456 . . . . . . . . . . . . . 14 (𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢 ↔ (𝑧𝑥𝑢𝑧))
5049abbii 2808 . . . . . . . . . . . . 13 {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢} = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
5144, 50eqtri 2766 . . . . . . . . . . . 12 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
52 ibar 529 . . . . . . . . . . . . 13 (𝑧𝑥 → (𝑢𝑧 ↔ (𝑧𝑥𝑢𝑧)))
5352abbi2dv 2877 . . . . . . . . . . . 12 (𝑧𝑥𝑧 = {𝑢 ∣ (𝑧𝑥𝑢𝑧)})
5451, 53eqtr4id 2797 . . . . . . . . . . 11 (𝑧𝑥 → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = 𝑧)
5554eleq2d 2824 . . . . . . . . . 10 (𝑧𝑥 → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5655ad2antrl 725 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5742, 56mpbid 231 . . . . . . . 8 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ 𝑧)
5857exp32 421 . . . . . . 7 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧𝑥 → (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)))
5958ralrimiv 3102 . . . . . 6 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6059eximi 1837 . . . . 5 (∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6118, 60syl 17 . . . 4 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6261alrimiv 1930 . . 3 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
63 eqid 2738 . . . . 5 (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢})) = (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢}))
6463aceq3lem 9876 . . . 4 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6564alrimiv 1930 . . 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 396  wal 1537   = wceq 1539  wex 1782  wcel 2106  {cab 2715  wne 2943  wral 3064  Vcvv 3432  wss 3887  c0 4256  {csn 4561   cuni 4839   class class class wbr 5074  {copab 5136  cmpt 5157   × cxp 5587  dom cdm 5589  cima 5592  Fun wfun 6427   Fn wfn 6428  cfv 6433  CHOICEwac 9871
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-sep 5223  ax-nul 5230  ax-pow 5288  ax-pr 5352  ax-un 7588
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  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-rab 3073  df-v 3434  df-dif 3890  df-un 3892  df-in 3894  df-ss 3904  df-nul 4257  df-if 4460  df-pw 4535  df-sn 4562  df-pr 4564  df-op 4568  df-uni 4840  df-br 5075  df-opab 5137  df-mpt 5158  df-id 5489  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-iota 6391  df-fun 6435  df-fn 6436  df-fv 6441  df-ac 9872
This theorem is referenced by:  dfac4  9878  dfac5  9884  dfac2a  9885  dfac2b  9886  dfac8  9891  dfac9  9892  ac4  10231  dfac11  40887
  Copyright terms: Public domain W3C validator