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

Theorem dfac3 10043
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 10038 . 2 (CHOICE ↔ ∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
2 vex 3446 . . . . . . . 8 𝑥 ∈ V
3 vuniex 7694 . . . . . . . 8 𝑥 ∈ V
42, 3xpex 7708 . . . . . . 7 (𝑥 × 𝑥) ∈ V
5 simpl 482 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑤𝑥)
6 elunii 4870 . . . . . . . . . . 11 ((𝑣𝑤𝑤𝑥) → 𝑣 𝑥)
76ancoms 458 . . . . . . . . . 10 ((𝑤𝑥𝑣𝑤) → 𝑣 𝑥)
85, 7jca 511 . . . . . . . . 9 ((𝑤𝑥𝑣𝑤) → (𝑤𝑥𝑣 𝑥))
98ssopab2i 5506 . . . . . . . 8 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
10 df-xp 5638 . . . . . . . 8 (𝑥 × 𝑥) = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣 𝑥)}
119, 10sseqtrri 3985 . . . . . . 7 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ⊆ (𝑥 × 𝑥)
124, 11ssexi 5269 . . . . . 6 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∈ V
13 sseq2 3962 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓𝑦𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
14 dmeq 5860 . . . . . . . . 9 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑦 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
1514fneq2d 6594 . . . . . . . 8 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (𝑓 Fn dom 𝑦𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
1613, 15anbi12d 633 . . . . . . 7 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → ((𝑓𝑦𝑓 Fn dom 𝑦) ↔ (𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1716exbidv 1923 . . . . . 6 (𝑦 = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → (∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦) ↔ ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})))
1812, 17spcv 3561 . . . . 5 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}))
19 fndm 6603 . . . . . . . . . . . . 13 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → dom 𝑓 = dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
20 dmopab 5872 . . . . . . . . . . . . . . . 16 dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)}
2120eleq2i 2829 . . . . . . . . . . . . . . 15 (𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ↔ 𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)})
22 vex 3446 . . . . . . . . . . . . . . . 16 𝑧 ∈ V
23 elequ1 2121 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑤𝑥𝑧𝑥))
24 eleq2 2826 . . . . . . . . . . . . . . . . . 18 (𝑤 = 𝑧 → (𝑣𝑤𝑣𝑧))
2523, 24anbi12d 633 . . . . . . . . . . . . . . . . 17 (𝑤 = 𝑧 → ((𝑤𝑥𝑣𝑤) ↔ (𝑧𝑥𝑣𝑧)))
2625exbidv 1923 . . . . . . . . . . . . . . . 16 (𝑤 = 𝑧 → (∃𝑣(𝑤𝑥𝑣𝑤) ↔ ∃𝑣(𝑧𝑥𝑣𝑧)))
2722, 26elab 3636 . . . . . . . . . . . . . . 15 (𝑧 ∈ {𝑤 ∣ ∃𝑣(𝑤𝑥𝑣𝑤)} ↔ ∃𝑣(𝑧𝑥𝑣𝑧))
28 19.42v 1955 . . . . . . . . . . . . . . . 16 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
29 n0 4307 . . . . . . . . . . . . . . . . 17 (𝑧 ≠ ∅ ↔ ∃𝑣 𝑣𝑧)
3029anbi2i 624 . . . . . . . . . . . . . . . 16 ((𝑧𝑥𝑧 ≠ ∅) ↔ (𝑧𝑥 ∧ ∃𝑣 𝑣𝑧))
3128, 30bitr4i 278 . . . . . . . . . . . . . . 15 (∃𝑣(𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑧 ≠ ∅))
3221, 27, 313bitrri 298 . . . . . . . . . . . . . 14 ((𝑧𝑥𝑧 ≠ ∅) ↔ 𝑧 ∈ dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)})
33 eleq2 2826 . . . . . . . . . . . . . 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 6600 . . . . . . . . . . . 12 (𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} → Fun 𝑓)
38 funfvima3 7192 . . . . . . . . . . . . 13 ((Fun 𝑓𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
3938ancoms 458 . . . . . . . . . . . 12 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ Fun 𝑓) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4037, 39sylan2 594 . . . . . . . . . . 11 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧 ∈ dom 𝑓 → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4136, 40sylbid 240 . . . . . . . . . 10 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ((𝑧𝑥𝑧 ≠ ∅) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧})))
4241imp 406 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}))
43 imasng 6051 . . . . . . . . . . . . . 14 (𝑧 ∈ V → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢})
4443elv 3447 . . . . . . . . . . . . 13 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢}
45 vex 3446 . . . . . . . . . . . . . . 15 𝑢 ∈ V
46 elequ1 2121 . . . . . . . . . . . . . . . 16 (𝑣 = 𝑢 → (𝑣𝑧𝑢𝑧))
4746anbi2d 631 . . . . . . . . . . . . . . 15 (𝑣 = 𝑢 → ((𝑧𝑥𝑣𝑧) ↔ (𝑧𝑥𝑢𝑧)))
48 eqid 2737 . . . . . . . . . . . . . . 15 {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} = {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}
4922, 45, 25, 47, 48brab 5499 . . . . . . . . . . . . . 14 (𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢 ↔ (𝑧𝑥𝑢𝑧))
5049abbii 2804 . . . . . . . . . . . . 13 {𝑢𝑧{⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}𝑢} = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
5144, 50eqtri 2760 . . . . . . . . . . . 12 ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = {𝑢 ∣ (𝑧𝑥𝑢𝑧)}
52 ibar 528 . . . . . . . . . . . . 13 (𝑧𝑥 → (𝑢𝑧 ↔ (𝑧𝑥𝑢𝑧)))
5352eqabdv 2870 . . . . . . . . . . . 12 (𝑧𝑥𝑧 = {𝑢 ∣ (𝑧𝑥𝑢𝑧)})
5451, 53eqtr4id 2791 . . . . . . . . . . 11 (𝑧𝑥 → ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) = 𝑧)
5554eleq2d 2823 . . . . . . . . . 10 (𝑧𝑥 → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5655ad2antrl 729 . . . . . . . . 9 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → ((𝑓𝑧) ∈ ({⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} “ {𝑧}) ↔ (𝑓𝑧) ∈ 𝑧))
5742, 56mpbid 232 . . . . . . . 8 (((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) ∧ (𝑧𝑥𝑧 ≠ ∅)) → (𝑓𝑧) ∈ 𝑧)
5857exp32 420 . . . . . . 7 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → (𝑧𝑥 → (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)))
5958ralrimiv 3129 . . . . . 6 ((𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6059eximi 1837 . . . . 5 (∃𝑓(𝑓 ⊆ {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)} ∧ 𝑓 Fn dom {⟨𝑤, 𝑣⟩ ∣ (𝑤𝑥𝑣𝑤)}) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6118, 60syl 17 . . . 4 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
6261alrimiv 1929 . . 3 (∀𝑦𝑓(𝑓𝑦𝑓 Fn dom 𝑦) → ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
63 eqid 2737 . . . . 5 (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢})) = (𝑤 ∈ dom 𝑦 ↦ (𝑓‘{𝑢𝑤𝑦𝑢}))
6463aceq3lem 10042 . . . 4 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃𝑓(𝑓𝑦𝑓 Fn dom 𝑦))
6564alrimiv 1929 . . 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 1540   = wceq 1542  wex 1781  wcel 2114  {cab 2715  wne 2933  wral 3052  Vcvv 3442  wss 3903  c0 4287  {csn 4582   cuni 4865   class class class wbr 5100  {copab 5162  cmpt 5181   × cxp 5630  dom cdm 5632  cima 5635  Fun wfun 6494   Fn wfn 6495  cfv 6500  CHOICEwac 10037
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-sep 5243  ax-nul 5253  ax-pow 5312  ax-pr 5379  ax-un 7690
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3063  df-rab 3402  df-v 3444  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-nul 4288  df-if 4482  df-pw 4558  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-br 5101  df-opab 5163  df-mpt 5182  df-id 5527  df-xp 5638  df-rel 5639  df-cnv 5640  df-co 5641  df-dm 5642  df-rn 5643  df-res 5644  df-ima 5645  df-iota 6456  df-fun 6502  df-fn 6503  df-fv 6508  df-ac 10038
This theorem is referenced by:  dfac4  10044  dfac5  10051  dfac2a  10052  dfac2b  10053  dfac8  10058  dfac9  10059  ac4  10397  dfac11  43419
  Copyright terms: Public domain W3C validator