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

Theorem fodomr 7097
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 6954 . . . 4  |-  Rel  ~<_
21brrelex2i 4809 . . 3  |-  ( B  ~<_  A  ->  A  e.  _V )
32adantl 452 . 2  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  A  e.  _V )
41brrelexi 4808 . . . 4  |-  ( B  ~<_  A  ->  B  e.  _V )
5 0sdomg 7075 . . . . 5  |-  ( B  e.  _V  ->  ( (/) 
~<  B  <->  B  =/=  (/) ) )
6 n0 3540 . . . . 5  |-  ( B  =/=  (/)  <->  E. z  z  e.  B )
75, 6syl6bb 252 . . . 4  |-  ( B  e.  _V  ->  ( (/) 
~<  B  <->  E. z  z  e.  B ) )
84, 7syl 15 . . 3  |-  ( B  ~<_  A  ->  ( (/)  ~<  B  <->  E. z 
z  e.  B ) )
98biimpac 472 . 2  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  E. z 
z  e.  B )
10 brdomi 6958 . . 3  |-  ( B  ~<_  A  ->  E. g 
g : B -1-1-> A
)
1110adantl 452 . 2  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  E. g 
g : B -1-1-> A
)
12 difexg 4241 . . . . . . . . . 10  |-  ( A  e.  _V  ->  ( A  \  ran  g )  e.  _V )
13 snex 4295 . . . . . . . . . 10  |-  { z }  e.  _V
14 xpexg 4879 . . . . . . . . . 10  |-  ( ( ( A  \  ran  g )  e.  _V  /\ 
{ z }  e.  _V )  ->  ( ( A  \  ran  g
)  X.  { z } )  e.  _V )
1512, 13, 14sylancl 643 . . . . . . . . 9  |-  ( A  e.  _V  ->  (
( A  \  ran  g )  X.  {
z } )  e. 
_V )
16 vex 2867 . . . . . . . . . 10  |-  g  e. 
_V
1716cnvex 5288 . . . . . . . . 9  |-  `' g  e.  _V
1815, 17jctil 523 . . . . . . . 8  |-  ( A  e.  _V  ->  ( `' g  e.  _V  /\  ( ( A  \  ran  g )  X.  {
z } )  e. 
_V ) )
19 unexb 4599 . . . . . . . 8  |-  ( ( `' g  e.  _V  /\  ( ( A  \  ran  g )  X.  {
z } )  e. 
_V )  <->  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) )  e.  _V )
2018, 19sylib 188 . . . . . . 7  |-  ( A  e.  _V  ->  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  e.  _V )
21 df-f1 5339 . . . . . . . . . . . . 13  |-  ( g : B -1-1-> A  <->  ( g : B --> A  /\  Fun  `' g ) )
2221simprbi 450 . . . . . . . . . . . 12  |-  ( g : B -1-1-> A  ->  Fun  `' g )
23 vex 2867 . . . . . . . . . . . . . 14  |-  z  e. 
_V
2423fconst 5507 . . . . . . . . . . . . 13  |-  ( ( A  \  ran  g
)  X.  { z } ) : ( A  \  ran  g
) --> { z }
25 ffun 5471 . . . . . . . . . . . . 13  |-  ( ( ( A  \  ran  g )  X.  {
z } ) : ( A  \  ran  g ) --> { z }  ->  Fun  ( ( A  \  ran  g
)  X.  { z } ) )
2624, 25ax-mp 8 . . . . . . . . . . . 12  |-  Fun  (
( A  \  ran  g )  X.  {
z } )
2722, 26jctir 524 . . . . . . . . . . 11  |-  ( g : B -1-1-> A  -> 
( Fun  `' g  /\  Fun  ( ( A 
\  ran  g )  X.  { z } ) ) )
28 df-rn 4779 . . . . . . . . . . . . . 14  |-  ran  g  =  dom  `' g
2928eqcomi 2362 . . . . . . . . . . . . 13  |-  dom  `' g  =  ran  g
3023snnz 3820 . . . . . . . . . . . . . 14  |-  { z }  =/=  (/)
31 dmxp 4976 . . . . . . . . . . . . . 14  |-  ( { z }  =/=  (/)  ->  dom  ( ( A  \  ran  g )  X.  {
z } )  =  ( A  \  ran  g ) )
3230, 31ax-mp 8 . . . . . . . . . . . . 13  |-  dom  (
( A  \  ran  g )  X.  {
z } )  =  ( A  \  ran  g )
3329, 32ineq12i 3444 . . . . . . . . . . . 12  |-  ( dom  `' g  i^i  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  g  i^i  ( A  \  ran  g ) )
34 disjdif 3602 . . . . . . . . . . . 12  |-  ( ran  g  i^i  ( A 
\  ran  g )
)  =  (/)
3533, 34eqtri 2378 . . . . . . . . . . 11  |-  ( dom  `' g  i^i  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  (/)
36 funun 5375 . . . . . . . . . . 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 643 . . . . . . . . . 10  |-  ( g : B -1-1-> A  ->  Fun  ( `' g  u.  ( ( A  \  ran  g )  X.  {
z } ) ) )
3837adantl 452 . . . . . . . . 9  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  Fun  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) ) )
39 dmun 4964 . . . . . . . . . . . 12  |-  dom  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  =  ( dom  `' g  u.  dom  ( ( A  \  ran  g
)  X.  { z } ) )
4028uneq1i 3401 . . . . . . . . . . . 12  |-  ( ran  g  u.  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  ( dom  `' g  u.  dom  ( ( A  \  ran  g
)  X.  { z } ) )
4132uneq2i 3402 . . . . . . . . . . . 12  |-  ( ran  g  u.  dom  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  g  u.  ( A  \  ran  g ) )
4239, 40, 413eqtr2i 2384 . . . . . . . . . . 11  |-  dom  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  g  u.  ( A  \  ran  g ) )
43 f1f 5517 . . . . . . . . . . . . 13  |-  ( g : B -1-1-> A  -> 
g : B --> A )
44 frn 5475 . . . . . . . . . . . . 13  |-  ( g : B --> A  ->  ran  g  C_  A )
4543, 44syl 15 . . . . . . . . . . . 12  |-  ( g : B -1-1-> A  ->  ran  g  C_  A )
46 undif 3610 . . . . . . . . . . . 12  |-  ( ran  g  C_  A  <->  ( ran  g  u.  ( A  \  ran  g ) )  =  A )
4745, 46sylib 188 . . . . . . . . . . 11  |-  ( g : B -1-1-> A  -> 
( ran  g  u.  ( A  \  ran  g
) )  =  A )
4842, 47syl5eq 2402 . . . . . . . . . 10  |-  ( g : B -1-1-> A  ->  dom  ( `' g  u.  ( ( A  \  ran  g )  X.  {
z } ) )  =  A )
4948adantl 452 . . . . . . . . 9  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  dom  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) )  =  A )
50 df-fn 5337 . . . . . . . . 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 645 . . . . . . . 8  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) )  Fn  A )
52 rnun 5168 . . . . . . . . 9  |-  ran  ( `' g  u.  (
( A  \  ran  g )  X.  {
z } ) )  =  ( ran  `' g  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) )
53 dfdm4 4951 . . . . . . . . . . . 12  |-  dom  g  =  ran  `' g
54 f1dm 5521 . . . . . . . . . . . 12  |-  ( g : B -1-1-> A  ->  dom  g  =  B
)
5553, 54syl5eqr 2404 . . . . . . . . . . 11  |-  ( g : B -1-1-> A  ->  ran  `' g  =  B
)
5655uneq1d 3404 . . . . . . . . . 10  |-  ( g : B -1-1-> A  -> 
( ran  `' g  u.  ran  ( ( A 
\  ran  g )  X.  { z } ) )  =  ( B  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) ) )
57 0ss 3559 . . . . . . . . . . . . . 14  |-  (/)  C_  B
58 xpeq1 4782 . . . . . . . . . . . . . . . . . 18  |-  ( ( A  \  ran  g
)  =  (/)  ->  (
( A  \  ran  g )  X.  {
z } )  =  ( (/)  X.  { z } ) )
59 xp0r 4847 . . . . . . . . . . . . . . . . . 18  |-  ( (/)  X. 
{ z } )  =  (/)
6058, 59syl6eq 2406 . . . . . . . . . . . . . . . . 17  |-  ( ( A  \  ran  g
)  =  (/)  ->  (
( A  \  ran  g )  X.  {
z } )  =  (/) )
6160rneqd 4985 . . . . . . . . . . . . . . . 16  |-  ( ( A  \  ran  g
)  =  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  ran  (/) )
62 rn0 5015 . . . . . . . . . . . . . . . 16  |-  ran  (/)  =  (/)
6361, 62syl6eq 2406 . . . . . . . . . . . . . . 15  |-  ( ( A  \  ran  g
)  =  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  (/) )
6463sseq1d 3281 . . . . . . . . . . . . . 14  |-  ( ( A  \  ran  g
)  =  (/)  ->  ( ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B 
<->  (/)  C_  B ) )
6557, 64mpbiri 224 . . . . . . . . . . . . 13  |-  ( ( A  \  ran  g
)  =  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B )
6665a1d 22 . . . . . . . . . . . 12  |-  ( ( A  \  ran  g
)  =  (/)  ->  (
z  e.  B  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B ) )
67 rnxp 5185 . . . . . . . . . . . . . . 15  |-  ( ( A  \  ran  g
)  =/=  (/)  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  { z } )
6867adantr 451 . . . . . . . . . . . . . 14  |-  ( ( ( A  \  ran  g )  =/=  (/)  /\  z  e.  B )  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  =  { z } )
69 snssi 3838 . . . . . . . . . . . . . . 15  |-  ( z  e.  B  ->  { z }  C_  B )
7069adantl 452 . . . . . . . . . . . . . 14  |-  ( ( ( A  \  ran  g )  =/=  (/)  /\  z  e.  B )  ->  { z }  C_  B )
7168, 70eqsstrd 3288 . . . . . . . . . . . . 13  |-  ( ( ( A  \  ran  g )  =/=  (/)  /\  z  e.  B )  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B )
7271ex 423 . . . . . . . . . . . 12  |-  ( ( A  \  ran  g
)  =/=  (/)  ->  (
z  e.  B  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B ) )
7366, 72pm2.61ine 2597 . . . . . . . . . . 11  |-  ( z  e.  B  ->  ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B )
74 ssequn2 3424 . . . . . . . . . . 11  |-  ( ran  ( ( A  \  ran  g )  X.  {
z } )  C_  B 
<->  ( B  u.  ran  ( ( A  \  ran  g )  X.  {
z } ) )  =  B )
7573, 74sylib 188 . . . . . . . . . 10  |-  ( z  e.  B  ->  ( B  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) )  =  B )
7656, 75sylan9eqr 2412 . . . . . . . . 9  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ( ran  `' g  u.  ran  ( ( A  \  ran  g
)  X.  { z } ) )  =  B )
7752, 76syl5eq 2402 . . . . . . . 8  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ran  ( `' g  u.  ( ( A  \  ran  g )  X.  { z } ) )  =  B )
78 df-fo 5340 . . . . . . . 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 ) )
7951, 77, 78sylanbrc 645 . . . . . . 7  |-  ( ( z  e.  B  /\  g : B -1-1-> A )  ->  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) ) : A -onto-> B
)
80 foeq1 5527 . . . . . . . 8  |-  ( f  =  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) )  ->  ( f : A -onto-> B  <->  ( `' g  u.  ( ( A 
\  ran  g )  X.  { z } ) ) : A -onto-> B
) )
8180spcegv 2945 . . . . . . 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 ) )
8220, 79, 81syl2im 34 . . . . . 6  |-  ( A  e.  _V  ->  (
( z  e.  B  /\  g : B -1-1-> A
)  ->  E. f 
f : A -onto-> B
) )
8382expdimp 426 . . . . 5  |-  ( ( A  e.  _V  /\  z  e.  B )  ->  ( g : B -1-1-> A  ->  E. f  f : A -onto-> B ) )
8483exlimdv 1636 . . . 4  |-  ( ( A  e.  _V  /\  z  e.  B )  ->  ( E. g  g : B -1-1-> A  ->  E. f  f : A -onto-> B ) )
8584ex 423 . . 3  |-  ( A  e.  _V  ->  (
z  e.  B  -> 
( E. g  g : B -1-1-> A  ->  E. f  f : A -onto-> B ) ) )
8685exlimdv 1636 . 2  |-  ( A  e.  _V  ->  ( E. z  z  e.  B  ->  ( E. g 
g : B -1-1-> A  ->  E. f  f : A -onto-> B ) ) )
873, 9, 11, 86syl3c 57 1  |-  ( (
(/)  ~<  B  /\  B  ~<_  A )  ->  E. f 
f : A -onto-> B
)
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 176    /\ wa 358   E.wex 1541    = wceq 1642    e. wcel 1710    =/= wne 2521   _Vcvv 2864    \ cdif 3225    u. cun 3226    i^i cin 3227    C_ wss 3228   (/)c0 3531   {csn 3716   class class class wbr 4102    X. cxp 4766   `'ccnv 4767   dom cdm 4768   ran crn 4769   Fun wfun 5328    Fn wfn 5329   -->wf 5330   -1-1->wf1 5331   -onto->wfo 5332    ~<_ cdom 6946    ~< csdm 6947
This theorem is referenced by:  pwdom  7098  fodomfib  7223  domwdom  7375  iunfictbso  7828  fodomb  8238  brdom3  8240  konigthlem  8277  1stcfb  17271  ovoliunnul  18964  ovoliunnfl  25488  voliunnfl  25490  volsupnfl  25491
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1546  ax-5 1557  ax-17 1616  ax-9 1654  ax-8 1675  ax-13 1712  ax-14 1714  ax-6 1729  ax-7 1734  ax-11 1746  ax-12 1930  ax-ext 2339  ax-sep 4220  ax-nul 4228  ax-pow 4267  ax-pr 4293  ax-un 4591
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3an 936  df-tru 1319  df-ex 1542  df-nf 1545  df-sb 1649  df-eu 2213  df-mo 2214  df-clab 2345  df-cleq 2351  df-clel 2354  df-nfc 2483  df-ne 2523  df-ral 2624  df-rex 2625  df-rab 2628  df-v 2866  df-dif 3231  df-un 3233  df-in 3235  df-ss 3242  df-nul 3532  df-if 3642  df-pw 3703  df-sn 3722  df-pr 3723  df-op 3725  df-uni 3907  df-br 4103  df-opab 4157  df-mpt 4158  df-id 4388  df-xp 4774  df-rel 4775  df-cnv 4776  df-co 4777  df-dm 4778  df-rn 4779  df-res 4780  df-ima 4781  df-fun 5336  df-fn 5337  df-f 5338  df-f1 5339  df-fo 5340  df-f1o 5341  df-er 6744  df-en 6949  df-dom 6950  df-sdom 6951
  Copyright terms: Public domain W3C validator