Step | Hyp | Ref
| Expression |
1 | | reldom 8739 |
. . . 4
⊢ Rel
≼ |
2 | 1 | brrelex2i 5644 |
. . 3
⊢ (𝐵 ≼ 𝐴 → 𝐴 ∈ V) |
3 | 2 | adantl 482 |
. 2
⊢ ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → 𝐴 ∈ V) |
4 | 1 | brrelex1i 5643 |
. . . 4
⊢ (𝐵 ≼ 𝐴 → 𝐵 ∈ V) |
5 | | 0sdomg 8891 |
. . . . 5
⊢ (𝐵 ∈ V → (∅
≺ 𝐵 ↔ 𝐵 ≠ ∅)) |
6 | | n0 4280 |
. . . . 5
⊢ (𝐵 ≠ ∅ ↔
∃𝑧 𝑧 ∈ 𝐵) |
7 | 5, 6 | bitrdi 287 |
. . . 4
⊢ (𝐵 ∈ V → (∅
≺ 𝐵 ↔
∃𝑧 𝑧 ∈ 𝐵)) |
8 | 4, 7 | syl 17 |
. . 3
⊢ (𝐵 ≼ 𝐴 → (∅ ≺ 𝐵 ↔ ∃𝑧 𝑧 ∈ 𝐵)) |
9 | 8 | biimpac 479 |
. 2
⊢ ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑧 𝑧 ∈ 𝐵) |
10 | | brdomi 8748 |
. . 3
⊢ (𝐵 ≼ 𝐴 → ∃𝑔 𝑔:𝐵–1-1→𝐴) |
11 | 10 | adantl 482 |
. 2
⊢ ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑔 𝑔:𝐵–1-1→𝐴) |
12 | | difexg 5251 |
. . . . . . . . . 10
⊢ (𝐴 ∈ V → (𝐴 ∖ ran 𝑔) ∈ V) |
13 | | snex 5354 |
. . . . . . . . . 10
⊢ {𝑧} ∈ V |
14 | | xpexg 7600 |
. . . . . . . . . 10
⊢ (((𝐴 ∖ ran 𝑔) ∈ V ∧ {𝑧} ∈ V) → ((𝐴 ∖ ran 𝑔) × {𝑧}) ∈ V) |
15 | 12, 13, 14 | sylancl 586 |
. . . . . . . . 9
⊢ (𝐴 ∈ V → ((𝐴 ∖ ran 𝑔) × {𝑧}) ∈ V) |
16 | | vex 3436 |
. . . . . . . . . 10
⊢ 𝑔 ∈ V |
17 | 16 | cnvex 7772 |
. . . . . . . . 9
⊢ ◡𝑔 ∈ V |
18 | 15, 17 | jctil 520 |
. . . . . . . 8
⊢ (𝐴 ∈ V → (◡𝑔 ∈ V ∧ ((𝐴 ∖ ran 𝑔) × {𝑧}) ∈ V)) |
19 | | unexb 7598 |
. . . . . . . 8
⊢ ((◡𝑔 ∈ V ∧ ((𝐴 ∖ ran 𝑔) × {𝑧}) ∈ V) ↔ (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∈ V) |
20 | 18, 19 | sylib 217 |
. . . . . . 7
⊢ (𝐴 ∈ V → (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∈ V) |
21 | | df-f1 6438 |
. . . . . . . . . . . . 13
⊢ (𝑔:𝐵–1-1→𝐴 ↔ (𝑔:𝐵⟶𝐴 ∧ Fun ◡𝑔)) |
22 | 21 | simprbi 497 |
. . . . . . . . . . . 12
⊢ (𝑔:𝐵–1-1→𝐴 → Fun ◡𝑔) |
23 | | vex 3436 |
. . . . . . . . . . . . . 14
⊢ 𝑧 ∈ V |
24 | 23 | fconst 6660 |
. . . . . . . . . . . . 13
⊢ ((𝐴 ∖ ran 𝑔) × {𝑧}):(𝐴 ∖ ran 𝑔)⟶{𝑧} |
25 | | ffun 6603 |
. . . . . . . . . . . . 13
⊢ (((𝐴 ∖ ran 𝑔) × {𝑧}):(𝐴 ∖ ran 𝑔)⟶{𝑧} → Fun ((𝐴 ∖ ran 𝑔) × {𝑧})) |
26 | 24, 25 | ax-mp 5 |
. . . . . . . . . . . 12
⊢ Fun
((𝐴 ∖ ran 𝑔) × {𝑧}) |
27 | 22, 26 | jctir 521 |
. . . . . . . . . . 11
⊢ (𝑔:𝐵–1-1→𝐴 → (Fun ◡𝑔 ∧ Fun ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
28 | | df-rn 5600 |
. . . . . . . . . . . . . 14
⊢ ran 𝑔 = dom ◡𝑔 |
29 | 28 | eqcomi 2747 |
. . . . . . . . . . . . 13
⊢ dom ◡𝑔 = ran 𝑔 |
30 | 23 | snnz 4712 |
. . . . . . . . . . . . . 14
⊢ {𝑧} ≠ ∅ |
31 | | dmxp 5838 |
. . . . . . . . . . . . . 14
⊢ ({𝑧} ≠ ∅ → dom
((𝐴 ∖ ran 𝑔) × {𝑧}) = (𝐴 ∖ ran 𝑔)) |
32 | 30, 31 | ax-mp 5 |
. . . . . . . . . . . . 13
⊢ dom
((𝐴 ∖ ran 𝑔) × {𝑧}) = (𝐴 ∖ ran 𝑔) |
33 | 29, 32 | ineq12i 4144 |
. . . . . . . . . . . 12
⊢ (dom
◡𝑔 ∩ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∩ (𝐴 ∖ ran 𝑔)) |
34 | | disjdif 4405 |
. . . . . . . . . . . 12
⊢ (ran
𝑔 ∩ (𝐴 ∖ ran 𝑔)) = ∅ |
35 | 33, 34 | eqtri 2766 |
. . . . . . . . . . 11
⊢ (dom
◡𝑔 ∩ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = ∅ |
36 | | funun 6480 |
. . . . . . . . . . 11
⊢ (((Fun
◡𝑔 ∧ Fun ((𝐴 ∖ ran 𝑔) × {𝑧})) ∧ (dom ◡𝑔 ∩ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = ∅) → Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
37 | 27, 35, 36 | sylancl 586 |
. . . . . . . . . 10
⊢ (𝑔:𝐵–1-1→𝐴 → Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
38 | 37 | adantl 482 |
. . . . . . . . 9
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
39 | | dmun 5819 |
. . . . . . . . . . . 12
⊢ dom
(◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = (dom ◡𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) |
40 | 28 | uneq1i 4093 |
. . . . . . . . . . . 12
⊢ (ran
𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = (dom ◡𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) |
41 | 32 | uneq2i 4094 |
. . . . . . . . . . . 12
⊢ (ran
𝑔 ∪ dom ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) |
42 | 39, 40, 41 | 3eqtr2i 2772 |
. . . . . . . . . . 11
⊢ dom
(◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) |
43 | | f1f 6670 |
. . . . . . . . . . . . 13
⊢ (𝑔:𝐵–1-1→𝐴 → 𝑔:𝐵⟶𝐴) |
44 | 43 | frnd 6608 |
. . . . . . . . . . . 12
⊢ (𝑔:𝐵–1-1→𝐴 → ran 𝑔 ⊆ 𝐴) |
45 | | undif 4415 |
. . . . . . . . . . . 12
⊢ (ran
𝑔 ⊆ 𝐴 ↔ (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) = 𝐴) |
46 | 44, 45 | sylib 217 |
. . . . . . . . . . 11
⊢ (𝑔:𝐵–1-1→𝐴 → (ran 𝑔 ∪ (𝐴 ∖ ran 𝑔)) = 𝐴) |
47 | 42, 46 | eqtrid 2790 |
. . . . . . . . . 10
⊢ (𝑔:𝐵–1-1→𝐴 → dom (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐴) |
48 | 47 | adantl 482 |
. . . . . . . . 9
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → dom (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐴) |
49 | | df-fn 6436 |
. . . . . . . . 9
⊢ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) Fn 𝐴 ↔ (Fun (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∧ dom (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐴)) |
50 | 38, 48, 49 | sylanbrc 583 |
. . . . . . . 8
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) Fn 𝐴) |
51 | | rnun 6049 |
. . . . . . . . 9
⊢ ran
(◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = (ran ◡𝑔 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) |
52 | | dfdm4 5804 |
. . . . . . . . . . . 12
⊢ dom 𝑔 = ran ◡𝑔 |
53 | | f1dm 6674 |
. . . . . . . . . . . 12
⊢ (𝑔:𝐵–1-1→𝐴 → dom 𝑔 = 𝐵) |
54 | 52, 53 | eqtr3id 2792 |
. . . . . . . . . . 11
⊢ (𝑔:𝐵–1-1→𝐴 → ran ◡𝑔 = 𝐵) |
55 | 54 | uneq1d 4096 |
. . . . . . . . . 10
⊢ (𝑔:𝐵–1-1→𝐴 → (ran ◡𝑔 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = (𝐵 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧}))) |
56 | | xpeq1 5603 |
. . . . . . . . . . . . . . . . 17
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ((𝐴 ∖ ran 𝑔) × {𝑧}) = (∅ × {𝑧})) |
57 | | 0xp 5685 |
. . . . . . . . . . . . . . . . 17
⊢ (∅
× {𝑧}) =
∅ |
58 | 56, 57 | eqtrdi 2794 |
. . . . . . . . . . . . . . . 16
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ((𝐴 ∖ ran 𝑔) × {𝑧}) = ∅) |
59 | 58 | rneqd 5847 |
. . . . . . . . . . . . . . 15
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = ran ∅) |
60 | | rn0 5835 |
. . . . . . . . . . . . . . 15
⊢ ran
∅ = ∅ |
61 | 59, 60 | eqtrdi 2794 |
. . . . . . . . . . . . . 14
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = ∅) |
62 | | 0ss 4330 |
. . . . . . . . . . . . . 14
⊢ ∅
⊆ 𝐵 |
63 | 61, 62 | eqsstrdi 3975 |
. . . . . . . . . . . . 13
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵) |
64 | 63 | a1d 25 |
. . . . . . . . . . . 12
⊢ ((𝐴 ∖ ran 𝑔) = ∅ → (𝑧 ∈ 𝐵 → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵)) |
65 | | rnxp 6073 |
. . . . . . . . . . . . . . 15
⊢ ((𝐴 ∖ ran 𝑔) ≠ ∅ → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = {𝑧}) |
66 | 65 | adantr 481 |
. . . . . . . . . . . . . 14
⊢ (((𝐴 ∖ ran 𝑔) ≠ ∅ ∧ 𝑧 ∈ 𝐵) → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) = {𝑧}) |
67 | | snssi 4741 |
. . . . . . . . . . . . . . 15
⊢ (𝑧 ∈ 𝐵 → {𝑧} ⊆ 𝐵) |
68 | 67 | adantl 482 |
. . . . . . . . . . . . . 14
⊢ (((𝐴 ∖ ran 𝑔) ≠ ∅ ∧ 𝑧 ∈ 𝐵) → {𝑧} ⊆ 𝐵) |
69 | 66, 68 | eqsstrd 3959 |
. . . . . . . . . . . . 13
⊢ (((𝐴 ∖ ran 𝑔) ≠ ∅ ∧ 𝑧 ∈ 𝐵) → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵) |
70 | 69 | ex 413 |
. . . . . . . . . . . 12
⊢ ((𝐴 ∖ ran 𝑔) ≠ ∅ → (𝑧 ∈ 𝐵 → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵)) |
71 | 64, 70 | pm2.61ine 3028 |
. . . . . . . . . . 11
⊢ (𝑧 ∈ 𝐵 → ran ((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵) |
72 | | ssequn2 4117 |
. . . . . . . . . . 11
⊢ (ran
((𝐴 ∖ ran 𝑔) × {𝑧}) ⊆ 𝐵 ↔ (𝐵 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
73 | 71, 72 | sylib 217 |
. . . . . . . . . 10
⊢ (𝑧 ∈ 𝐵 → (𝐵 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
74 | 55, 73 | sylan9eqr 2800 |
. . . . . . . . 9
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → (ran ◡𝑔 ∪ ran ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
75 | 51, 74 | eqtrid 2790 |
. . . . . . . 8
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → ran (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵) |
76 | | df-fo 6439 |
. . . . . . . 8
⊢ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵 ↔ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) Fn 𝐴 ∧ ran (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) = 𝐵)) |
77 | 50, 75, 76 | sylanbrc 583 |
. . . . . . 7
⊢ ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵) |
78 | | foeq1 6684 |
. . . . . . . 8
⊢ (𝑓 = (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) → (𝑓:𝐴–onto→𝐵 ↔ (◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵)) |
79 | 78 | spcegv 3536 |
. . . . . . 7
⊢ ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})) ∈ V → ((◡𝑔 ∪ ((𝐴 ∖ ran 𝑔) × {𝑧})):𝐴–onto→𝐵 → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
80 | 20, 77, 79 | syl2im 40 |
. . . . . 6
⊢ (𝐴 ∈ V → ((𝑧 ∈ 𝐵 ∧ 𝑔:𝐵–1-1→𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
81 | 80 | expdimp 453 |
. . . . 5
⊢ ((𝐴 ∈ V ∧ 𝑧 ∈ 𝐵) → (𝑔:𝐵–1-1→𝐴 → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
82 | 81 | exlimdv 1936 |
. . . 4
⊢ ((𝐴 ∈ V ∧ 𝑧 ∈ 𝐵) → (∃𝑔 𝑔:𝐵–1-1→𝐴 → ∃𝑓 𝑓:𝐴–onto→𝐵)) |
83 | 82 | ex 413 |
. . 3
⊢ (𝐴 ∈ V → (𝑧 ∈ 𝐵 → (∃𝑔 𝑔:𝐵–1-1→𝐴 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
84 | 83 | exlimdv 1936 |
. 2
⊢ (𝐴 ∈ V → (∃𝑧 𝑧 ∈ 𝐵 → (∃𝑔 𝑔:𝐵–1-1→𝐴 → ∃𝑓 𝑓:𝐴–onto→𝐵))) |
85 | 3, 9, 11, 84 | syl3c 66 |
1
⊢ ((∅
≺ 𝐵 ∧ 𝐵 ≼ 𝐴) → ∃𝑓 𝑓:𝐴–onto→𝐵) |