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

Theorem fodomr 4483
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 2722 . . . . . . . . . . . . 13 |- (A e. V -> (A \ ran g) e. V)
2 snex 2750 . . . . . . . . . . . . . 14 |- {z} e. V
3 xpexg 3259 . . . . . . . . . . . . . 14 |- (((A \ ran g) e. V /\ {z} e. V) -> ((A \ ran g) X. {z}) e. V)
42, 3mpan2 696 . . . . . . . . . . . . 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 1813 . . . . . . . . . . . . 13 |- g e. V
76cnvex 3520 . . . . . . . . . . . 12 |- `'g e. V
85, 7jctil 292 . . . . . . . . . . 11 |- (A e. V -> (`'g e. V /\ ((A \ ran g) X. {z}) e. V))
9 unexb 2873 . . . . . . . . . . 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 3668 . . . . . . . . . . 11 |- (f = (`'g u. ((A \ ran g) X. {z})) -> (f:A-onto->B <-> (`'g u. ((A \ ran g) X. {z})):A-onto->B))
1211cla4egv 1863 . . . . . . . . . 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 3195 . . . . . . . . . . . . . . . . 17 |- (g:B-1-1->A <-> (g:B-->A /\ Fun `'g))
1514pm3.27bi 326 . . . . . . . . . . . . . . . 16 |- (g:B-1-1->A -> Fun `'g)
16 visset 1813 . . . . . . . . . . . . . . . . . 18 |- z e. V
1716fconst 3658 . . . . . . . . . . . . . . . . 17 |- ((A \ ran g) X. {z}):(A \ ran g)-->{z}
18 ffun 3629 . . . . . . . . . . . . . . . . 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 3189 . . . . . . . . . . . . . . . . . . 19 |- ran g = dom `' g
2221eqcomi 1479 . . . . . . . . . . . . . . . . . 18 |- dom `' g = ran g
2316snnz 2458 . . . . . . . . . . . . . . . . . . 19 |- {z} =/= (/)
24 dmxp 3332 . . . . . . . . . . . . . . . . . . 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 2215 . . . . . . . . . . . . . . . . 17 |- (dom `' g i^i dom ((A \ ran g) X. {z})) = (ran g i^i (A \ ran g))
27 difdisj 2337 . . . . . . . . . . . . . . . . 17 |- (ran g i^i (A \ ran g)) = (/)
2826, 27eqtr 1495 . . . . . . . . . . . . . . . 16 |- (dom `' g i^i dom ((A \ ran g) X. {z})) = (/)
29 funun 3554 . . . . . . . . . . . . . . . 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 696 . . . . . . . . . . . . . . 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 3665 . . . . . . . . . . . . . . . . 17 |- (g:B-1-1->A -> g:B-->A)
34 frn 3633 . . . . . . . . . . . . . . . . 17 |- (g:B-->A -> ran g (_ A)
3533, 34syl 10 . . . . . . . . . . . . . . . 16 |- (g:B-1-1->A -> ran g (_ A)
36 undif 2343 . . . . . . . . . . . . . . . 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 3317 . . . . . . . . . . . . . . . 16 |- dom (`'g u. ((A \ ran g) X. {z})) = (dom `' g u. dom ((A \ ran g) X. {z}))
3921uneq1i 2180 . . . . . . . . . . . . . . . 16 |- (ran g u. dom ((A \ ran g) X. {z})) = (dom `' g u. dom ((A \ ran g) X. {z}))
4025uneq2i 2181 . . . . . . . . . . . . . . . 16 |- (ran g u. dom ((A \ ran g) X. {z})) = (ran g u. (A \ ran g))
4138, 39, 403eqtr2 1501 . . . . . . . . . . . . . . 15 |- dom (`'g u. ((A \ ran g) X. {z})) = (ran g u. (A \ ran g))
4237, 41syl5eq 1519 . . . . . . . . . . . . . 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 3193 . . . . . . . . . . . 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 3631 . . . . . . . . . . . . . . . 16 |- (g:B-->A -> dom g = B)
4833, 47syl 10 . . . . . . . . . . . . . . 15 |- (g:B-1-1->A -> dom g = B)
49 dfdm4 3305 . . . . . . . . . . . . . . 15 |- dom g = ran `' g
5048, 49syl5eqr 1521 . . . . . . . . . . . . . 14 |- (g:B-1-1->A -> ran `' g = B)
5150uneq1d 2183 . . . . . . . . . . . . 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 2301 . . . . . . . . . . . . . . . . 17 |- (/) (_ B
53 xpeq1 3200 . . . . . . . . . . . . . . . . . . . . 21 |- ((A \ ran g) = (/) -> ((A \ ran g) X. {z}) = ((/) X. {z}))
54 xp0r 3239 . . . . . . . . . . . . . . . . . . . . 21 |- ((/) X. {z}) = (/)
5553, 54syl6eq 1523 . . . . . . . . . . . . . . . . . . . 20 |- ((A \ ran g) = (/) -> ((A \ ran g) X. {z}) = (/))
5655rneqd 3341 . . . . . . . . . . . . . . . . . . 19 |- ((A \ ran g) = (/) -> ran ((A \ ran g) X. {z}) = ran (/))
57 rn0 3355 . . . . . . . . . . . . . . . . . . 19 |- ran (/) = (/)
5856, 57syl6eq 1523 . . . . . . . . . . . . . . . . . 18 |- ((A \ ran g) = (/) -> ran ((A \ ran g) X. {z}) = (/))
5958sseq1d 2088 . . . . . . . . . . . . . . . . 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 3472 . . . . . . . . . . . . . . . . . 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 2466 . . . . . . . . . . . . . . . . . 18 |- (z e. B -> {z} (_ B)
6564adantl 388 . . . . . . . . . . . . . . . . 17 |- (((A \ ran g) =/= (/) /\ z e. B) -> {z} (_ B)
6663, 65eqsstrd 2095 . . . . . . . . . . . . . . . 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 1634 . . . . . . . . . . . . . 14 |- (z e. B -> ran ((A \ ran g) X. {z}) (_ B)
69 ssequn2 2203 . . . . . . . . . . . . . 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 1529 . . . . . . . . . . . 12 |- ((z e. B /\ g:B-1-1->A) -> (ran `' g u. ran ((A \ ran g) X. {z})) = B)
72 rnun 3457 . . . . . . . . . . . 12 |- ran (`'g u. ((A \ ran g) X. {z})) = (ran `' g u. ran ((A \ ran g) X. {z})