MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  fodomr Structured version   Unicode version

Theorem fodomr 7287
Description: There exists a mapping from a set onto any (non-empty) set that it dominates. (Contributed by NM, 23-Mar-2006.)
Assertion
Ref Expression
fodomr  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  E. f 
f : A -onto-> B
)
Distinct variable groups:    A, f    B, f

Proof of Theorem fodomr
Dummy variables  g 
z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 reldom 7144 . . . 4  |-  Rel  ~<_
21brrelex2i 4948 . . 3  |-  ( B  ~<_  A  ->  A  e.  _V )
32adantl 454 . 2  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  A  e.  _V )
41brrelexi 4947 . . . 4  |-  ( B  ~<_  A  ->  B  e.  _V )
5 0sdomg 7265 . . . . 5  |-  ( B  e.  _V  ->  ( (/) 
~<  B  <->  B  =/=  (/) ) )
6 n0 3622 . . . . 5  |-  ( B  =/=  (/)  <->  E. z  z  e.  B )
75, 6syl6bb 254 . . . 4  |-  ( B  e.  _V  ->  ( (/) 
~<  B  <->  E. z  z  e.  B ) )
84, 7syl 16 . . 3  |-  ( B  ~<_  A  ->  ( (/)  ~<  B  <->  E. z 
z  e.  B ) )
98biimpac 474 . 2  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  E. z 
z  e.  B )
10 brdomi 7148 . . 3  |-  ( B  ~<_  A  ->  E. g 
g : B -1-1-> A
)
1110adantl 454 . 2  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  E. g 
g : B -1-1-> A
)
12 difexg 4380 . . . . . . . . . 10  |-  ( A  e.  _V  ->  ( A  \  ran  g )  e.  _V )
13 snex 4434 . . . . . . . . . 10  |-  { z }  e.  _V
14 xpexg 5018 . . . . . . . . . 10  |-  ( ( ( A  \  ran  g )  e.  _V  /\ 
{ z }  e.  _V )  ->  ( ( A  \  ran  g
)  X.  { z } )  e.  _V )
1512, 13, 14sylancl 645 . . . . . . . . 9  |-  ( A  e.  _V  ->  (
( A  \  ran  g )  X.  {
z } )  e. 
_V )
16 vex 2965 . . . . . . . . . 10  |-  g  e. 
_V
1716cnvex 5435 . . . . . . . . 9  |-  `' g  e.  _V
1815, 17jctil 525 . . . . . . . 8  |-  ( A  e.  _V  ->  ( `' g  e.  _V  /\  ( ( A  \  ran  g )  X.  {
z } )  e. 
_V ) )
19 unexb 4738 . . . . . . . 8  |-  ( ( `' g  e.  _V  /\  ( ( A  \  ran  g )  X.  {
z } )  e. 
_V )  <->  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) )  e.  _V )
2018, 19sylib 190 . . . . . . 7  |-  ( A  e.  _V  ->  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  e.  _V )
21 df-f1 5488 . . . . . . . . . . . . 13  |-  ( g : B -1-1-> A  <->  ( g : B --> A  /\  Fun  `' g ) )
2221simprbi 452 . . . . . . . . . . . 12  |-  ( g : B -1-1-> A  ->  Fun  `' g )
23 vex 2965 . . . . . . . . . . . . . 14  |-  z  e. 
_V
2423fconst 5658 . . . . . . . . . . . . 13  |-  ( ( A  \  ran  g
)  X.  { z } ) : ( A  \  ran  g
) --> { z }
25 ffun 5622 . . . . . . . . . . . . 13  |-  ( ( ( A  \  ran  g )  X.  {
z } ) : ( A  \  ran  g ) --> { z }  ->  Fun  ( ( A  \  ran  g
)  X.  { z } ) )
2624, 25ax-mp 5 . . . . . . . . . . . 12  |-  Fun  (
( A  \  ran  g )  X.  {
z } )
2722, 26jctir 526 . . . . . . . . . . 11  |-  ( g : B -1-1-> A  -> 
( Fun  `' g  /\  Fun  ( ( A 
\  ran  g )  X.  { z } ) ) )
28 df-rn 4918 . . . . . . . . . . . . . 14  |-  ran  g  =  dom  `' g
2928eqcomi 2446 . . . . . . . . . . . . 13  |-  dom  `' g  =  ran  g
3023snnz 3946 . . . . . . . . . . . . . 14  |-  { z }  =/=  (/)
31 dmxp 5117 . . . . . . . . . . . . . 14  |-  ( { z }  =/=  (/)  ->  dom  ( ( A  \  ran  g )  X.  {
z } )  =  ( A  \  ran  g ) )
3230, 31ax-mp 5 . . . . . . . . . . . . 13  |-  dom  (
( A  \  ran  g )  X.  {
z } )  =  ( A  \  ran  g )
3329, 32ineq12i 3526 . . . . . . . . . . . 12  |-  ( dom  `' g  i^i  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  g  i^i  ( A  \  ran  g ) )
34 disjdif 3724 . . . . . . . . . . . 12  |-  ( ran  g  i^i  ( A 
\  ran  g )
)  =  (/)
3533, 34eqtri 2462 . . . . . . . . . . 11  |-  ( dom  `' g  i^i  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  (/)
36 funun 5524 . . . . . . . . . . 11  |-  ( ( ( 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 } ) ) )
3727, 35, 36sylancl 645 . . . . . . . . . 10  |-  ( g : B -1-1-> A  ->  Fun  ( `' g  u.  ( ( A  \  ran  g )  X.  {
z } ) ) )
3837adantl 454 . . . . . . . . 9  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  Fun  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) ) )
39 dmun 5105 . . . . . . . . . . . 12  |-  dom  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  =  ( dom  `' g  u.  dom  ( ( A  \  ran  g
)  X.  { z } ) )
4028uneq1i 3483 . . . . . . . . . . . 12  |-  ( ran  g  u.  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  ( dom  `' g  u.  dom  ( ( A  \  ran  g
)  X.  { z } ) )
4132uneq2i 3484 . . . . . . . . . . . 12  |-  ( ran  g  u.  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  g  u.  ( A  \  ran  g ) )
4239, 40, 413eqtr2i 2468 . . . . . . . . . . 11  |-  dom  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  g  u.  ( A  \  ran  g ) )
43 f1f 5668 . . . . . . . . . . . . 13  |-  ( g : B -1-1-> A  -> 
g : B --> A )
44 frn 5626 . . . . . . . . . . . . 13  |-  ( g : B --> A  ->  ran  g  C_  A )
4543, 44syl 16 . . . . . . . . . . . 12  |-  ( g : B -1-1-> A  ->  ran  g  C_  A )
46 undif 3732 . . . . . . . . . . . 12  |-  ( ran  g  C_  A  <->  ( ran  g  u.  ( A  \  ran  g ) )  =  A )
4745, 46sylib 190 . . . . . . . . . . 11  |-  ( g : B -1-1-> A  -> 
( ran  g  u.  ( A  \  ran  g
) )  =  A )
4842, 47syl5eq 2486 . . . . . . . . . 10  |-  ( g : B -1-1-> A  ->  dom  ( `' g  u.  ( ( A  \  ran  g )  X.  {
z } ) )  =  A )
4948adantl 454 . . . . . . . . 9  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  dom  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) )  =  A )
50 df-fn 5486 . . . . . . . . 9  |-  ( ( `' 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 ) )
5138, 49, 50sylanbrc 647 . . . . . . . 8  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) )  Fn  A )
52 rnun 5309 . . . . . . . . 9  |-  ran  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  `' g  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) )
53 dfdm4 5092 . . . . . . . . . . . 12  |-  dom  g  =  ran  `' g
54 f1dm 5672 . . . . . . . . . . . 12  |-  ( g : B -1-1-> A  ->  dom  g  =  B
)
5553, 54syl5eqr 2488 . . . . . . . . . . 11  |-  ( g : B -1-1-> A  ->  ran  `' g  =  B
)
5655uneq1d 3486 . . . . . . . . . 10  |-  ( g : B -1-1-> A  -> 
( ran  `' g  u.  ran  ( ( A 
\  ran  g )  X.  { z } ) )  =  ( B  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) ) )
57 xpeq1 4921 . . . . . . . . . . . . . . . . 17  |-  ( ( A  \  ran  g
)  =  (/)  ->  (
( A  \  ran  g )  X.  {
z } )  =  ( (/)  X.  { z } ) )
58 xp0r 4985 . . . . . . . . . . . . . . . . 17  |-  ( (/)  X. 
{ z } )  =  (/)
5957, 58syl6eq 2490 . . . . . . . . . . . . . . . 16  |-  ( ( A  \  ran  g
)  =  (/)  ->  (
( A  \  ran  g )  X.  {
z } )  =  (/) )
6059rneqd 5126 . . . . . . . . . . . . . . 15  |-  ( ( A  \  ran  g
)  =  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  ran  (/) )
61 rn0 5156 . . . . . . . . . . . . . . 15  |-  ran  (/)  =  (/)
6260, 61syl6eq 2490 . . . . . . . . . . . . . 14  |-  ( ( A  \  ran  g
)  =  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  (/) )
63 0ss 3641 . . . . . . . . . . . . . 14  |-  (/)  C_  B
6462, 63syl6eqss 3384 . . . . . . . . . . . . 13  |-  ( ( A  \  ran  g
)  =  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B )
6564a1d 24 . . . . . . . . . . . 12  |-  ( ( A  \  ran  g
)  =  (/)  ->  (
z  e.  B  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B ) )
66 rnxp 5328 . . . . . . . . . . . . . . 15  |-  ( ( A  \  ran  g
)  =/=  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  { z } )
6766adantr 453 . . . . . . . . . . . . . 14  |-  ( ( ( A  \  ran  g )  =/=  (/)  /\  z  e.  B )  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  { z } )
68 snssi 3966 . . . . . . . . . . . . . . 15  |-  ( z  e.  B  ->  { z }  C_  B )
6968adantl 454 . . . . . . . . . . . . . 14  |-  ( ( ( A  \  ran  g )  =/=  (/)  /\  z  e.  B )  ->  { z }  C_  B )
7067, 69eqsstrd 3368 . . . . . . . . . . . . 13  |-  ( ( ( A  \  ran  g )  =/=  (/)  /\  z  e.  B )  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B )
7170ex 425 . . . . . . . . . . . 12  |-  ( ( A  \  ran  g
)  =/=  (/)  ->  (
z  e.  B  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B ) )
7265, 71pm2.61ine 2686 . . . . . . . . . . 11  |-  ( z  e.  B  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B )
73 ssequn2 3506 . . . . . . . . . . 11  |-  ( ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B 
<->  ( B  u.  ran  ( ( A  \  ran  g )  X.  {
z } ) )  =  B )
7472, 73sylib 190 . . . . . . . . . 10  |-  ( z  e.  B  ->  ( B  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) )  =  B )
7556, 74sylan9eqr 2496 . . . . . . . . 9  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ( ran  `' g  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) )  =  B )
7652, 75syl5eq 2486 . . . . . . . 8  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ran  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) )  =  B )
77 df-fo 5489 . . . . . . . 8  |-  ( ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) ) : A -onto-> B  <->  ( ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  Fn  A  /\  ran  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  =  B ) )
7851, 76, 77sylanbrc 647 . . . . . . 7  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) ) : A -onto-> B
)
79 foeq1 5678 . . . . . . . 8  |-  ( f  =  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) )  ->  ( f : A -onto-> B  <->  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) ) : A -onto-> B
) )
8079spcegv 3043 . . . . . . 7  |-  ( ( `' 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 ) )
8120, 78, 80syl2im 37 . . . . . 6  |-  ( A  e.  _V  ->  (
( z  e.  B  /\  g : B -1-1-> A
)  ->  E. f 
f : A -onto-> B
) )
8281expdimp 428 . . . . 5  |-  ( ( A  e.  _V  /\  z  e.  B )  ->  ( g : B -1-1-> A  ->  E. f  f : A -onto-> B ) )
8382exlimdv 1647 . . . 4  |-  ( ( A  e.  _V  /\  z  e.  B )  ->  ( E. g  g : B -1-1-> A  ->  E. f  f : A -onto-> B ) )
8483ex 425 . . 3  |-  ( A  e.  _V  ->  (
z  e.  B  -> 
( E. g  g : B -1-1-> A  ->  E. f  f : A -onto-> B ) ) )
8584exlimdv 1647 . 2  |-  ( A  e.  _V  ->  ( E. z  z  e.  B  ->  ( E. g 
g : B -1-1-> A  ->  E. f  f : A -onto-> B ) ) )
863, 9, 11, 85syl3c 60 1  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  E. f 
f : A -onto-> B
)
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 178    /\ wa 360   E.wex 1551    = wceq 1653    e. wcel 1727    =/= wne 2605   _Vcvv 2962    \ cdif 3303    u. cun 3304    i^i cin 3305    C_ wss 3306   (/)c0 3613   {csn 3838   class class class wbr 4237    X. cxp 4905   `'ccnv 4906   dom cdm 4907   ran crn 4908   Fun wfun 5477    Fn wfn 5478   -->wf 5479   -1-1->wf1 5480   -onto->wfo 5481    ~<_ cdom 7136    ~< csdm 7137
This theorem is referenced by:  pwdom  7288  fodomfib  7415  domwdom  7571  iunfictbso  8026  fodomb  8435  brdom3  8437  konigthlem  8474  1stcfb  17539  ovoliunnul  19434  ovoliunnfl  26284  voliunnfl  26286  volsupnfl  26287
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1556  ax-5 1567  ax-17 1627  ax-9 1668  ax-8 1689  ax-13 1729  ax-14 1731  ax-6 1746  ax-7 1751  ax-11 1763  ax-12 1953  ax-ext 2423  ax-sep 4355  ax-nul 4363  ax-pow 4406  ax-pr 4432  ax-un 4730
This theorem depends on definitions:  df-bi 179  df-or 361  df-an 362  df-3an 939  df-tru 1329  df-ex 1552  df-nf 1555  df-sb 1660  df-eu 2291  df-mo 2292  df-clab 2429  df-cleq 2435  df-clel 2438  df-nfc 2567  df-ne 2607  df-ral 2716  df-rex 2717  df-rab 2720  df-v 2964  df-dif 3309  df-un 3311  df-in 3313  df-ss 3320  df-nul 3614  df-if 3764  df-pw 3825  df-sn 3844  df-pr 3845  df-op 3847  df-uni 4040  df-br 4238  df-opab 4292  df-mpt 4293  df-id 4527  df-xp 4913  df-rel 4914  df-cnv 4915  df-co 4916  df-dm 4917  df-rn 4918  df-res 4919  df-ima 4920  df-fun 5485  df-fn 5486  df-f 5487  df-f1 5488  df-fo 5489  df-f1o 5490  df-er 6934  df-en 7139  df-dom 7140  df-sdom 7141
  Copyright terms: Public domain W3C validator