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

Theorem dfac2b 9154
Description: Axiom of Choice (first form) of [Enderton] p. 49 implies our Axiom of Choice (in the form of ac3 9487). The proof does not make use of AC. Note that the Axiom of Regularity is used by the proof. Specifically, elneq 8660 and preleq 8676 that are referenced in the proof each make use of Regularity for their derivations. (The reverse implication can be derived without using Regularity; see dfac2a 9153.) (Contributed by NM, 5-Apr-2004.) (Revised by Mario Carneiro, 26-Jun-2015.) (Revised by AV, 16-Jun-2022.)
Assertion
Ref Expression
dfac2b (CHOICE → ∀𝑥𝑦𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)))
Distinct variable group:   𝑥,𝑧,𝑦,𝑤,𝑣

Proof of Theorem dfac2b
Dummy variables 𝑓 𝑢 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 dfac3 9145 . 2 (CHOICE ↔ ∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧))
2 nfra1 3090 . . . . . 6 𝑧𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)
3 rsp 3078 . . . . . . . . . . . 12 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → (𝑧𝑥 → (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)))
4 equid 2097 . . . . . . . . . . . . . . . . . 18 𝑧 = 𝑧
5 neeq1 3005 . . . . . . . . . . . . . . . . . . . 20 (𝑢 = 𝑧 → (𝑢 ≠ ∅ ↔ 𝑧 ≠ ∅))
6 eqeq1 2775 . . . . . . . . . . . . . . . . . . . 20 (𝑢 = 𝑧 → (𝑢 = 𝑧𝑧 = 𝑧))
75, 6anbi12d 610 . . . . . . . . . . . . . . . . . . 19 (𝑢 = 𝑧 → ((𝑢 ≠ ∅ ∧ 𝑢 = 𝑧) ↔ (𝑧 ≠ ∅ ∧ 𝑧 = 𝑧)))
87rspcev 3461 . . . . . . . . . . . . . . . . . 18 ((𝑧𝑥 ∧ (𝑧 ≠ ∅ ∧ 𝑧 = 𝑧)) → ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑢 = 𝑧))
94, 8mpanr2 678 . . . . . . . . . . . . . . . . 17 ((𝑧𝑥𝑧 ≠ ∅) → ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑢 = 𝑧))
10 fveq2 6333 . . . . . . . . . . . . . . . . . . . . 21 (𝑢 = 𝑧 → (𝑓𝑢) = (𝑓𝑧))
1110preq1d 4411 . . . . . . . . . . . . . . . . . . . 20 (𝑢 = 𝑧 → {(𝑓𝑢), 𝑢} = {(𝑓𝑧), 𝑢})
12 preq2 4406 . . . . . . . . . . . . . . . . . . . 20 (𝑢 = 𝑧 → {(𝑓𝑧), 𝑢} = {(𝑓𝑧), 𝑧})
1311, 12eqtr2d 2806 . . . . . . . . . . . . . . . . . . 19 (𝑢 = 𝑧 → {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢})
1413anim2i 597 . . . . . . . . . . . . . . . . . 18 ((𝑢 ≠ ∅ ∧ 𝑢 = 𝑧) → (𝑢 ≠ ∅ ∧ {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢}))
1514reximi 3159 . . . . . . . . . . . . . . . . 17 (∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑢 = 𝑧) → ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢}))
169, 15syl 17 . . . . . . . . . . . . . . . 16 ((𝑧𝑥𝑧 ≠ ∅) → ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢}))
17 prex 5038 . . . . . . . . . . . . . . . . 17 {(𝑓𝑧), 𝑧} ∈ V
18 eqeq1 2775 . . . . . . . . . . . . . . . . . . 19 (𝑔 = {(𝑓𝑧), 𝑧} → (𝑔 = {(𝑓𝑢), 𝑢} ↔ {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢}))
1918anbi2d 608 . . . . . . . . . . . . . . . . . 18 (𝑔 = {(𝑓𝑧), 𝑧} → ((𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢}) ↔ (𝑢 ≠ ∅ ∧ {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢})))
2019rexbidv 3200 . . . . . . . . . . . . . . . . 17 (𝑔 = {(𝑓𝑧), 𝑧} → (∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢}) ↔ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢})))
2117, 20elab 3502 . . . . . . . . . . . . . . . 16 ({(𝑓𝑧), 𝑧} ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ↔ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ {(𝑓𝑧), 𝑧} = {(𝑓𝑢), 𝑢}))
2216, 21sylibr 224 . . . . . . . . . . . . . . 15 ((𝑧𝑥𝑧 ≠ ∅) → {(𝑓𝑧), 𝑧} ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})})
23 vex 3354 . . . . . . . . . . . . . . . . 17 𝑧 ∈ V
2423prid2 4435 . . . . . . . . . . . . . . . 16 𝑧 ∈ {(𝑓𝑧), 𝑧}
25 fvex 6343 . . . . . . . . . . . . . . . . 17 (𝑓𝑧) ∈ V
2625prid1 4434 . . . . . . . . . . . . . . . 16 (𝑓𝑧) ∈ {(𝑓𝑧), 𝑧}
2724, 26pm3.2i 447 . . . . . . . . . . . . . . 15 (𝑧 ∈ {(𝑓𝑧), 𝑧} ∧ (𝑓𝑧) ∈ {(𝑓𝑧), 𝑧})
28 eleq2 2839 . . . . . . . . . . . . . . . . 17 (𝑣 = {(𝑓𝑧), 𝑧} → (𝑧𝑣𝑧 ∈ {(𝑓𝑧), 𝑧}))
29 eleq2 2839 . . . . . . . . . . . . . . . . 17 (𝑣 = {(𝑓𝑧), 𝑧} → ((𝑓𝑧) ∈ 𝑣 ↔ (𝑓𝑧) ∈ {(𝑓𝑧), 𝑧}))
3028, 29anbi12d 610 . . . . . . . . . . . . . . . 16 (𝑣 = {(𝑓𝑧), 𝑧} → ((𝑧𝑣 ∧ (𝑓𝑧) ∈ 𝑣) ↔ (𝑧 ∈ {(𝑓𝑧), 𝑧} ∧ (𝑓𝑧) ∈ {(𝑓𝑧), 𝑧})))
3130rspcev 3461 . . . . . . . . . . . . . . 15 (({(𝑓𝑧), 𝑧} ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ∧ (𝑧 ∈ {(𝑓𝑧), 𝑧} ∧ (𝑓𝑧) ∈ {(𝑓𝑧), 𝑧})) → ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣 ∧ (𝑓𝑧) ∈ 𝑣))
3222, 27, 31sylancl 568 . . . . . . . . . . . . . 14 ((𝑧𝑥𝑧 ≠ ∅) → ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣 ∧ (𝑓𝑧) ∈ 𝑣))
33 eleq1 2838 . . . . . . . . . . . . . . . 16 (𝑤 = (𝑓𝑧) → (𝑤𝑧 ↔ (𝑓𝑧) ∈ 𝑧))
34 eleq1 2838 . . . . . . . . . . . . . . . . . 18 (𝑤 = (𝑓𝑧) → (𝑤𝑣 ↔ (𝑓𝑧) ∈ 𝑣))
3534anbi2d 608 . . . . . . . . . . . . . . . . 17 (𝑤 = (𝑓𝑧) → ((𝑧𝑣𝑤𝑣) ↔ (𝑧𝑣 ∧ (𝑓𝑧) ∈ 𝑣)))
3635rexbidv 3200 . . . . . . . . . . . . . . . 16 (𝑤 = (𝑓𝑧) → (∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣) ↔ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣 ∧ (𝑓𝑧) ∈ 𝑣)))
3733, 36anbi12d 610 . . . . . . . . . . . . . . 15 (𝑤 = (𝑓𝑧) → ((𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) ↔ ((𝑓𝑧) ∈ 𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣 ∧ (𝑓𝑧) ∈ 𝑣))))
3825, 37spcev 3452 . . . . . . . . . . . . . 14 (((𝑓𝑧) ∈ 𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣 ∧ (𝑓𝑧) ∈ 𝑣)) → ∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
3932, 38sylan2 574 . . . . . . . . . . . . 13 (((𝑓𝑧) ∈ 𝑧 ∧ (𝑧𝑥𝑧 ≠ ∅)) → ∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
4039ex 397 . . . . . . . . . . . 12 ((𝑓𝑧) ∈ 𝑧 → ((𝑧𝑥𝑧 ≠ ∅) → ∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))
413, 40syl8 76 . . . . . . . . . . 11 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → (𝑧𝑥 → (𝑧 ≠ ∅ → ((𝑧𝑥𝑧 ≠ ∅) → ∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))))
4241impd 396 . . . . . . . . . 10 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ((𝑧𝑥𝑧 ≠ ∅) → ((𝑧𝑥𝑧 ≠ ∅) → ∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))))
4342pm2.43d 53 . . . . . . . . 9 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ((𝑧𝑥𝑧 ≠ ∅) → ∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))
44 df-rex 3067 . . . . . . . . . . . . 13 (∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣) ↔ ∃𝑣(𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ∧ (𝑧𝑣𝑤𝑣)))
45 vex 3354 . . . . . . . . . . . . . . . . . . 19 𝑣 ∈ V
46 eqeq1 2775 . . . . . . . . . . . . . . . . . . . . 21 (𝑔 = 𝑣 → (𝑔 = {(𝑓𝑢), 𝑢} ↔ 𝑣 = {(𝑓𝑢), 𝑢}))
4746anbi2d 608 . . . . . . . . . . . . . . . . . . . 20 (𝑔 = 𝑣 → ((𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢}) ↔ (𝑢 ≠ ∅ ∧ 𝑣 = {(𝑓𝑢), 𝑢})))
4847rexbidv 3200 . . . . . . . . . . . . . . . . . . 19 (𝑔 = 𝑣 → (∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢}) ↔ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑣 = {(𝑓𝑢), 𝑢})))
4945, 48elab 3502 . . . . . . . . . . . . . . . . . 18 (𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ↔ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑣 = {(𝑓𝑢), 𝑢}))
50 neeq1 3005 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑧 = 𝑢 → (𝑧 ≠ ∅ ↔ 𝑢 ≠ ∅))
51 fveq2 6333 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑧 = 𝑢 → (𝑓𝑧) = (𝑓𝑢))
5251eleq1d 2835 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑧 = 𝑢 → ((𝑓𝑧) ∈ 𝑧 ↔ (𝑓𝑢) ∈ 𝑧))
53 eleq2 2839 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑧 = 𝑢 → ((𝑓𝑢) ∈ 𝑧 ↔ (𝑓𝑢) ∈ 𝑢))
5452, 53bitrd 268 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑧 = 𝑢 → ((𝑓𝑧) ∈ 𝑧 ↔ (𝑓𝑢) ∈ 𝑢))
5550, 54imbi12d 333 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑧 = 𝑢 → ((𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) ↔ (𝑢 ≠ ∅ → (𝑓𝑢) ∈ 𝑢)))
5655rspccv 3458 . . . . . . . . . . . . . . . . . . . . . . . 24 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → (𝑢𝑥 → (𝑢 ≠ ∅ → (𝑓𝑢) ∈ 𝑢)))
57 elneq 8660 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 (𝑤𝑧𝑤𝑧)
5857neneqd 2948 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (𝑤𝑧 → ¬ 𝑤 = 𝑧)
59 vex 3354 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 𝑤 ∈ V
60 neqne 2951 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 𝑤 = 𝑧𝑤𝑧)
61 prel12g 4531 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 ((𝑤 ∈ V ∧ 𝑧 ∈ V ∧ 𝑤𝑧) → ({𝑤, 𝑧} = {(𝑓𝑢), 𝑢} ↔ (𝑤 ∈ {(𝑓𝑢), 𝑢} ∧ 𝑧 ∈ {(𝑓𝑢), 𝑢})))
6259, 23, 60, 61mp3an12i 1576 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 𝑤 = 𝑧 → ({𝑤, 𝑧} = {(𝑓𝑢), 𝑢} ↔ (𝑤 ∈ {(𝑓𝑢), 𝑢} ∧ 𝑧 ∈ {(𝑓𝑢), 𝑢})))
63 ancom 452 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 ((𝑤𝑣𝑧𝑣) ↔ (𝑧𝑣𝑤𝑣))
64 eleq2 2839 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 (𝑣 = {(𝑓𝑢), 𝑢} → (𝑤𝑣𝑤 ∈ {(𝑓𝑢), 𝑢}))
65 eleq2 2839 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 (𝑣 = {(𝑓𝑢), 𝑢} → (𝑧𝑣𝑧 ∈ {(𝑓𝑢), 𝑢}))
6664, 65anbi12d 610 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 (𝑣 = {(𝑓𝑢), 𝑢} → ((𝑤𝑣𝑧𝑣) ↔ (𝑤 ∈ {(𝑓𝑢), 𝑢} ∧ 𝑧 ∈ {(𝑓𝑢), 𝑢})))
6763, 66syl5rbbr 275 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 (𝑣 = {(𝑓𝑢), 𝑢} → ((𝑤 ∈ {(𝑓𝑢), 𝑢} ∧ 𝑧 ∈ {(𝑓𝑢), 𝑢}) ↔ (𝑧𝑣𝑤𝑣)))
6862, 67sylan9bbr 496 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 ((𝑣 = {(𝑓𝑢), 𝑢} ∧ ¬ 𝑤 = 𝑧) → ({𝑤, 𝑧} = {(𝑓𝑢), 𝑢} ↔ (𝑧𝑣𝑤𝑣)))
6958, 68sylan2 574 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑣 = {(𝑓𝑢), 𝑢} ∧ 𝑤𝑧) → ({𝑤, 𝑧} = {(𝑓𝑢), 𝑢} ↔ (𝑧𝑣𝑤𝑣)))
7069adantrr 690 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((𝑣 = {(𝑓𝑢), 𝑢} ∧ (𝑤𝑧 ∧ (𝑓𝑢) ∈ 𝑢)) → ({𝑤, 𝑧} = {(𝑓𝑢), 𝑢} ↔ (𝑧𝑣𝑤𝑣)))
7170pm5.32da 562 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑣 = {(𝑓𝑢), 𝑢} → (((𝑤𝑧 ∧ (𝑓𝑢) ∈ 𝑢) ∧ {𝑤, 𝑧} = {(𝑓𝑢), 𝑢}) ↔ ((𝑤𝑧 ∧ (𝑓𝑢) ∈ 𝑢) ∧ (𝑧𝑣𝑤𝑣))))
7223preleq 8676 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑤𝑧 ∧ (𝑓𝑢) ∈ 𝑢) ∧ {𝑤, 𝑧} = {(𝑓𝑢), 𝑢}) → (𝑤 = (𝑓𝑢) ∧ 𝑧 = 𝑢))
7371, 72syl6bir 244 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑣 = {(𝑓𝑢), 𝑢} → (((𝑤𝑧 ∧ (𝑓𝑢) ∈ 𝑢) ∧ (𝑧𝑣𝑤𝑣)) → (𝑤 = (𝑓𝑢) ∧ 𝑧 = 𝑢)))
7451eqeq2d 2781 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑧 = 𝑢 → (𝑤 = (𝑓𝑧) ↔ 𝑤 = (𝑓𝑢)))
7574biimparc 465 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑤 = (𝑓𝑢) ∧ 𝑧 = 𝑢) → 𝑤 = (𝑓𝑧))
7673, 75syl6 35 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑣 = {(𝑓𝑢), 𝑢} → (((𝑤𝑧 ∧ (𝑓𝑢) ∈ 𝑢) ∧ (𝑧𝑣𝑤𝑣)) → 𝑤 = (𝑓𝑧)))
7776exp4c 419 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑣 = {(𝑓𝑢), 𝑢} → (𝑤𝑧 → ((𝑓𝑢) ∈ 𝑢 → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))
7877com13 88 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑓𝑢) ∈ 𝑢 → (𝑤𝑧 → (𝑣 = {(𝑓𝑢), 𝑢} → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))
7956, 78syl8 76 . . . . . . . . . . . . . . . . . . . . . . 23 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → (𝑢𝑥 → (𝑢 ≠ ∅ → (𝑤𝑧 → (𝑣 = {(𝑓𝑢), 𝑢} → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))))
8079com4r 94 . . . . . . . . . . . . . . . . . . . . . 22 (𝑤𝑧 → (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → (𝑢𝑥 → (𝑢 ≠ ∅ → (𝑣 = {(𝑓𝑢), 𝑢} → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))))
8180imp 393 . . . . . . . . . . . . . . . . . . . . 21 ((𝑤𝑧 ∧ ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)) → (𝑢𝑥 → (𝑢 ≠ ∅ → (𝑣 = {(𝑓𝑢), 𝑢} → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧))))))
8281imp4a 409 . . . . . . . . . . . . . . . . . . . 20 ((𝑤𝑧 ∧ ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)) → (𝑢𝑥 → ((𝑢 ≠ ∅ ∧ 𝑣 = {(𝑓𝑢), 𝑢}) → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))
8382com3l 89 . . . . . . . . . . . . . . . . . . 19 (𝑢𝑥 → ((𝑢 ≠ ∅ ∧ 𝑣 = {(𝑓𝑢), 𝑢}) → ((𝑤𝑧 ∧ ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)) → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))
8483rexlimiv 3175 . . . . . . . . . . . . . . . . . 18 (∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑣 = {(𝑓𝑢), 𝑢}) → ((𝑤𝑧 ∧ ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)) → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧))))
8549, 84sylbi 207 . . . . . . . . . . . . . . . . 17 (𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} → ((𝑤𝑧 ∧ ∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧)) → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧))))
8685expd 400 . . . . . . . . . . . . . . . 16 (𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} → (𝑤𝑧 → (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))
8786com13 88 . . . . . . . . . . . . . . 15 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → (𝑤𝑧 → (𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} → ((𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))))
8887imp4b 408 . . . . . . . . . . . . . 14 ((∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) ∧ 𝑤𝑧) → ((𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ∧ (𝑧𝑣𝑤𝑣)) → 𝑤 = (𝑓𝑧)))
8988exlimdv 2013 . . . . . . . . . . . . 13 ((∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) ∧ 𝑤𝑧) → (∃𝑣(𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ∧ (𝑧𝑣𝑤𝑣)) → 𝑤 = (𝑓𝑧)))
9044, 89syl5bi 232 . . . . . . . . . . . 12 ((∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) ∧ 𝑤𝑧) → (∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣) → 𝑤 = (𝑓𝑧)))
9190expimpd 441 . . . . . . . . . . 11 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ((𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) → 𝑤 = (𝑓𝑧)))
9291alrimiv 2007 . . . . . . . . . 10 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∀𝑤((𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) → 𝑤 = (𝑓𝑧)))
93 mo2icl 3538 . . . . . . . . . 10 (∀𝑤((𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) → 𝑤 = (𝑓𝑧)) → ∃*𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
9492, 93syl 17 . . . . . . . . 9 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃*𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
9543, 94jctird 512 . . . . . . . 8 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ((𝑧𝑥𝑧 ≠ ∅) → (∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) ∧ ∃*𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))))
96 df-reu 3068 . . . . . . . . 9 (∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣) ↔ ∃!𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
97 eu5 2644 . . . . . . . . 9 (∃!𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) ↔ (∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) ∧ ∃*𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))
9896, 97bitri 264 . . . . . . . 8 (∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣) ↔ (∃𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) ∧ ∃*𝑤(𝑤𝑧 ∧ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))
9995, 98syl6ibr 242 . . . . . . 7 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ((𝑧𝑥𝑧 ≠ ∅) → ∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
10099expd 400 . . . . . 6 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → (𝑧𝑥 → (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))
1012, 100ralrimi 3106 . . . . 5 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∀𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
102 vex 3354 . . . . . . . . . . 11 𝑓 ∈ V
103102rnex 7248 . . . . . . . . . 10 ran 𝑓 ∈ V
104 p0ex 4985 . . . . . . . . . 10 {∅} ∈ V
105103, 104unex 7104 . . . . . . . . 9 (ran 𝑓 ∪ {∅}) ∈ V
106 vex 3354 . . . . . . . . 9 𝑥 ∈ V
107105, 106unex 7104 . . . . . . . 8 ((ran 𝑓 ∪ {∅}) ∪ 𝑥) ∈ V
108107pwex 4982 . . . . . . 7 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥) ∈ V
109 ssun1 3928 . . . . . . . . . . . . . 14 (ran 𝑓 ∪ {∅}) ⊆ ((ran 𝑓 ∪ {∅}) ∪ 𝑥)
110 fvrn0 6358 . . . . . . . . . . . . . 14 (𝑓𝑢) ∈ (ran 𝑓 ∪ {∅})
111109, 110sselii 3750 . . . . . . . . . . . . 13 (𝑓𝑢) ∈ ((ran 𝑓 ∪ {∅}) ∪ 𝑥)
112 elun2 3933 . . . . . . . . . . . . 13 (𝑢𝑥𝑢 ∈ ((ran 𝑓 ∪ {∅}) ∪ 𝑥))
113 prssi 4488 . . . . . . . . . . . . 13 (((𝑓𝑢) ∈ ((ran 𝑓 ∪ {∅}) ∪ 𝑥) ∧ 𝑢 ∈ ((ran 𝑓 ∪ {∅}) ∪ 𝑥)) → {(𝑓𝑢), 𝑢} ⊆ ((ran 𝑓 ∪ {∅}) ∪ 𝑥))
114111, 112, 113sylancr 569 . . . . . . . . . . . 12 (𝑢𝑥 → {(𝑓𝑢), 𝑢} ⊆ ((ran 𝑓 ∪ {∅}) ∪ 𝑥))
115 prex 5038 . . . . . . . . . . . . 13 {(𝑓𝑢), 𝑢} ∈ V
116115elpw 4304 . . . . . . . . . . . 12 ({(𝑓𝑢), 𝑢} ∈ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥) ↔ {(𝑓𝑢), 𝑢} ⊆ ((ran 𝑓 ∪ {∅}) ∪ 𝑥))
117114, 116sylibr 224 . . . . . . . . . . 11 (𝑢𝑥 → {(𝑓𝑢), 𝑢} ∈ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥))
118 eleq1 2838 . . . . . . . . . . 11 (𝑔 = {(𝑓𝑢), 𝑢} → (𝑔 ∈ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥) ↔ {(𝑓𝑢), 𝑢} ∈ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥)))
119117, 118syl5ibrcom 237 . . . . . . . . . 10 (𝑢𝑥 → (𝑔 = {(𝑓𝑢), 𝑢} → 𝑔 ∈ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥)))
120119adantld 474 . . . . . . . . 9 (𝑢𝑥 → ((𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢}) → 𝑔 ∈ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥)))
121120rexlimiv 3175 . . . . . . . 8 (∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢}) → 𝑔 ∈ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥))
122121abssi 3827 . . . . . . 7 {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ⊆ 𝒫 ((ran 𝑓 ∪ {∅}) ∪ 𝑥)
123108, 122ssexi 4938 . . . . . 6 {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} ∈ V
124 rexeq 3288 . . . . . . . . 9 (𝑦 = {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} → (∃𝑣𝑦 (𝑧𝑣𝑤𝑣) ↔ ∃𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
125124reubidv 3275 . . . . . . . 8 (𝑦 = {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} → (∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣) ↔ ∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)))
126125imbi2d 329 . . . . . . 7 (𝑦 = {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} → ((𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)) ↔ (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))
127126ralbidv 3135 . . . . . 6 (𝑦 = {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} → (∀𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)) ↔ ∀𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣))))
128123, 127spcev 3452 . . . . 5 (∀𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣 ∈ {𝑔 ∣ ∃𝑢𝑥 (𝑢 ≠ ∅ ∧ 𝑔 = {(𝑓𝑢), 𝑢})} (𝑧𝑣𝑤𝑣)) → ∃𝑦𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)))
129101, 128syl 17 . . . 4 (∀𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃𝑦𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)))
130129exlimiv 2010 . . 3 (∃𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∃𝑦𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)))
131130alimi 1887 . 2 (∀𝑥𝑓𝑧𝑥 (𝑧 ≠ ∅ → (𝑓𝑧) ∈ 𝑧) → ∀𝑥𝑦𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)))
1321, 131sylbi 207 1 (CHOICE → ∀𝑥𝑦𝑧𝑥 (𝑧 ≠ ∅ → ∃!𝑤𝑧𝑣𝑦 (𝑧𝑣𝑤𝑣)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wa 382  wal 1629   = wceq 1631  wex 1852  wcel 2145  ∃!weu 2618  ∃*wmo 2619  {cab 2757  wne 2943  wral 3061  wrex 3062  ∃!wreu 3063  Vcvv 3351  cun 3722  wss 3724  c0 4064  𝒫 cpw 4298  {csn 4317  {cpr 4319  ran crn 5251  cfv 6032  CHOICEwac 9139
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1870  ax-4 1885  ax-5 1991  ax-6 2057  ax-7 2093  ax-8 2147  ax-9 2154  ax-10 2174  ax-11 2190  ax-12 2203  ax-13 2408  ax-ext 2751  ax-sep 4916  ax-nul 4924  ax-pow 4975  ax-pr 5035  ax-un 7097  ax-reg 8654
This theorem depends on definitions:  df-bi 197  df-an 383  df-or 829  df-3an 1073  df-tru 1634  df-ex 1853  df-nf 1858  df-sb 2050  df-eu 2622  df-mo 2623  df-clab 2758  df-cleq 2764  df-clel 2767  df-nfc 2902  df-ne 2944  df-ral 3066  df-rex 3067  df-reu 3068  df-rab 3070  df-v 3353  df-sbc 3589  df-dif 3727  df-un 3729  df-in 3731  df-ss 3738  df-nul 4065  df-if 4227  df-pw 4300  df-sn 4318  df-pr 4320  df-op 4324  df-uni 4576  df-br 4788  df-opab 4848  df-mpt 4865  df-id 5158  df-eprel 5163  df-fr 5209  df-xp 5256  df-rel 5257  df-cnv 5258  df-co 5259  df-dm 5260  df-rn 5261  df-res 5262  df-ima 5263  df-iota 5995  df-fun 6034  df-fn 6035  df-fv 6040  df-ac 9140
This theorem is referenced by:  dfac2  9155
  Copyright terms: Public domain W3C validator