Step | Hyp | Ref
| Expression |
1 | | relsdom 8973 |
. . . . . . 7
⊢ Rel
≺ |
2 | 1 | brrelex2i 5731 |
. . . . . 6
⊢ (∅
≺ 𝐵 → 𝐵 ∈ V) |
3 | | 0sdomg 9134 |
. . . . . . 7
⊢ (𝐵 ∈ V → (∅
≺ 𝐵 ↔ 𝐵 ≠ ∅)) |
4 | | n0 4346 |
. . . . . . 7
⊢ (𝐵 ≠ ∅ ↔
∃𝑧 𝑧 ∈ 𝐵) |
5 | 3, 4 | bitrdi 286 |
. . . . . 6
⊢ (𝐵 ∈ V → (∅
≺ 𝐵 ↔
∃𝑧 𝑧 ∈ 𝐵)) |
6 | 2, 5 | syl 17 |
. . . . 5
⊢ (∅
≺ 𝐵 → (∅
≺ 𝐵 ↔
∃𝑧 𝑧 ∈ 𝐵)) |
7 | 6 | ibi 266 |
. . . 4
⊢ (∅
≺ 𝐵 →
∃𝑧 𝑧 ∈ 𝐵) |
8 | | domfi 9219 |
. . . . . 6
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ≼ 𝐴) → 𝐵 ∈ Fin) |
9 | | simpl 481 |
. . . . . 6
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ≼ 𝐴) → 𝐴 ∈ Fin) |
10 | | brdomi 8981 |
. . . . . . . 8
⊢ (𝐵 ≼ 𝐴 → ∃𝑔 𝑔:𝐵–1-1→𝐴) |
11 | | f1fn 6791 |
. . . . . . . . . . . 12
⊢ (𝑔:𝐵–1-1→𝐴 → 𝑔 Fn 𝐵) |
12 | | fnfi 9208 |
. . . . . . . . . . . 12
⊢ ((𝑔 Fn 𝐵 ∧ 𝐵 ∈ Fin) → 𝑔 ∈ Fin) |
13 | 11, 12 | sylan 578 |
. . . . . . . . . . 11
⊢ ((𝑔:𝐵–1-1→𝐴 ∧ 𝐵 ∈ Fin) → 𝑔 ∈ Fin) |
14 | 13 | ex 411 |
. . . . . . . . . 10
⊢ (𝑔:𝐵–1-1→𝐴 → (𝐵 ∈ Fin → 𝑔 ∈ Fin)) |
15 | | cnvfi 9207 |
. . . . . . . . . . . . . 14
⊢ (𝑔 ∈ Fin → ◡𝑔 ∈ Fin) |
16 | | diffi 9206 |
. . . . . . . . . . . . . . 15
⊢ (𝐴 ∈ Fin → (𝐴 ∖ ran 𝑔) ∈ Fin) |
17 | | snfi 9073 |
. . . . . . . . . . . . . . 15
⊢ {𝑧} ∈ Fin |
18 | | xpfi 9353 |
. . . . . . . . . . . . . . 15
⊢ (((𝐴 ∖ ran 𝑔) ∈ Fin ∧ {𝑧} ∈ Fin) → ((𝐴 ∖ ran 𝑔) × {𝑧}) ∈ Fin) |
19 | 16, 17, 18 | sylancl 584 |
. . . . . . . . . . . . . 14
⊢ (𝐴 ∈ Fin → ((𝐴 ∖ ran 𝑔) × {𝑧}) ∈ Fin) |
20 | | unfi 9202 |
. . . . . . . . . . . . . 14
⊢ ((◡𝑔 ∈ Fin ∧ ((𝐴 ∖ ran 𝑔) × {𝑧}) ∈ Fin) → (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∈ Fin) |
21 | 15, 19, 20 | syl2an 594 |
. . . . . . . . . . . . 13
⊢ ((𝑔 ∈ Fin ∧ 𝐴 ∈ Fin) → (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∈ Fin) |
22 | | df-f1 6551 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝑔:𝐵–1-1→𝐴 ↔ (𝑔:𝐵⟶𝐴 ∧ Fun ◡𝑔)) |
23 | 22 | simprbi 495 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑔:𝐵–1-1→𝐴 → Fun ◡𝑔) |
24 | | vex 3466 |
. . . . . . . . . . . . . . . . . . . 20
⊢ 𝑧 ∈ V |
25 | 24 | fconst 6780 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝐴 ∖ ran 𝑔) × {𝑧}):(𝐴 ∖ ran 𝑔)⟶{𝑧} |
26 | | ffun 6723 |
. . . . . . . . . . . . . . . . . . 19
⊢ (((𝐴 ∖ ran 𝑔) × {𝑧}):(𝐴 ∖ ran 𝑔)⟶{𝑧} → Fun ((𝐴 ∖ ran 𝑔) × {𝑧})) |
27 | 25, 26 | ax-mp 5 |
. . . . . . . . . . . . . . . . . 18
⊢ Fun
((𝐴 ∖ ran 𝑔) × {𝑧}) |
28 | 23, 27 | jctir 519 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑔:𝐵–1-1→𝐴 → (Fun ◡𝑔 ∧ Fun ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
29 | | df-rn 5685 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ran 𝑔 = dom ◡𝑔 |
30 | 29 | eqcomi 2735 |
. . . . . . . . . . . . . . . . . . 19
⊢ dom ◡𝑔 = ran 𝑔 |
31 | 24 | snnz 4775 |
. . . . . . . . . . . . . . . . . . . 20
⊢ {𝑧} ≠ ∅ |
32 | | dmxp 5927 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ({𝑧} ≠ ∅ → dom
((𝐴 ∖ ran 𝑔) × {𝑧}) = (𝐴 ∖ ran 𝑔)) |
33 | 31, 32 | ax-mp 5 |
. . . . . . . . . . . . . . . . . . 19
⊢ dom
((𝐴 ∖ ran 𝑔) × {𝑧}) = (𝐴 ∖ ran 𝑔) |
34 | 30, 33 | ineq12i 4208 |
. . . . . . . . . . . . . . . . . 18
⊢ (dom
◡𝑔 ∩ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∩ (𝐴 ∖ ran 𝑔)) |
35 | | disjdif 4466 |
. . . . . . . . . . . . . . . . . 18
⊢ (ran
𝑔 ∩ (𝐴 ∖ ran 𝑔)) = ∅ |
36 | 34, 35 | eqtri 2754 |
. . . . . . . . . . . . . . . . 17
⊢ (dom
◡𝑔 ∩ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = ∅ |
37 | | funun 6597 |
. . . . . . . . . . . . . . . . 17
⊢ (((Fun
◡𝑔 ∧ Fun ((𝐴 ∖ ran 𝑔) × {𝑧})) ∧ (dom ◡𝑔 ∩ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = ∅) → Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
38 | 28, 36, 37 | sylancl 584 |
. . . . . . . . . . . . . . . 16
⊢ (𝑔:𝐵–1-1→𝐴 → Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
39 | 38 | adantl 480 |
. . . . . . . . . . . . . . 15
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
40 | | dmun 5909 |
. . . . . . . . . . . . . . . . . 18
⊢ dom
(◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = (dom ◡𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) |
41 | 29 | uneq1i 4156 |
. . . . . . . . . . . . . . . . . 18
⊢ (ran
𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = (dom ◡𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) |
42 | 33 | uneq2i 4157 |
. . . . . . . . . . . . . . . . . 18
⊢ (ran
𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) |
43 | 40, 41, 42 | 3eqtr2i 2760 |
. . . . . . . . . . . . . . . . 17
⊢ dom
(◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) |
44 | | f1f 6790 |
. . . . . . . . . . . . . . . . . . 19
⊢ (𝑔:𝐵–1-1→𝐴 → 𝑔:𝐵⟶𝐴) |
45 | 44 | frnd 6728 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑔:𝐵–1-1→𝐴 → ran 𝑔 ⊆ 𝐴) |
46 | | undif 4476 |
. . . . . . . . . . . . . . . . . 18
⊢ (ran
𝑔 ⊆ 𝐴 ↔ (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) = 𝐴) |
47 | 45, 46 | sylib 217 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑔:𝐵–1-1→𝐴 → (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) = 𝐴) |
48 | 43, 47 | eqtrid 2778 |
. . . . . . . . . . . . . . . 16
⊢ (𝑔:𝐵–1-1→𝐴 → dom (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐴) |
49 | 48 | adantl 480 |
. . . . . . . . . . . . . . 15
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → dom (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐴) |
50 | | df-fn 6549 |
. . . . . . . . . . . . . . 15
⊢ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) Fn 𝐴 ↔ (Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∧ dom (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐴)) |
51 | 39, 49, 50 | sylanbrc 581 |
. . . . . . . . . . . . . 14
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) Fn 𝐴) |
52 | | rnun 6149 |
. . . . . . . . . . . . . . 15
⊢ ran
(◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran ◡𝑔 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) |
53 | | dfdm4 5894 |
. . . . . . . . . . . . . . . . . 18
⊢ dom 𝑔 = ran ◡𝑔 |
54 | | f1dm 6794 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝑔:𝐵–1-1→𝐴 → dom 𝑔 = 𝐵) |
55 | 53, 54 | eqtr3id 2780 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑔:𝐵–1-1→𝐴 → ran ◡𝑔 = 𝐵) |
56 | 55 | uneq1d 4159 |
. . . . . . . . . . . . . . . 16
⊢ (𝑔:𝐵–1-1→𝐴 → (ran ◡𝑔 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = (𝐵 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
57 | | xpeq1 5688 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ((𝐴 ∖ ran 𝑔) × {𝑧}) = (∅ × {𝑧})) |
58 | | 0xp 5772 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ (∅
× {𝑧}) =
∅ |
59 | 57, 58 | eqtrdi 2782 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ((𝐴 ∖ ran 𝑔) × {𝑧}) = ∅) |
60 | 59 | rneqd 5936 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = ran ∅) |
61 | | rn0 5924 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ran
∅ = ∅ |
62 | 60, 61 | eqtrdi 2782 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = ∅) |
63 | | 0ss 4394 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ∅
⊆ 𝐵 |
64 | 62, 63 | eqsstrdi 4033 |
. . . . . . . . . . . . . . . . . . 19
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵) |
65 | 64 | a1d 25 |
. . . . . . . . . . . . . . . . . 18
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → (𝑧 ∈ 𝐵 → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵)) |
66 | | rnxp 6173 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ ((𝐴 ∖ ran 𝑔) ≠ ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = {𝑧}) |
67 | 66 | adantr 479 |
. . . . . . . . . . . . . . . . . . . 20
⊢ (((𝐴 ∖ ran 𝑔) ≠ ∅ ∧ 𝑧 ∈ 𝐵) → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = {𝑧}) |
68 | | snssi 4807 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ (𝑧 ∈ 𝐵 → {𝑧} ⊆ 𝐵) |
69 | 68 | adantl 480 |
. . . . . . . . . . . . . . . . . . . 20
⊢ (((𝐴 ∖ ran 𝑔) ≠ ∅ ∧ 𝑧 ∈ 𝐵) → {𝑧} ⊆ 𝐵) |
70 | 67, 69 | eqsstrd 4017 |
. . . . . . . . . . . . . . . . . . 19
⊢ (((𝐴 ∖ ran 𝑔) ≠ ∅ ∧ 𝑧 ∈ 𝐵) → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵) |
71 | 70 | ex 411 |
. . . . . . . . . . . . . . . . . 18
⊢ ((𝐴 ∖ ran 𝑔) ≠ ∅ → (𝑧 ∈ 𝐵 → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵)) |
72 | 65, 71 | pm2.61ine 3015 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑧 ∈ 𝐵 → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵) |
73 | | ssequn2 4181 |
. . . . . . . . . . . . . . . . 17
⊢ (ran
((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵 ↔ (𝐵 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
74 | 72, 73 | sylib 217 |
. . . . . . . . . . . . . . . 16
⊢ (𝑧 ∈ 𝐵 → (𝐵 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
75 | 56, 74 | sylan9eqr 2788 |
. . . . . . . . . . . . . . 15
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → (ran ◡𝑔 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
76 | 52, 75 | eqtrid 2778 |
. . . . . . . . . . . . . 14
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → ran (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
77 | | df-fo 6552 |
. . . . . . . . . . . . . 14
⊢ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵 ↔ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) Fn 𝐴 ∧ ran (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵)) |
78 | 51, 76, 77 | sylanbrc 581 |
. . . . . . . . . . . . 13
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵) |
79 | | foeq1 6803 |
. . . . . . . . . . . . . 14
⊢ (𝑓 = (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) → (𝑓:𝐴–onto→𝐵 ↔ (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵)) |
80 | 79 | spcegv 3582 |
. . . . . . . . . . . . 13
⊢ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∈ Fin → ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
81 | 21, 78, 80 | syl2im 40 |
. . . . . . . . . . . 12
⊢ ((𝑔 ∈ Fin ∧ 𝐴 ∈ Fin) → ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
82 | 81 | expcomd 415 |
. . . . . . . . . . 11
⊢ ((𝑔 ∈ Fin ∧ 𝐴 ∈ Fin) → (𝑔:𝐵–1-1→𝐴 → (𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
83 | 82 | com12 32 |
. . . . . . . . . 10
⊢ (𝑔:𝐵–1-1→𝐴 → ((𝑔 ∈ Fin ∧ 𝐴 ∈ Fin) → (𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
84 | 14, 83 | syland 601 |
. . . . . . . . 9
⊢ (𝑔:𝐵–1-1→𝐴 → ((𝐵 ∈ Fin ∧ 𝐴 ∈ Fin) → (𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
85 | 84 | exlimiv 1926 |
. . . . . . . 8
⊢
(∃𝑔 𝑔:𝐵–1-1→𝐴 → ((𝐵 ∈ Fin ∧ 𝐴 ∈ Fin) → (𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
86 | 10, 85 | syl 17 |
. . . . . . 7
⊢ (𝐵 ≼ 𝐴 → ((𝐵 ∈ Fin ∧ 𝐴 ∈ Fin) → (𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
87 | 86 | adantl 480 |
. . . . . 6
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ≼ 𝐴) → ((𝐵 ∈ Fin ∧ 𝐴 ∈ Fin) → (𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
88 | 8, 9, 87 | mp2and 697 |
. . . . 5
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ≼ 𝐴) → (𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
89 | 88 | exlimdv 1929 |
. . . 4
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ≼ 𝐴) → (∃𝑧 𝑧 ∈ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
90 | 7, 89 | syl5 34 |
. . 3
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ≼ 𝐴) → (∅ ≺ 𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
91 | 90 | 3impia 1114 |
. 2
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ≼ 𝐴 ∧ ∅ ≺ 𝐵) → ∃𝑓 𝑓:𝐴–onto→𝐵) |
92 | 91 | 3com23 1123 |
1
⊢ ((𝐴 ∈ Fin ∧ ∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵) |