HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem fodomr 4469
Description: There exists a mapping from a set onto any (non-empty) set that it dominates.
Assertion
Ref Expression
fodomr |- ((A e. C /\ (/) ~< B /\ B ~<_ A) -> E.f f:A-onto->B)
Distinct variable groups:   A,f   B,f

Proof of Theorem fodomr
StepHypRef Expression
1 difexg 2717 . . . . . . . . . . . . 13 |- (A e. V -> (A \ ran g) e. V)
2 snex 2745 . . . . . . . . . . . . . 14 |- {z} e. V
3 xpexg 3254 . . . . . . . . . . . . . 14 |- (((A \ ran g) e. V /\ {z} e. V) -> ((A \ ran g) X. {z}) e. V)
42, 3mpan2 695 . . . . . . . . . . . . 13 |- ((A \ ran g) e. V -> ((A \ ran g) X. {z}) e. V)
51, 4syl 10 . . . . . . . . . . . 12 |- (A e. V -> ((A \ ran g) X. {z}) e. V)
6 visset 1809 . . . . . . . . . . . . 13 |- g e. V
76cnvex 3512 . . . . . . . . . . . 12 |- `'g e. V
85, 7jctil 292 . . . . . . . . . . 11 |- (A e. V -> (`'g e. V /\ ((A \ ran g) X. {z}) e. V))
9 unexb 2868 . . . . . . . . . . 11 |- ((`'g e. V /\ ((A \ ran g) X. {z}) e. V) <-> (`'g u. ((A \ ran g) X. {z})) e. V)
108, 9sylib 198 . . . . . . . . . 10 |- (A e. V -> (`'g u. ((A \ ran g) X. {z})) e. V)
11 foeq1 3659 . . . . . . . . . . 11 |- (f = (`'g u. ((A \ ran g) X. {z})) -> (f:A-onto->B <-> (`'g u. ((A \ ran g) X. {z})):A-onto->B))
1211cla4egv 1859 . . . . . . . . . 10 |- ((`'g u. ((A \ ran g) X. {z})) e. V -> ((`'g u. ((A \ ran g) X. {z})):A-onto->B -> E.f f:A-onto->B))
1310, 12syl 10 . . . . . . . . 9 |- (A e. V -> ((`'g u. ((A \ ran g) X. {z})):A-onto->B -> E.f f:A-onto->B))
14 df-f1 3190 . . . . . . . . . . . . . . . . 17 |- (g:B-1-1->A <-> (g:B-->A /\ Fun `'g))
1514pm3.27bi 326 . . . . . . . . . . . . . . . 16 |- (g:B-1-1->A -> Fun `'g)
16 visset 1809 . . . . . . . . . . . . . . . . . 18 |- z e. V
1716fconst 3649 . . . . . . . . . . . . . . . . 17 |- ((A \ ran g) X. {z}):(A \ ran g)-->{z}
18 ffun 3621 . . . . . . . . . . . . . . . . 17 |- (((A \ ran g) X. {z}):(A \ ran g)-->{z} -> Fun ((A \ ran g) X. {z}))
1917, 18ax-mp 7 . . . . . . . . . . . . . . . 16 |- Fun ((A \ ran g) X. {z})
2015, 19jctir 293 . . . . . . . . . . . . . . 15 |- (g:B-1-1->A -> (Fun `'g /\ Fun ((A \ ran g) X. {z})))
21 df-rn 3184 . . . . . . . . . . . . . . . . . . 19 |- ran g = dom `' g
2221eqcomi 1476 . . . . . . . . . . . . . . . . . 18 |- dom `' g = ran g
2316snnz 2454 . . . . . . . . . . . . . . . . . . 19 |- {z} =/= (/)
24 dmxp 3327 . . . . . . . . . . . . . . . . . . 19 |- ({z} =/= (/) -> dom ((A \ ran g) X. {z}) = (A \ ran g))
2523, 24ax-mp 7 . . . . . . . . . . . . . . . . . 18 |- dom ((A \ ran g) X. {z}) = (A \ ran g)
2622, 25ineq12i 2211 . . . . . . . . . . . . . . . . 17 |- (dom `' g i^i dom ((A \ ran g) X. {z})) = (ran g i^i (A \ ran g))
27 difdisj 2333 . . . . . . . . . . . . . . . . 17 |- (ran g i^i (A \ ran g)) = (/)
2826, 27eqtr 1492 . . . . . . . . . . . . . . . 16 |- (dom `' g i^i dom ((A \ ran g) X. {z})) = (/)
29 funun 3546 . . . . . . . . . . . . . . . 16 |- (((Fun `'g /\ Fun ((A \ ran g) X. {z})) /\ (dom `' g i^i dom ((A \ ran g) X. {z})) = (/)) -> Fun (`'g u. ((A \ ran g) X. {z})))
3028, 29mpan2 695 . . . . . . . . . . . . . . 15 |- ((Fun `'g /\ Fun ((A \ ran g) X. {z})) -> Fun (`'g u. ((A \ ran g) X. {z})))
3120, 30syl 10 . . . . . . . . . . . . . 14 |- (g:B-1-1->A -> Fun (`'g u. ((A \ ran g) X. {z})))
3231adantl 388 . . . . . . . . . . . . 13 |- ((z e. B /\ g:B-1-1->A) -> Fun (`'g u. ((A \ ran g) X. {z})))
33 f1f 3656 . . . . . . . . . . . . . . . . 17 |- (g:B-1-1->A -> g:B-->A)
34 frn 3624 . . . . . . . . . . . . . . . . 17 |- (g:B-->A -> ran g (_ A)
3533, 34syl 10 . . . . . . . . . . . . . . . 16 |- (g:B-1-1->A -> ran g (_ A)
36 undif 2339 . . . . . . . . . . . . . . . 16 |- (ran g (_ A <-> (ran g u. (A \ ran g)) = A)
3735, 36sylib 198 . . . . . . . . . . . . . . 15 |- (g:B-1-1->A -> (ran g u. (A \ ran g)) = A)
38 dmun 3312 . . . . . . . . . . . . . . . 16 |- dom (`'g u. ((A \ ran g) X. {z})) = (dom `' g u. dom ((A \ ran g) X. {z}))
3921uneq1i 2176 . . . . . . . . . . . . . . . 16 |- (ran g u. dom ((A \ ran g) X. {z})) = (dom `' g u. dom ((A \ ran g) X. {z}))
4025uneq2i 2177 . . . . . . . . . . . . . . . 16 |- (ran g u. dom ((A \ ran g) X. {z})) = (ran g u. (A \ ran g))
4138, 39, 403eqtr2 1498 . . . . . . . . . . . . . . 15 |- dom (`'g u. ((A \ ran g) X. {z})) = (ran g u. (A \ ran g))
4237, 41syl5eq 1516 . . . . . . . . . . . . . 14 |- (g:B-1-1->A -> dom (`'g u. ((A \ ran g) X. {z})) = A)
4342adantl 388 . . . . . . . . . . . . 13 |- ((z e. B /\ g:B-1-1->A) -> dom (`'g u. ((A \ ran g) X. {z})) = A)
4432, 43jca 288 . . . . . . . . . . . 12 |- ((z e. B /\ g:B-1-1->A) -> (Fun (`'g u. ((A \ ran g) X. {z})) /\ dom (`'g u. ((A \ ran g) X. {z})) = A))
45 df-fn 3188 . . . . . . . . . . . 12 |- ((`'g u. ((A \ ran g) X. {z})) Fn A <-> (Fun (`'g u. ((A \ ran g) X. {z})) /\ dom (`'g u. ((A \ ran g) X. {z})) = A))
4644, 45sylibr 200 . . . . . . . . . . 11 |- ((z e. B /\ g:B-1-1->A) -> (`'g u. ((A \ ran g) X. {z})) Fn A)
47 fdm 3623 . . . . . . . . . . . . . . . 16 |- (g:B-->A -> dom g = B)
4833, 47syl 10 . . . . . . . . . . . . . . 15 |- (g:B-1-1->A -> dom g = B)
49 dfdm4 3300 . . . . . . . . . . . . . . 15 |- dom g = ran `' g
5048, 49syl5eqr 1518 . . . . . . . . . . . . . 14 |- (g:B-1-1->A -> ran `' g = B)
5150uneq1d 2179 . . . . . . . . . . . . 13 |- (g:B-1-1->A -> (ran `' g u. ran ((A \ ran g) X. {z})) = (B u. ran ((A \ ran g) X. {z})))
52 0ss 2297 . . . . . . . . . . . . . . . . 17 |- (/) (_ B
53 xpeq1 3195 . . . . . . . . . . . . . . . . . . . . 21 |- ((A \ ran g) = (/) -> ((A \ ran g) X. {z}) = ((/) X. {z}))
54 xp0r 3234 . . . . . . . . . . . . . . . . . . . . 21 |- ((/) X. {z}) = (/)
5553, 54syl6eq 1520 . . . . . . . . . . . . . . . . . . . 20 |- ((A \ ran g) = (/) -> ((A \ ran g) X. {z}) = (/))
5655rneqd 3336 . . . . . . . . . . . . . . . . . . 19 |- ((A \ ran g) = (/) -> ran ((A \ ran g) X. {z}) = ran (/))
57 rn0 3349 . . . . . . . . . . . . . . . . . . 19 |- ran (/) = (/)
5856, 57syl6eq 1520 . . . . . . . . . . . . . . . . . 18 |- ((A \ ran g) = (/) -> ran ((A \ ran g) X. {z}) = (/))
5958sseq1d 2084 . . . . . . . . . . . . . . . . 17 |- ((A \ ran g) = (/) -> (ran ((A \ ran g) X. {z}) (_ B <-> (/) (_ B))
6052, 59mpbiri 194 . . . . . . . . . . . . . . . 16 |- ((A \ ran g) = (/) -> ran ((A \ ran g) X. {z}) (_ B)
6160a1d 12 . . . . . . . . . . . . . . 15 |- ((A \ ran g) = (/) -> (z e. B -> ran ((A \ ran g) X. {z}) (_ B))
62 rnxp 3464 . . . . . . . . . . . . . . . . . 18 |- ((A \ ran g) =/= (/) -> ran ((A \ ran g) X. {z}) = {z})
6362adantr 389 . . . . . . . . . . . . . . . . 17 |- (((A \ ran g) =/= (/) /\ z e. B) -> ran ((A \ ran g) X. {z}) = {z})
64 snssi 2462 . . . . . . . . . . . . . . . . . 18 |- (z e. B -> {z} (_ B)
6564adantl 388 . . . . . . . . . . . . . . . . 17 |- (((A \ ran g) =/= (/) /\ z e. B) -> {z} (_ B)
6663, 65eqsstrd 2091 . . . . . . . . . . . . . . . 16 |- (((A \ ran g) =/= (/) /\ z e. B) -> ran ((A \ ran g) X. {z}) (_ B)
6766ex 373 . . . . . . . . . . . . . . 15 |- ((A \ ran g) =/= (/) -> (z e. B -> ran ((A \ ran g) X. {z}) (_ B))
6861, 67pm2.61ine 1631 . . . . . . . . . . . . . 14 |- (z e. B -> ran ((A \ ran g) X. {z}) (_ B)
69 ssequn2 2199 . . . . . . . . . . . . . 14 |- (ran ((A \ ran g) X. {z}) (_ B <-> (B u. ran ((A \ ran g) X. {z})) = B)
7068, 69sylib 198 . . . . . . . . . . . . 13 |- (z e. B -> (B u. ran ((A \ ran g) X. {z})) = B)
7151, 70sylan9eqr 1526 . . . . . . . . . . . 12 |- ((z e. B /\ g:B-1-1->A) -> (ran `' g u. ran ((A \ ran g) X. {z})) = B)
72 rnun 3449 . . . . . . . . . . . 12 |- ran (`'g u. ((A \ ran g) X. {z})) = (ran `' g u. ran ((A \ ran g) X. {z}))
7371, 7