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

Theorem dfac5 10207
Description: Equivalence of two versions of the Axiom of Choice. The right-hand side is Theorem 6M(4) of [Enderton] p. 151 and asserts that given a family of mutually disjoint nonempty sets, a set exists containing exactly one member from each set in the family. The proof does not depend on AC. (Contributed by NM, 11-Apr-2004.) (Revised by Mario Carneiro, 17-May-2015.)
Assertion
Ref Expression
dfac5 (CHOICE ↔ ∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)))
Distinct variable group:   𝑥,𝑧,𝑦,𝑤,𝑣

Proof of Theorem dfac5
Dummy variables 𝑓 ℎ 𝑢 𝑡 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 dfac4 10201 . . 3 (CHOICE ↔ ∀𝑥∃𝑓(𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤)))
2 neeq1 3018 . . . . . . . . . . . . 13 (𝑧 = 𝑤 → (𝑧 ≠ ∅ ↔ 𝑤 ≠ ∅))
32cbvralvw 3241 . . . . . . . . . . . 12 (∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ↔ ∀𝑤 ∈ 𝑥 𝑤 ≠ ∅)
43anbi2i 635 . . . . . . . . . . 11 ((∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ ∀𝑧 ∈ 𝑥 𝑧 ≠ ∅) ↔ (∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ ∀𝑤 ∈ 𝑥 𝑤 ≠ ∅))
5 r19.26 3123 . . . . . . . . . . 11 (∀𝑤 ∈ 𝑥 ((𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑤 ≠ ∅) ↔ (∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ ∀𝑤 ∈ 𝑥 𝑤 ≠ ∅))
64, 5bitr4i 281 . . . . . . . . . 10 ((∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ ∀𝑧 ∈ 𝑥 𝑧 ≠ ∅) ↔ ∀𝑤 ∈ 𝑥 ((𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑤 ≠ ∅))
7 pm3.35 815 . . . . . . . . . . . 12 ((𝑤 ≠ ∅ ∧ (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤)) → (𝑓‘𝑤) ∈ 𝑤)
87ancoms 464 . . . . . . . . . . 11 (((𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑤 ≠ ∅) → (𝑓‘𝑤) ∈ 𝑤)
98ralimi 3100 . . . . . . . . . 10 (∀𝑤 ∈ 𝑥 ((𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑤 ≠ ∅) → ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤)
106, 9sylbi 220 . . . . . . . . 9 ((∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ ∀𝑧 ∈ 𝑥 𝑧 ≠ ∅) → ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤)
11 r19.26 3123 . . . . . . . . . . . . . . . . . 18 (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) ↔ (∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 ∧ ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)))
12 elin 3915 . . . . . . . . . . . . . . . . . . 19 (𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ (𝑣 ∈ 𝑧 ∧ 𝑣 ∈ ran 𝑓))
13 fvelrnb 6945 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑓 Fn 𝑥 → (𝑣 ∈ ran 𝑓 ↔ ∃𝑡 ∈ 𝑥 (𝑓‘𝑡) = 𝑣))
1413biimpac 484 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑣 ∈ ran 𝑓 ∧ 𝑓 Fn 𝑥) → ∃𝑡 ∈ 𝑥 (𝑓‘𝑡) = 𝑣)
15 fveq2 6885 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑤 = 𝑡 → (𝑓‘𝑤) = (𝑓‘𝑡))
16 id 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑤 = 𝑡 → 𝑤 = 𝑡)
1715, 16eleq12d 2855 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑤 = 𝑡 → ((𝑓‘𝑤) ∈ 𝑤 ↔ (𝑓‘𝑡) ∈ 𝑡))
18 neeq2 3019 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑤 = 𝑡 → (𝑧 ≠ 𝑤 ↔ 𝑧 ≠ 𝑡))
19 ineq2 4160 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (𝑤 = 𝑡 → (𝑧 ∩ 𝑤) = (𝑧 ∩ 𝑡))
2019eqeq1d 2763 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑤 = 𝑡 → ((𝑧 ∩ 𝑤) = ∅ ↔ (𝑧 ∩ 𝑡) = ∅))
2118, 20imbi12d 347 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑤 = 𝑡 → ((𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) ↔ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅)))
2217, 21anbi12d 644 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑤 = 𝑡 → (((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) ↔ ((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅))))
2322rspcv 3573 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑡 ∈ 𝑥 → (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅))))
24 minel 4419 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 (((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ∩ 𝑡) = ∅) → ¬ (𝑓‘𝑡) ∈ 𝑧)
2524ex 418 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 ((𝑓‘𝑡) ∈ 𝑡 → ((𝑧 ∩ 𝑡) = ∅ → ¬ (𝑓‘𝑡) ∈ 𝑧))
2625imim2d 58 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 ((𝑓‘𝑡) ∈ 𝑡 → ((𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅) → (𝑧 ≠ 𝑡 → ¬ (𝑓‘𝑡) ∈ 𝑧)))
2726imp 412 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅)) → (𝑧 ≠ 𝑡 → ¬ (𝑓‘𝑡) ∈ 𝑧))
2827necon4ad 2975 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅)) → ((𝑓‘𝑡) ∈ 𝑧 → 𝑧 = 𝑡))
29 eleq1 2849 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑓‘𝑡) = 𝑣 → ((𝑓‘𝑡) ∈ 𝑧 ↔ 𝑣 ∈ 𝑧))
3029biimpar 483 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((𝑓‘𝑡) = 𝑣 ∧ 𝑣 ∈ 𝑧) → (𝑓‘𝑡) ∈ 𝑧)
3128, 30impel 515 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅)) ∧ ((𝑓‘𝑡) = 𝑣 ∧ 𝑣 ∈ 𝑧)) → 𝑧 = 𝑡)
32 fveq2 6885 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (𝑧 = 𝑡 → (𝑓‘𝑧) = (𝑓‘𝑡))
33 eqeq2 2773 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 ((𝑓‘𝑡) = 𝑣 → ((𝑓‘𝑧) = (𝑓‘𝑡) ↔ (𝑓‘𝑧) = 𝑣))
34 eqcom 2768 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 ((𝑓‘𝑧) = 𝑣 ↔ 𝑣 = (𝑓‘𝑧))
3533, 34bitrdi 290 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑓‘𝑡) = 𝑣 → ((𝑓‘𝑧) = (𝑓‘𝑡) ↔ 𝑣 = (𝑓‘𝑧)))
3632, 35imbitrid 247 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((𝑓‘𝑡) = 𝑣 → (𝑧 = 𝑡 → 𝑣 = (𝑓‘𝑧)))
3736ad2antrl 741 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅)) ∧ ((𝑓‘𝑡) = 𝑣 ∧ 𝑣 ∈ 𝑧)) → (𝑧 = 𝑡 → 𝑣 = (𝑓‘𝑧)))
3831, 37mpd 16 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅)) ∧ ((𝑓‘𝑡) = 𝑣 ∧ 𝑣 ∈ 𝑧)) → 𝑣 = (𝑓‘𝑧))
3938exp32 426 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑓‘𝑡) ∈ 𝑡 ∧ (𝑧 ≠ 𝑡 → (𝑧 ∩ 𝑡) = ∅)) → ((𝑓‘𝑡) = 𝑣 → (𝑣 ∈ 𝑧 → 𝑣 = (𝑓‘𝑧))))
4023, 39syl6com 38 . . . . . . . . . . . . . . . . . . . . . . . . 25 (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → (𝑡 ∈ 𝑥 → ((𝑓‘𝑡) = 𝑣 → (𝑣 ∈ 𝑧 → 𝑣 = (𝑓‘𝑧)))))
4140com14 97 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑣 ∈ 𝑧 → (𝑡 ∈ 𝑥 → ((𝑓‘𝑡) = 𝑣 → (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → 𝑣 = (𝑓‘𝑧)))))
4241rexlimdv 3162 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑣 ∈ 𝑧 → (∃𝑡 ∈ 𝑥 (𝑓‘𝑡) = 𝑣 → (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → 𝑣 = (𝑓‘𝑧))))
4314, 42syl5 35 . . . . . . . . . . . . . . . . . . . . . 22 (𝑣 ∈ 𝑧 → ((𝑣 ∈ ran 𝑓 ∧ 𝑓 Fn 𝑥) → (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → 𝑣 = (𝑓‘𝑧))))
4443expd 421 . . . . . . . . . . . . . . . . . . . . 21 (𝑣 ∈ 𝑧 → (𝑣 ∈ ran 𝑓 → (𝑓 Fn 𝑥 → (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → 𝑣 = (𝑓‘𝑧)))))
4544com4t 94 . . . . . . . . . . . . . . . . . . . 20 (𝑓 Fn 𝑥 → (∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → (𝑣 ∈ 𝑧 → (𝑣 ∈ ran 𝑓 → 𝑣 = (𝑓‘𝑧)))))
4645imp4b 427 . . . . . . . . . . . . . . . . . . 19 ((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅))) → ((𝑣 ∈ 𝑧 ∧ 𝑣 ∈ ran 𝑓) → 𝑣 = (𝑓‘𝑧)))
4712, 46biimtrid 245 . . . . . . . . . . . . . . . . . 18 ((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 ((𝑓‘𝑤) ∈ 𝑤 ∧ (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅))) → (𝑣 ∈ (𝑧 ∩ ran 𝑓) → 𝑣 = (𝑓‘𝑧)))
4811, 47sylan2br 607 . . . . . . . . . . . . . . . . 17 ((𝑓 Fn 𝑥 ∧ (∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 ∧ ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅))) → (𝑣 ∈ (𝑧 ∩ ran 𝑓) → 𝑣 = (𝑓‘𝑧)))
4948anassrs 473 . . . . . . . . . . . . . . . 16 (((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → (𝑣 ∈ (𝑧 ∩ ran 𝑓) → 𝑣 = (𝑓‘𝑧)))
5049adantlr 728 . . . . . . . . . . . . . . 15 ((((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) ∧ ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → (𝑣 ∈ (𝑧 ∩ ran 𝑓) → 𝑣 = (𝑓‘𝑧)))
51 fveq2 6885 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑤 = 𝑧 → (𝑓‘𝑤) = (𝑓‘𝑧))
52 id 23 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑤 = 𝑧 → 𝑤 = 𝑧)
5351, 52eleq12d 2855 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑤 = 𝑧 → ((𝑓‘𝑤) ∈ 𝑤 ↔ (𝑓‘𝑧) ∈ 𝑧))
5453rspcv 3573 . . . . . . . . . . . . . . . . . . . . . 22 (𝑧 ∈ 𝑥 → (∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 → (𝑓‘𝑧) ∈ 𝑧))
55 fnfvelrn 7080 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑓 Fn 𝑥 ∧ 𝑧 ∈ 𝑥) → (𝑓‘𝑧) ∈ ran 𝑓)
5655expcom 419 . . . . . . . . . . . . . . . . . . . . . 22 (𝑧 ∈ 𝑥 → (𝑓 Fn 𝑥 → (𝑓‘𝑧) ∈ ran 𝑓))
5754, 56anim12d 621 . . . . . . . . . . . . . . . . . . . . 21 (𝑧 ∈ 𝑥 → ((∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 ∧ 𝑓 Fn 𝑥) → ((𝑓‘𝑧) ∈ 𝑧 ∧ (𝑓‘𝑧) ∈ ran 𝑓)))
58 elin 3915 . . . . . . . . . . . . . . . . . . . . 21 ((𝑓‘𝑧) ∈ (𝑧 ∩ ran 𝑓) ↔ ((𝑓‘𝑧) ∈ 𝑧 ∧ (𝑓‘𝑧) ∈ ran 𝑓))
5957, 58imbitrrdi 255 . . . . . . . . . . . . . . . . . . . 20 (𝑧 ∈ 𝑥 → ((∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 ∧ 𝑓 Fn 𝑥) → (𝑓‘𝑧) ∈ (𝑧 ∩ ran 𝑓)))
6059expd 421 . . . . . . . . . . . . . . . . . . 19 (𝑧 ∈ 𝑥 → (∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 → (𝑓 Fn 𝑥 → (𝑓‘𝑧) ∈ (𝑧 ∩ ran 𝑓))))
6160com13 89 . . . . . . . . . . . . . . . . . 18 (𝑓 Fn 𝑥 → (∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 → (𝑧 ∈ 𝑥 → (𝑓‘𝑧) ∈ (𝑧 ∩ ran 𝑓))))
6261imp31 423 . . . . . . . . . . . . . . . . 17 (((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) → (𝑓‘𝑧) ∈ (𝑧 ∩ ran 𝑓))
63 eleq1 2849 . . . . . . . . . . . . . . . . 17 (𝑣 = (𝑓‘𝑧) → (𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ (𝑓‘𝑧) ∈ (𝑧 ∩ ran 𝑓)))
6462, 63syl5ibrcom 250 . . . . . . . . . . . . . . . 16 (((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) → (𝑣 = (𝑓‘𝑧) → 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
6564adantr 486 . . . . . . . . . . . . . . 15 ((((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) ∧ ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → (𝑣 = (𝑓‘𝑧) → 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
6650, 65impbid 215 . . . . . . . . . . . . . 14 ((((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) ∧ ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → (𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = (𝑓‘𝑧)))
6766ex 418 . . . . . . . . . . . . 13 (((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) → (∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) → (𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = (𝑓‘𝑧))))
6867alrimdv 1962 . . . . . . . . . . . 12 (((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) → (∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) → ∀𝑣(𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = (𝑓‘𝑧))))
69 fvex 6898 . . . . . . . . . . . . . 14 (𝑓‘𝑧) ∈ V
70 eqeq2 2773 . . . . . . . . . . . . . . . 16 (ℎ = (𝑓‘𝑧) → (𝑣 = ℎ ↔ 𝑣 = (𝑓‘𝑧)))
7170bibi2d 345 . . . . . . . . . . . . . . 15 (ℎ = (𝑓‘𝑧) → ((𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = ℎ) ↔ (𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = (𝑓‘𝑧))))
7271albidv 1953 . . . . . . . . . . . . . 14 (ℎ = (𝑓‘𝑧) → (∀𝑣(𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = ℎ) ↔ ∀𝑣(𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = (𝑓‘𝑧))))
7369, 72spcev 3561 . . . . . . . . . . . . 13 (∀𝑣(𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = (𝑓‘𝑧)) → ∃ℎ∀𝑣(𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = ℎ))
74 eu6 2600 . . . . . . . . . . . . 13 (∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ ∃ℎ∀𝑣(𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = ℎ))
7573, 74sylibr 237 . . . . . . . . . . . 12 (∀𝑣(𝑣 ∈ (𝑧 ∩ ran 𝑓) ↔ 𝑣 = (𝑓‘𝑧)) → ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓))
7668, 75syl6 36 . . . . . . . . . . 11 (((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) ∧ 𝑧 ∈ 𝑥) → (∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) → ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
7776ralimdva 3175 . . . . . . . . . 10 ((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤) → (∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) → ∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
7877ex 418 . . . . . . . . 9 (𝑓 Fn 𝑥 → (∀𝑤 ∈ 𝑥 (𝑓‘𝑤) ∈ 𝑤 → (∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) → ∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓))))
7910, 78syl5 35 . . . . . . . 8 (𝑓 Fn 𝑥 → ((∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) ∧ ∀𝑧 ∈ 𝑥 𝑧 ≠ ∅) → (∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) → ∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓))))
8079expd 421 . . . . . . 7 (𝑓 Fn 𝑥 → (∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤) → (∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ → (∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅) → ∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓)))))
8180imp4b 427 . . . . . 6 ((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤)) → ((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
82 vex 3455 . . . . . . . 8 𝑓 ∈ V
8382rnex 7922 . . . . . . 7 ran 𝑓 ∈ V
84 ineq2 4160 . . . . . . . . . 10 (𝑦 = ran 𝑓 → (𝑧 ∩ 𝑦) = (𝑧 ∩ ran 𝑓))
8584eleq2d 2847 . . . . . . . . 9 (𝑦 = ran 𝑓 → (𝑣 ∈ (𝑧 ∩ 𝑦) ↔ 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
8685eubidv 2612 . . . . . . . 8 (𝑦 = ran 𝑓 → (∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦) ↔ ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
8786ralbidv 3186 . . . . . . 7 (𝑦 = ran 𝑓 → (∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦) ↔ ∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓)))
8883, 87spcev 3561 . . . . . 6 (∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ ran 𝑓) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦))
8981, 88syl6 36 . . . . 5 ((𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤)) → ((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)))
9089exlimiv 1963 . . . 4 (∃𝑓(𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤)) → ((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)))
9190alimi 1844 . . 3 (∀𝑥∃𝑓(𝑓 Fn 𝑥 ∧ ∀𝑤 ∈ 𝑥 (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤)) → ∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)))
921, 91sylbi 220 . 2 (CHOICE → ∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)))
93 eqid 2761 . . . . 5 {𝑢 ∣ (𝑢 ≠ ∅ ∧ ∃𝑡 ∈ ℎ 𝑢 = ({𝑡} × 𝑡))} = {𝑢 ∣ (𝑢 ≠ ∅ ∧ ∃𝑡 ∈ ℎ 𝑢 = ({𝑡} × 𝑡))}
94 biid 264 . . . . 5 (∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)) ↔ ∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)))
95 eqid 2761 . . . . 5 (∪ {𝑢 ∣ (𝑢 ≠ ∅ ∧ ∃𝑡 ∈ ℎ 𝑢 = ({𝑡} × 𝑡))} ∩ 𝑦) = (∪ {𝑢 ∣ (𝑢 ≠ ∅ ∧ ∃𝑡 ∈ ℎ 𝑢 = ({𝑡} × 𝑡))} ∩ 𝑦)
9693, 94, 95dfac5lem5 10206 . . . 4 (∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)) → ∃𝑓∀𝑤 ∈ ℎ (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤))
9796alrimiv 1960 . . 3 (∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)) → ∀ℎ∃𝑓∀𝑤 ∈ ℎ (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤))
98 dfac3 10200 . . 3 (CHOICE ↔ ∀ℎ∃𝑓∀𝑤 ∈ ℎ (𝑤 ≠ ∅ → (𝑓‘𝑤) ∈ 𝑤))
9997, 98sylibr 237 . 2 (∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)) → CHOICE)
10092, 99impbii 212 1 (CHOICE ↔ ∀𝑥((∀𝑧 ∈ 𝑥 𝑧 ≠ ∅ ∧ ∀𝑧 ∈ 𝑥 ∀𝑤 ∈ 𝑥 (𝑧 ≠ 𝑤 → (𝑧 ∩ 𝑤) = ∅)) → ∃𝑦∀𝑧 ∈ 𝑥 ∃!𝑣 𝑣 ∈ (𝑧 ∩ 𝑦)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401  ∀wal 1568   = wceq 1570  ∃wex 1812   ∈ wcel 2145  ∃!weu 2594  {cab 2739   ≠ wne 2956  ∀wral 3077  ∃wrex 3087   ∩ cin 3898  ∅c0 4279  {csn 4584  ∪ cuni 4867   × cxp 5649  ran crn 5652   Fn wfn 6533  ‘cfv 6538  CHOICEwac 10194
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5546  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-fv 6546  df-ac 10195
This theorem is used by:  dfackm  10245  ac8  10570  dfac5prim  45979
  Copyright terms: Public domain W3C validator