ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  ac6sfi GIF version

Theorem ac6sfi 7086
Description: Existence of a choice function for finite sets. (Contributed by Jeff Hankins, 26-Jun-2009.) (Proof shortened by Mario Carneiro, 29-Jan-2014.)
Hypothesis
Ref Expression
ac6sfi.1 (𝑦 = (𝑓𝑥) → (𝜑𝜓))
Assertion
Ref Expression
ac6sfi ((𝐴 ∈ Fin ∧ ∀𝑥𝐴𝑦𝐵 𝜑) → ∃𝑓(𝑓:𝐴𝐵 ∧ ∀𝑥𝐴 𝜓))
Distinct variable groups:   𝑥,𝑓,𝐴   𝑦,𝑓,𝐵,𝑥   𝜑,𝑓   𝜓,𝑦
Allowed substitution hints:   𝜑(𝑥,𝑦)   𝜓(𝑥,𝑓)   𝐴(𝑦)

Proof of Theorem ac6sfi
Dummy variables 𝑢 𝑤 𝑧 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 raleq 2730 . . . 4 (𝑢 = ∅ → (∀𝑥𝑢𝑦𝐵 𝜑 ↔ ∀𝑥 ∈ ∅ ∃𝑦𝐵 𝜑))
2 feq2 5466 . . . . . 6 (𝑢 = ∅ → (𝑓:𝑢𝐵𝑓:∅⟶𝐵))
3 raleq 2730 . . . . . 6 (𝑢 = ∅ → (∀𝑥𝑢 𝜓 ↔ ∀𝑥 ∈ ∅ 𝜓))
42, 3anbi12d 473 . . . . 5 (𝑢 = ∅ → ((𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ (𝑓:∅⟶𝐵 ∧ ∀𝑥 ∈ ∅ 𝜓)))
54exbidv 1873 . . . 4 (𝑢 = ∅ → (∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ ∃𝑓(𝑓:∅⟶𝐵 ∧ ∀𝑥 ∈ ∅ 𝜓)))
61, 5imbi12d 234 . . 3 (𝑢 = ∅ → ((∀𝑥𝑢𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓)) ↔ (∀𝑥 ∈ ∅ ∃𝑦𝐵 𝜑 → ∃𝑓(𝑓:∅⟶𝐵 ∧ ∀𝑥 ∈ ∅ 𝜓))))
7 raleq 2730 . . . 4 (𝑢 = 𝑤 → (∀𝑥𝑢𝑦𝐵 𝜑 ↔ ∀𝑥𝑤𝑦𝐵 𝜑))
8 feq2 5466 . . . . . 6 (𝑢 = 𝑤 → (𝑓:𝑢𝐵𝑓:𝑤𝐵))
9 raleq 2730 . . . . . 6 (𝑢 = 𝑤 → (∀𝑥𝑢 𝜓 ↔ ∀𝑥𝑤 𝜓))
108, 9anbi12d 473 . . . . 5 (𝑢 = 𝑤 → ((𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)))
1110exbidv 1873 . . . 4 (𝑢 = 𝑤 → (∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ ∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)))
127, 11imbi12d 234 . . 3 (𝑢 = 𝑤 → ((∀𝑥𝑢𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓)) ↔ (∀𝑥𝑤𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓))))
13 raleq 2730 . . . 4 (𝑢 = (𝑤 ∪ {𝑧}) → (∀𝑥𝑢𝑦𝐵 𝜑 ↔ ∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑))
14 feq2 5466 . . . . . . 7 (𝑢 = (𝑤 ∪ {𝑧}) → (𝑓:𝑢𝐵𝑓:(𝑤 ∪ {𝑧})⟶𝐵))
15 raleq 2730 . . . . . . 7 (𝑢 = (𝑤 ∪ {𝑧}) → (∀𝑥𝑢 𝜓 ↔ ∀𝑥 ∈ (𝑤 ∪ {𝑧})𝜓))
1614, 15anbi12d 473 . . . . . 6 (𝑢 = (𝑤 ∪ {𝑧}) → ((𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ (𝑓:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})𝜓)))
1716exbidv 1873 . . . . 5 (𝑢 = (𝑤 ∪ {𝑧}) → (∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ ∃𝑓(𝑓:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})𝜓)))
18 feq1 5465 . . . . . . 7 (𝑓 = 𝑔 → (𝑓:(𝑤 ∪ {𝑧})⟶𝐵𝑔:(𝑤 ∪ {𝑧})⟶𝐵))
19 vex 2805 . . . . . . . . . . 11 𝑓 ∈ V
20 vex 2805 . . . . . . . . . . 11 𝑥 ∈ V
2119, 20fvex 5659 . . . . . . . . . 10 (𝑓𝑥) ∈ V
22 ac6sfi.1 . . . . . . . . . 10 (𝑦 = (𝑓𝑥) → (𝜑𝜓))
2321, 22sbcie 3066 . . . . . . . . 9 ([(𝑓𝑥) / 𝑦]𝜑𝜓)
24 fveq1 5638 . . . . . . . . . 10 (𝑓 = 𝑔 → (𝑓𝑥) = (𝑔𝑥))
2524sbceq1d 3036 . . . . . . . . 9 (𝑓 = 𝑔 → ([(𝑓𝑥) / 𝑦]𝜑[(𝑔𝑥) / 𝑦]𝜑))
2623, 25bitr3id 194 . . . . . . . 8 (𝑓 = 𝑔 → (𝜓[(𝑔𝑥) / 𝑦]𝜑))
2726ralbidv 2532 . . . . . . 7 (𝑓 = 𝑔 → (∀𝑥 ∈ (𝑤 ∪ {𝑧})𝜓 ↔ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))
2818, 27anbi12d 473 . . . . . 6 (𝑓 = 𝑔 → ((𝑓:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})𝜓) ↔ (𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑)))
2928cbvexv 1967 . . . . 5 (∃𝑓(𝑓:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})𝜓) ↔ ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))
3017, 29bitrdi 196 . . . 4 (𝑢 = (𝑤 ∪ {𝑧}) → (∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑)))
3113, 30imbi12d 234 . . 3 (𝑢 = (𝑤 ∪ {𝑧}) → ((∀𝑥𝑢𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓)) ↔ (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))))
32 raleq 2730 . . . 4 (𝑢 = 𝐴 → (∀𝑥𝑢𝑦𝐵 𝜑 ↔ ∀𝑥𝐴𝑦𝐵 𝜑))
33 feq2 5466 . . . . . 6 (𝑢 = 𝐴 → (𝑓:𝑢𝐵𝑓:𝐴𝐵))
34 raleq 2730 . . . . . 6 (𝑢 = 𝐴 → (∀𝑥𝑢 𝜓 ↔ ∀𝑥𝐴 𝜓))
3533, 34anbi12d 473 . . . . 5 (𝑢 = 𝐴 → ((𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ (𝑓:𝐴𝐵 ∧ ∀𝑥𝐴 𝜓)))
3635exbidv 1873 . . . 4 (𝑢 = 𝐴 → (∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓) ↔ ∃𝑓(𝑓:𝐴𝐵 ∧ ∀𝑥𝐴 𝜓)))
3732, 36imbi12d 234 . . 3 (𝑢 = 𝐴 → ((∀𝑥𝑢𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑢𝐵 ∧ ∀𝑥𝑢 𝜓)) ↔ (∀𝑥𝐴𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝐴𝐵 ∧ ∀𝑥𝐴 𝜓))))
38 f0 5527 . . . 4 ∅:∅⟶𝐵
39 0ex 4216 . . . . 5 ∅ ∈ V
40 ral0 3596 . . . . . . 7 𝑥 ∈ ∅ 𝜓
4140biantru 302 . . . . . 6 (𝑓:∅⟶𝐵 ↔ (𝑓:∅⟶𝐵 ∧ ∀𝑥 ∈ ∅ 𝜓))
42 feq1 5465 . . . . . 6 (𝑓 = ∅ → (𝑓:∅⟶𝐵 ↔ ∅:∅⟶𝐵))
4341, 42bitr3id 194 . . . . 5 (𝑓 = ∅ → ((𝑓:∅⟶𝐵 ∧ ∀𝑥 ∈ ∅ 𝜓) ↔ ∅:∅⟶𝐵))
4439, 43spcev 2901 . . . 4 (∅:∅⟶𝐵 → ∃𝑓(𝑓:∅⟶𝐵 ∧ ∀𝑥 ∈ ∅ 𝜓))
4538, 44mp1i 10 . . 3 (∀𝑥 ∈ ∅ ∃𝑦𝐵 𝜑 → ∃𝑓(𝑓:∅⟶𝐵 ∧ ∀𝑥 ∈ ∅ 𝜓))
46 ssun1 3370 . . . . . . 7 𝑤 ⊆ (𝑤 ∪ {𝑧})
47 ssralv 3291 . . . . . . 7 (𝑤 ⊆ (𝑤 ∪ {𝑧}) → (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∀𝑥𝑤𝑦𝐵 𝜑))
4846, 47ax-mp 5 . . . . . 6 (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∀𝑥𝑤𝑦𝐵 𝜑)
4948imim1i 60 . . . . 5 ((∀𝑥𝑤𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)))
50 ssun2 3371 . . . . . . . . 9 {𝑧} ⊆ (𝑤 ∪ {𝑧})
51 ssralv 3291 . . . . . . . . 9 ({𝑧} ⊆ (𝑤 ∪ {𝑧}) → (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∀𝑥 ∈ {𝑧}∃𝑦𝐵 𝜑))
5250, 51ax-mp 5 . . . . . . . 8 (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∀𝑥 ∈ {𝑧}∃𝑦𝐵 𝜑)
53 vex 2805 . . . . . . . . . 10 𝑧 ∈ V
54 ralsnsg 3706 . . . . . . . . . 10 (𝑧 ∈ V → (∀𝑥 ∈ {𝑧}∃𝑦𝐵 𝜑[𝑧 / 𝑥]𝑦𝐵 𝜑))
5553, 54ax-mp 5 . . . . . . . . 9 (∀𝑥 ∈ {𝑧}∃𝑦𝐵 𝜑[𝑧 / 𝑥]𝑦𝐵 𝜑)
56 sbcrex 3111 . . . . . . . . 9 ([𝑧 / 𝑥]𝑦𝐵 𝜑 ↔ ∃𝑦𝐵 [𝑧 / 𝑥]𝜑)
5755, 56bitri 184 . . . . . . . 8 (∀𝑥 ∈ {𝑧}∃𝑦𝐵 𝜑 ↔ ∃𝑦𝐵 [𝑧 / 𝑥]𝜑)
5852, 57sylib 122 . . . . . . 7 (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∃𝑦𝐵 [𝑧 / 𝑥]𝜑)
59 nfv 1576 . . . . . . . 8 𝑦 ¬ 𝑧𝑤
60 nfv 1576 . . . . . . . . 9 𝑦𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)
61 nfv 1576 . . . . . . . . . . 11 𝑦 𝑔:(𝑤 ∪ {𝑧})⟶𝐵
62 nfcv 2374 . . . . . . . . . . . 12 𝑦(𝑤 ∪ {𝑧})
63 nfsbc1v 3050 . . . . . . . . . . . 12 𝑦[(𝑔𝑥) / 𝑦]𝜑
6462, 63nfralxy 2570 . . . . . . . . . . 11 𝑦𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑
6561, 64nfan 1613 . . . . . . . . . 10 𝑦(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑)
6665nfex 1685 . . . . . . . . 9 𝑦𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑)
6760, 66nfim 1620 . . . . . . . 8 𝑦(∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))
68 simprl 531 . . . . . . . . . . . . 13 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → 𝑓:𝑤𝐵)
69 vex 2805 . . . . . . . . . . . . . . . 16 𝑦 ∈ V
7053, 69f1osn 5625 . . . . . . . . . . . . . . 15 {⟨𝑧, 𝑦⟩}:{𝑧}–1-1-onto→{𝑦}
71 f1of 5583 . . . . . . . . . . . . . . 15 ({⟨𝑧, 𝑦⟩}:{𝑧}–1-1-onto→{𝑦} → {⟨𝑧, 𝑦⟩}:{𝑧}⟶{𝑦})
7270, 71mp1i 10 . . . . . . . . . . . . . 14 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → {⟨𝑧, 𝑦⟩}:{𝑧}⟶{𝑦})
73 simpl2 1027 . . . . . . . . . . . . . . 15 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → 𝑦𝐵)
7473snssd 3818 . . . . . . . . . . . . . 14 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → {𝑦} ⊆ 𝐵)
7572, 74fssd 5495 . . . . . . . . . . . . 13 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → {⟨𝑧, 𝑦⟩}:{𝑧}⟶𝐵)
76 simpl1 1026 . . . . . . . . . . . . . 14 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ¬ 𝑧𝑤)
77 disjsn 3731 . . . . . . . . . . . . . 14 ((𝑤 ∩ {𝑧}) = ∅ ↔ ¬ 𝑧𝑤)
7876, 77sylibr 134 . . . . . . . . . . . . 13 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → (𝑤 ∩ {𝑧}) = ∅)
79 fun2 5509 . . . . . . . . . . . . 13 (((𝑓:𝑤𝐵 ∧ {⟨𝑧, 𝑦⟩}:{𝑧}⟶𝐵) ∧ (𝑤 ∩ {𝑧}) = ∅) → (𝑓 ∪ {⟨𝑧, 𝑦⟩}):(𝑤 ∪ {𝑧})⟶𝐵)
8068, 75, 78, 79syl21anc 1272 . . . . . . . . . . . 12 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → (𝑓 ∪ {⟨𝑧, 𝑦⟩}):(𝑤 ∪ {𝑧})⟶𝐵)
81 simprr 533 . . . . . . . . . . . . . 14 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ∀𝑥𝑤 𝜓)
82 eleq1a 2303 . . . . . . . . . . . . . . . . . . 19 (𝑥𝑤 → (𝑧 = 𝑥𝑧𝑤))
8382necon3bd 2445 . . . . . . . . . . . . . . . . . 18 (𝑥𝑤 → (¬ 𝑧𝑤𝑧𝑥))
8483impcom 125 . . . . . . . . . . . . . . . . 17 ((¬ 𝑧𝑤𝑥𝑤) → 𝑧𝑥)
85 fvunsng 5847 . . . . . . . . . . . . . . . . . 18 ((𝑥 ∈ V ∧ 𝑧𝑥) → ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) = (𝑓𝑥))
8620, 85mpan 424 . . . . . . . . . . . . . . . . 17 (𝑧𝑥 → ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) = (𝑓𝑥))
87 dfsbcq 3033 . . . . . . . . . . . . . . . . . 18 (((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) = (𝑓𝑥) → ([((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑[(𝑓𝑥) / 𝑦]𝜑))
8887, 23bitr2di 197 . . . . . . . . . . . . . . . . 17 (((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) = (𝑓𝑥) → (𝜓[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
8984, 86, 883syl 17 . . . . . . . . . . . . . . . 16 ((¬ 𝑧𝑤𝑥𝑤) → (𝜓[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
9089ralbidva 2528 . . . . . . . . . . . . . . 15 𝑧𝑤 → (∀𝑥𝑤 𝜓 ↔ ∀𝑥𝑤 [((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
9176, 90syl 14 . . . . . . . . . . . . . 14 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → (∀𝑥𝑤 𝜓 ↔ ∀𝑥𝑤 [((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
9281, 91mpbid 147 . . . . . . . . . . . . 13 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ∀𝑥𝑤 [((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑)
93 simpl3 1028 . . . . . . . . . . . . . 14 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → [𝑧 / 𝑥]𝜑)
94 ffun 5485 . . . . . . . . . . . . . . . . 17 ((𝑓 ∪ {⟨𝑧, 𝑦⟩}):(𝑤 ∪ {𝑧})⟶𝐵 → Fun (𝑓 ∪ {⟨𝑧, 𝑦⟩}))
95 ssun2 3371 . . . . . . . . . . . . . . . . . 18 {⟨𝑧, 𝑦⟩} ⊆ (𝑓 ∪ {⟨𝑧, 𝑦⟩})
96 vsnid 3701 . . . . . . . . . . . . . . . . . . 19 𝑧 ∈ {𝑧}
9769dmsnop 5210 . . . . . . . . . . . . . . . . . . 19 dom {⟨𝑧, 𝑦⟩} = {𝑧}
9896, 97eleqtrri 2307 . . . . . . . . . . . . . . . . . 18 𝑧 ∈ dom {⟨𝑧, 𝑦⟩}
99 funssfv 5665 . . . . . . . . . . . . . . . . . 18 ((Fun (𝑓 ∪ {⟨𝑧, 𝑦⟩}) ∧ {⟨𝑧, 𝑦⟩} ⊆ (𝑓 ∪ {⟨𝑧, 𝑦⟩}) ∧ 𝑧 ∈ dom {⟨𝑧, 𝑦⟩}) → ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧) = ({⟨𝑧, 𝑦⟩}‘𝑧))
10095, 98, 99mp3an23 1365 . . . . . . . . . . . . . . . . 17 (Fun (𝑓 ∪ {⟨𝑧, 𝑦⟩}) → ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧) = ({⟨𝑧, 𝑦⟩}‘𝑧))
10180, 94, 1003syl 17 . . . . . . . . . . . . . . . 16 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧) = ({⟨𝑧, 𝑦⟩}‘𝑧))
10253, 69fvsn 5848 . . . . . . . . . . . . . . . 16 ({⟨𝑧, 𝑦⟩}‘𝑧) = 𝑦
103101, 102eqtr2di 2281 . . . . . . . . . . . . . . 15 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → 𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧))
104 ralsnsg 3706 . . . . . . . . . . . . . . . . 17 (𝑧 ∈ V → (∀𝑥 ∈ {𝑧}𝜑[𝑧 / 𝑥]𝜑))
10553, 104ax-mp 5 . . . . . . . . . . . . . . . 16 (∀𝑥 ∈ {𝑧}𝜑[𝑧 / 𝑥]𝜑)
106 elsni 3687 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ {𝑧} → 𝑥 = 𝑧)
107106fveq2d 5643 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ {𝑧} → ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧))
108107eqeq2d 2243 . . . . . . . . . . . . . . . . . . 19 (𝑥 ∈ {𝑧} → (𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) ↔ 𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧)))
109108biimparc 299 . . . . . . . . . . . . . . . . . 18 ((𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧) ∧ 𝑥 ∈ {𝑧}) → 𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥))
110 sbceq1a 3041 . . . . . . . . . . . . . . . . . 18 (𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) → (𝜑[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
111109, 110syl 14 . . . . . . . . . . . . . . . . 17 ((𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧) ∧ 𝑥 ∈ {𝑧}) → (𝜑[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
112111ralbidva 2528 . . . . . . . . . . . . . . . 16 (𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧) → (∀𝑥 ∈ {𝑧}𝜑 ↔ ∀𝑥 ∈ {𝑧}[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
113105, 112bitr3id 194 . . . . . . . . . . . . . . 15 (𝑦 = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑧) → ([𝑧 / 𝑥]𝜑 ↔ ∀𝑥 ∈ {𝑧}[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
114103, 113syl 14 . . . . . . . . . . . . . 14 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ([𝑧 / 𝑥]𝜑 ↔ ∀𝑥 ∈ {𝑧}[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
11593, 114mpbid 147 . . . . . . . . . . . . 13 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ∀𝑥 ∈ {𝑧}[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑)
116 ralun 3389 . . . . . . . . . . . . 13 ((∀𝑥𝑤 [((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑 ∧ ∀𝑥 ∈ {𝑧}[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑) → ∀𝑥 ∈ (𝑤 ∪ {𝑧})[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑)
11792, 115, 116syl2anc 411 . . . . . . . . . . . 12 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ∀𝑥 ∈ (𝑤 ∪ {𝑧})[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑)
11853, 69opex 4321 . . . . . . . . . . . . . . 15 𝑧, 𝑦⟩ ∈ V
119118snex 4275 . . . . . . . . . . . . . 14 {⟨𝑧, 𝑦⟩} ∈ V
12019, 119unex 4538 . . . . . . . . . . . . 13 (𝑓 ∪ {⟨𝑧, 𝑦⟩}) ∈ V
121 feq1 5465 . . . . . . . . . . . . . 14 (𝑔 = (𝑓 ∪ {⟨𝑧, 𝑦⟩}) → (𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ↔ (𝑓 ∪ {⟨𝑧, 𝑦⟩}):(𝑤 ∪ {𝑧})⟶𝐵))
122 fveq1 5638 . . . . . . . . . . . . . . . 16 (𝑔 = (𝑓 ∪ {⟨𝑧, 𝑦⟩}) → (𝑔𝑥) = ((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥))
123122sbceq1d 3036 . . . . . . . . . . . . . . 15 (𝑔 = (𝑓 ∪ {⟨𝑧, 𝑦⟩}) → ([(𝑔𝑥) / 𝑦]𝜑[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
124123ralbidv 2532 . . . . . . . . . . . . . 14 (𝑔 = (𝑓 ∪ {⟨𝑧, 𝑦⟩}) → (∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑 ↔ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑))
125121, 124anbi12d 473 . . . . . . . . . . . . 13 (𝑔 = (𝑓 ∪ {⟨𝑧, 𝑦⟩}) → ((𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑) ↔ ((𝑓 ∪ {⟨𝑧, 𝑦⟩}):(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑)))
126120, 125spcev 2901 . . . . . . . . . . . 12 (((𝑓 ∪ {⟨𝑧, 𝑦⟩}):(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[((𝑓 ∪ {⟨𝑧, 𝑦⟩})‘𝑥) / 𝑦]𝜑) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))
12780, 117, 126syl2anc 411 . . . . . . . . . . 11 (((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) ∧ (𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))
128127ex 115 . . . . . . . . . 10 ((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) → ((𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑)))
129128exlimdv 1867 . . . . . . . . 9 ((¬ 𝑧𝑤𝑦𝐵[𝑧 / 𝑥]𝜑) → (∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑)))
1301293exp 1228 . . . . . . . 8 𝑧𝑤 → (𝑦𝐵 → ([𝑧 / 𝑥]𝜑 → (∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑)))))
13159, 67, 130rexlimd 2647 . . . . . . 7 𝑧𝑤 → (∃𝑦𝐵 [𝑧 / 𝑥]𝜑 → (∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))))
13258, 131syl5 32 . . . . . 6 𝑧𝑤 → (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → (∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓) → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))))
133132a2d 26 . . . . 5 𝑧𝑤 → ((∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))))
13449, 133syl5 32 . . . 4 𝑧𝑤 → ((∀𝑥𝑤𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))))
135134adantl 277 . . 3 ((𝑤 ∈ Fin ∧ ¬ 𝑧𝑤) → ((∀𝑥𝑤𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝑤𝐵 ∧ ∀𝑥𝑤 𝜓)) → (∀𝑥 ∈ (𝑤 ∪ {𝑧})∃𝑦𝐵 𝜑 → ∃𝑔(𝑔:(𝑤 ∪ {𝑧})⟶𝐵 ∧ ∀𝑥 ∈ (𝑤 ∪ {𝑧})[(𝑔𝑥) / 𝑦]𝜑))))
1366, 12, 31, 37, 45, 135findcard2s 7078 . 2 (𝐴 ∈ Fin → (∀𝑥𝐴𝑦𝐵 𝜑 → ∃𝑓(𝑓:𝐴𝐵 ∧ ∀𝑥𝐴 𝜓)))
137136imp 124 1 ((𝐴 ∈ Fin ∧ ∀𝑥𝐴𝑦𝐵 𝜑) → ∃𝑓(𝑓:𝐴𝐵 ∧ ∀𝑥𝐴 𝜓))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wb 105  w3a 1004   = wceq 1397  wex 1540  wcel 2202  wne 2402  wral 2510  wrex 2511  Vcvv 2802  [wsbc 3031  cun 3198  cin 3199  wss 3200  c0 3494  {csn 3669  cop 3672  dom cdm 4725  Fun wfun 5320  wf 5322  1-1-ontowf1o 5325  cfv 5326  Fincfn 6908
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 619  ax-in2 620  ax-io 716  ax-5 1495  ax-7 1496  ax-gen 1497  ax-ie1 1541  ax-ie2 1542  ax-8 1552  ax-10 1553  ax-11 1554  ax-i12 1555  ax-bndl 1557  ax-4 1558  ax-17 1574  ax-i9 1578  ax-ial 1582  ax-i5r 1583  ax-13 2204  ax-14 2205  ax-ext 2213  ax-coll 4204  ax-sep 4207  ax-nul 4215  ax-pow 4264  ax-pr 4299  ax-un 4530  ax-setind 4635  ax-iinf 4686
This theorem depends on definitions:  df-bi 117  df-dc 842  df-3or 1005  df-3an 1006  df-tru 1400  df-fal 1403  df-nf 1509  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2363  df-ne 2403  df-ral 2515  df-rex 2516  df-reu 2517  df-rab 2519  df-v 2804  df-sbc 3032  df-csb 3128  df-dif 3202  df-un 3204  df-in 3206  df-ss 3213  df-nul 3495  df-if 3606  df-pw 3654  df-sn 3675  df-pr 3676  df-op 3678  df-uni 3894  df-int 3929  df-iun 3972  df-br 4089  df-opab 4151  df-mpt 4152  df-tr 4188  df-id 4390  df-iord 4463  df-on 4465  df-suc 4468  df-iom 4689  df-xp 4731  df-rel 4732  df-cnv 4733  df-co 4734  df-dm 4735  df-rn 4736  df-res 4737  df-ima 4738  df-iota 5286  df-fun 5328  df-fn 5329  df-f 5330  df-f1 5331  df-fo 5332  df-f1o 5333  df-fv 5334  df-er 6701  df-en 6909  df-fin 6911
This theorem is referenced by:  finacn  7418
  Copyright terms: Public domain W3C validator