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

Theorem setcepi 14977
Description: An epimorphism of sets is a surjection. (Contributed by Mario Carneiro, 3-Jan-2017.)
Hypotheses
Ref Expression
setcmon.c  |-  C  =  ( SetCat `  U )
setcmon.u  |-  ( ph  ->  U  e.  V )
setcmon.x  |-  ( ph  ->  X  e.  U )
setcmon.y  |-  ( ph  ->  Y  e.  U )
setcepi.h  |-  E  =  (Epi `  C )
setcepi.2  |-  ( ph  ->  2o  e.  U )
Assertion
Ref Expression
setcepi  |-  ( ph  ->  ( F  e.  ( X E Y )  <-> 
F : X -onto-> Y
) )

Proof of Theorem setcepi
Dummy variables  x  g  a  h  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2443 . . . . . 6  |-  ( Base `  C )  =  (
Base `  C )
2 eqid 2443 . . . . . 6  |-  ( Hom  `  C )  =  ( Hom  `  C )
3 eqid 2443 . . . . . 6  |-  (comp `  C )  =  (comp `  C )
4 setcepi.h . . . . . 6  |-  E  =  (Epi `  C )
5 setcmon.u . . . . . . 7  |-  ( ph  ->  U  e.  V )
6 setcmon.c . . . . . . . 8  |-  C  =  ( SetCat `  U )
76setccat 14974 . . . . . . 7  |-  ( U  e.  V  ->  C  e.  Cat )
85, 7syl 16 . . . . . 6  |-  ( ph  ->  C  e.  Cat )
9 setcmon.x . . . . . . 7  |-  ( ph  ->  X  e.  U )
106, 5setcbas 14967 . . . . . . 7  |-  ( ph  ->  U  =  ( Base `  C ) )
119, 10eleqtrd 2519 . . . . . 6  |-  ( ph  ->  X  e.  ( Base `  C ) )
12 setcmon.y . . . . . . 7  |-  ( ph  ->  Y  e.  U )
1312, 10eleqtrd 2519 . . . . . 6  |-  ( ph  ->  Y  e.  ( Base `  C ) )
141, 2, 3, 4, 8, 11, 13epihom 14702 . . . . 5  |-  ( ph  ->  ( X E Y )  C_  ( X
( Hom  `  C ) Y ) )
1514sselda 3377 . . . 4  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  F  e.  ( X ( Hom  `  C
) Y ) )
166, 5, 2, 9, 12elsetchom 14970 . . . . 5  |-  ( ph  ->  ( F  e.  ( X ( Hom  `  C
) Y )  <->  F : X
--> Y ) )
1716biimpa 484 . . . 4  |-  ( (
ph  /\  F  e.  ( X ( Hom  `  C
) Y ) )  ->  F : X --> Y )
1815, 17syldan 470 . . 3  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  F : X
--> Y )
19 frn 5586 . . . . 5  |-  ( F : X --> Y  ->  ran  F  C_  Y )
2018, 19syl 16 . . . 4  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ran  F  C_  Y )
21 ffn 5580 . . . . . . . . . . . . . . 15  |-  ( F : X --> Y  ->  F  Fn  X )
2218, 21syl 16 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  F  Fn  X )
23 fnfvelrn 5861 . . . . . . . . . . . . . 14  |-  ( ( F  Fn  X  /\  x  e.  X )  ->  ( F `  x
)  e.  ran  F
)
2422, 23sylan 471 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  F  e.  ( X E Y ) )  /\  x  e.  X )  ->  ( F `  x )  e.  ran  F )
25 iftrue 3818 . . . . . . . . . . . . 13  |-  ( ( F `  x )  e.  ran  F  ->  if ( ( F `  x )  e.  ran  F ,  1o ,  (/) )  =  1o )
2624, 25syl 16 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  F  e.  ( X E Y ) )  /\  x  e.  X )  ->  if ( ( F `  x )  e.  ran  F ,  1o ,  (/) )  =  1o )
2726mpteq2dva 4399 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( x  e.  X  |->  if ( ( F `  x
)  e.  ran  F ,  1o ,  (/) ) )  =  ( x  e.  X  |->  1o ) )
2818ffvelrnda 5864 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  F  e.  ( X E Y ) )  /\  x  e.  X )  ->  ( F `  x )  e.  Y )
2918feqmptd 5765 . . . . . . . . . . . 12  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  F  =  ( x  e.  X  |->  ( F `  x
) ) )
30 eqidd 2444 . . . . . . . . . . . 12  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  =  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) ) )
31 eleq1 2503 . . . . . . . . . . . . 13  |-  ( a  =  ( F `  x )  ->  (
a  e.  ran  F  <->  ( F `  x )  e.  ran  F ) )
3231ifbid 3832 . . . . . . . . . . . 12  |-  ( a  =  ( F `  x )  ->  if ( a  e.  ran  F ,  1o ,  (/) )  =  if (
( F `  x
)  e.  ran  F ,  1o ,  (/) ) )
3328, 29, 30, 32fmptco 5897 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( (
a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  o.  F
)  =  ( x  e.  X  |->  if ( ( F `  x
)  e.  ran  F ,  1o ,  (/) ) ) )
34 fconstmpt 4903 . . . . . . . . . . . . 13  |-  ( Y  X.  { 1o }
)  =  ( a  e.  Y  |->  1o )
3534a1i 11 . . . . . . . . . . . 12  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( Y  X.  { 1o } )  =  ( a  e.  Y  |->  1o ) )
36 eqidd 2444 . . . . . . . . . . . 12  |-  ( a  =  ( F `  x )  ->  1o  =  1o )
3728, 29, 35, 36fmptco 5897 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( ( Y  X.  { 1o }
)  o.  F )  =  ( x  e.  X  |->  1o ) )
3827, 33, 373eqtr4d 2485 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( (
a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  o.  F
)  =  ( ( Y  X.  { 1o } )  o.  F
) )
395adantr 465 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  U  e.  V )
409adantr 465 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  X  e.  U )
4112adantr 465 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  Y  e.  U )
42 setcepi.2 . . . . . . . . . . . 12  |-  ( ph  ->  2o  e.  U )
4342adantr 465 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  2o  e.  U )
44 eqid 2443 . . . . . . . . . . . . 13  |-  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  =  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )
45 1onn 7099 . . . . . . . . . . . . . . . . . 18  |-  1o  e.  om
4645elexi 3003 . . . . . . . . . . . . . . . . 17  |-  1o  e.  _V
4746prid2 4005 . . . . . . . . . . . . . . . 16  |-  1o  e.  {
(/) ,  1o }
48 df2o3 6954 . . . . . . . . . . . . . . . 16  |-  2o  =  { (/) ,  1o }
4947, 48eleqtrri 2516 . . . . . . . . . . . . . . 15  |-  1o  e.  2o
50 0ex 4443 . . . . . . . . . . . . . . . . 17  |-  (/)  e.  _V
5150prid1 4004 . . . . . . . . . . . . . . . 16  |-  (/)  e.  { (/)
,  1o }
5251, 48eleqtrri 2516 . . . . . . . . . . . . . . 15  |-  (/)  e.  2o
5349, 52keepel 3878 . . . . . . . . . . . . . 14  |-  if ( a  e.  ran  F ,  1o ,  (/) )  e.  2o
5453a1i 11 . . . . . . . . . . . . 13  |-  ( a  e.  Y  ->  if ( a  e.  ran  F ,  1o ,  (/) )  e.  2o )
5544, 54fmpti 5887 . . . . . . . . . . . 12  |-  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) ) : Y --> 2o
5655a1i 11 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) ) : Y --> 2o )
576, 39, 3, 40, 41, 43, 18, 56setcco 14972 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( (
a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) ) ( <. X ,  Y >. (comp `  C ) 2o ) F )  =  ( ( a  e.  Y  |->  if ( a  e. 
ran  F ,  1o ,  (/) ) )  o.  F ) )
58 fconst6g 5620 . . . . . . . . . . . 12  |-  ( 1o  e.  2o  ->  ( Y  X.  { 1o }
) : Y --> 2o )
5949, 58mp1i 12 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( Y  X.  { 1o } ) : Y --> 2o )
606, 39, 3, 40, 41, 43, 18, 59setcco 14972 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( ( Y  X.  { 1o }
) ( <. X ,  Y >. (comp `  C
) 2o ) F )  =  ( ( Y  X.  { 1o } )  o.  F
) )
6138, 57, 603eqtr4d 2485 . . . . . . . . 9  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( (
a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) ) ( <. X ,  Y >. (comp `  C ) 2o ) F )  =  ( ( Y  X.  { 1o } ) ( <. X ,  Y >. (comp `  C ) 2o ) F ) )
628adantr 465 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  C  e.  Cat )
6311adantr 465 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  X  e.  ( Base `  C )
)
6413adantr 465 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  Y  e.  ( Base `  C )
)
6542, 10eleqtrd 2519 . . . . . . . . . . 11  |-  ( ph  ->  2o  e.  ( Base `  C ) )
6665adantr 465 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  2o  e.  ( Base `  C )
)
67 simpr 461 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  F  e.  ( X E Y ) )
686, 39, 2, 41, 43elsetchom 14970 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( (
a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  e.  ( Y ( Hom  `  C
) 2o )  <->  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) ) : Y --> 2o ) )
6956, 68mpbird 232 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  e.  ( Y ( Hom  `  C ) 2o ) )
706, 39, 2, 41, 43elsetchom 14970 . . . . . . . . . . 11  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( ( Y  X.  { 1o }
)  e.  ( Y ( Hom  `  C
) 2o )  <->  ( Y  X.  { 1o } ) : Y --> 2o ) )
7159, 70mpbird 232 . . . . . . . . . 10  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( Y  X.  { 1o } )  e.  ( Y ( Hom  `  C ) 2o ) )
721, 2, 3, 4, 62, 63, 64, 66, 67, 69, 71epii 14703 . . . . . . . . 9  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( (
( a  e.  Y  |->  if ( a  e. 
ran  F ,  1o ,  (/) ) ) (
<. X ,  Y >. (comp `  C ) 2o ) F )  =  ( ( Y  X.  { 1o } ) ( <. X ,  Y >. (comp `  C ) 2o ) F )  <->  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  =  ( Y  X.  { 1o } ) ) )
7361, 72mpbid 210 . . . . . . . 8  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  =  ( Y  X.  { 1o } ) )
7473, 34syl6eq 2491 . . . . . . 7  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  =  ( a  e.  Y  |->  1o ) )
7553rgenw 2804 . . . . . . . 8  |-  A. a  e.  Y  if (
a  e.  ran  F ,  1o ,  (/) )  e.  2o
76 mpteqb 5809 . . . . . . . 8  |-  ( A. a  e.  Y  if ( a  e.  ran  F ,  1o ,  (/) )  e.  2o  ->  ( ( a  e.  Y  |->  if ( a  e. 
ran  F ,  1o ,  (/) ) )  =  ( a  e.  Y  |->  1o )  <->  A. a  e.  Y  if (
a  e.  ran  F ,  1o ,  (/) )  =  1o ) )
7775, 76ax-mp 5 . . . . . . 7  |-  ( ( a  e.  Y  |->  if ( a  e.  ran  F ,  1o ,  (/) ) )  =  ( a  e.  Y  |->  1o )  <->  A. a  e.  Y  if ( a  e.  ran  F ,  1o ,  (/) )  =  1o )
7874, 77sylib 196 . . . . . 6  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  A. a  e.  Y  if (
a  e.  ran  F ,  1o ,  (/) )  =  1o )
79 1n0 6956 . . . . . . . . . 10  |-  1o  =/=  (/)
8079nesymi 2672 . . . . . . . . 9  |-  -.  (/)  =  1o
81 iffalse 3820 . . . . . . . . . 10  |-  ( -.  a  e.  ran  F  ->  if ( a  e. 
ran  F ,  1o ,  (/) )  =  (/) )
8281eqeq1d 2451 . . . . . . . . 9  |-  ( -.  a  e.  ran  F  ->  ( if ( a  e.  ran  F ,  1o ,  (/) )  =  1o  <->  (/)  =  1o ) )
8380, 82mtbiri 303 . . . . . . . 8  |-  ( -.  a  e.  ran  F  ->  -.  if ( a  e.  ran  F ,  1o ,  (/) )  =  1o )
8483con4i 130 . . . . . . 7  |-  ( if ( a  e.  ran  F ,  1o ,  (/) )  =  1o  ->  a  e.  ran  F )
8584ralimi 2812 . . . . . 6  |-  ( A. a  e.  Y  if ( a  e.  ran  F ,  1o ,  (/) )  =  1o  ->  A. a  e.  Y  a  e.  ran  F )
8678, 85syl 16 . . . . 5  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  A. a  e.  Y  a  e.  ran  F )
87 dfss3 3367 . . . . 5  |-  ( Y 
C_  ran  F  <->  A. a  e.  Y  a  e.  ran  F )
8886, 87sylibr 212 . . . 4  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  Y  C_  ran  F )
8920, 88eqssd 3394 . . 3  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  ran  F  =  Y )
90 dffo2 5645 . . 3  |-  ( F : X -onto-> Y  <->  ( F : X --> Y  /\  ran  F  =  Y ) )
9118, 89, 90sylanbrc 664 . 2  |-  ( (
ph  /\  F  e.  ( X E Y ) )  ->  F : X -onto-> Y )
92 fof 5641 . . . . 5  |-  ( F : X -onto-> Y  ->  F : X --> Y )
9392adantl 466 . . . 4  |-  ( (
ph  /\  F : X -onto-> Y )  ->  F : X --> Y )
9416biimpar 485 . . . 4  |-  ( (
ph  /\  F : X
--> Y )  ->  F  e.  ( X ( Hom  `  C ) Y ) )
9593, 94syldan 470 . . 3  |-  ( (
ph  /\  F : X -onto-> Y )  ->  F  e.  ( X ( Hom  `  C ) Y ) )
9610adantr 465 . . . . . 6  |-  ( (
ph  /\  F : X -onto-> Y )  ->  U  =  ( Base `  C
) )
9796eleq2d 2510 . . . . 5  |-  ( (
ph  /\  F : X -onto-> Y )  ->  (
z  e.  U  <->  z  e.  ( Base `  C )
) )
985ad2antrr 725 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  U  e.  V )
999ad2antrr 725 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  X  e.  U )
10012ad2antrr 725 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  Y  e.  U )
101 simprl 755 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  z  e.  U )
10293adantr 465 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  F : X
--> Y )
103 simprrl 763 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  g  e.  ( Y ( Hom  `  C
) z ) )
1046, 98, 2, 100, 101elsetchom 14970 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( g  e.  ( Y ( Hom  `  C ) z )  <-> 
g : Y --> z ) )
105103, 104mpbid 210 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  g : Y
--> z )
1066, 98, 3, 99, 100, 101, 102, 105setcco 14972 . . . . . . . . . 10  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( g
( <. X ,  Y >. (comp `  C )
z ) F )  =  ( g  o.  F ) )
107 simprrr 764 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  h  e.  ( Y ( Hom  `  C
) z ) )
1086, 98, 2, 100, 101elsetchom 14970 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( h  e.  ( Y ( Hom  `  C ) z )  <-> 
h : Y --> z ) )
109107, 108mpbid 210 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  h : Y
--> z )
1106, 98, 3, 99, 100, 101, 102, 109setcco 14972 . . . . . . . . . 10  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( h
( <. X ,  Y >. (comp `  C )
z ) F )  =  ( h  o.  F ) )
111106, 110eqeq12d 2457 . . . . . . . . 9  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( (
g ( <. X ,  Y >. (comp `  C
) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C )
z ) F )  <-> 
( g  o.  F
)  =  ( h  o.  F ) ) )
112 simplr 754 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  F : X -onto-> Y )
113 ffn 5580 . . . . . . . . . . . 12  |-  ( g : Y --> z  -> 
g  Fn  Y )
114105, 113syl 16 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  g  Fn  Y )
115 ffn 5580 . . . . . . . . . . . 12  |-  ( h : Y --> z  ->  h  Fn  Y )
116109, 115syl 16 . . . . . . . . . . 11  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  h  Fn  Y )
117 cocan2 6017 . . . . . . . . . . 11  |-  ( ( F : X -onto-> Y  /\  g  Fn  Y  /\  h  Fn  Y
)  ->  ( (
g  o.  F )  =  ( h  o.  F )  <->  g  =  h ) )
118112, 114, 116, 117syl3anc 1218 . . . . . . . . . 10  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( (
g  o.  F )  =  ( h  o.  F )  <->  g  =  h ) )
119118biimpd 207 . . . . . . . . 9  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( (
g  o.  F )  =  ( h  o.  F )  ->  g  =  h ) )
120111, 119sylbid 215 . . . . . . . 8  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  (
z  e.  U  /\  ( g  e.  ( Y ( Hom  `  C
) z )  /\  h  e.  ( Y
( Hom  `  C ) z ) ) ) )  ->  ( (
g ( <. X ,  Y >. (comp `  C
) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C )
z ) F )  ->  g  =  h ) )
121120anassrs 648 . . . . . . 7  |-  ( ( ( ( ph  /\  F : X -onto-> Y )  /\  z  e.  U
)  /\  ( g  e.  ( Y ( Hom  `  C ) z )  /\  h  e.  ( Y ( Hom  `  C
) z ) ) )  ->  ( (
g ( <. X ,  Y >. (comp `  C
) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C )
z ) F )  ->  g  =  h ) )
122121ralrimivva 2829 . . . . . 6  |-  ( ( ( ph  /\  F : X -onto-> Y )  /\  z  e.  U )  ->  A. g  e.  ( Y ( Hom  `  C ) z ) A. h  e.  ( Y ( Hom  `  C
) z ) ( ( g ( <. X ,  Y >. (comp `  C ) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C
) z ) F )  ->  g  =  h ) )
123122ex 434 . . . . 5  |-  ( (
ph  /\  F : X -onto-> Y )  ->  (
z  e.  U  ->  A. g  e.  ( Y ( Hom  `  C
) z ) A. h  e.  ( Y
( Hom  `  C ) z ) ( ( g ( <. X ,  Y >. (comp `  C
) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C )
z ) F )  ->  g  =  h ) ) )
12497, 123sylbird 235 . . . 4  |-  ( (
ph  /\  F : X -onto-> Y )  ->  (
z  e.  ( Base `  C )  ->  A. g  e.  ( Y ( Hom  `  C ) z ) A. h  e.  ( Y ( Hom  `  C
) z ) ( ( g ( <. X ,  Y >. (comp `  C ) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C
) z ) F )  ->  g  =  h ) ) )
125124ralrimiv 2819 . . 3  |-  ( (
ph  /\  F : X -onto-> Y )  ->  A. z  e.  ( Base `  C
) A. g  e.  ( Y ( Hom  `  C ) z ) A. h  e.  ( Y ( Hom  `  C
) z ) ( ( g ( <. X ,  Y >. (comp `  C ) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C
) z ) F )  ->  g  =  h ) )
1261, 2, 3, 4, 8, 11, 13isepi2 14701 . . . 4  |-  ( ph  ->  ( F  e.  ( X E Y )  <-> 
( F  e.  ( X ( Hom  `  C
) Y )  /\  A. z  e.  ( Base `  C ) A. g  e.  ( Y ( Hom  `  C ) z ) A. h  e.  ( Y ( Hom  `  C
) z ) ( ( g ( <. X ,  Y >. (comp `  C ) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C
) z ) F )  ->  g  =  h ) ) ) )
127126adantr 465 . . 3  |-  ( (
ph  /\  F : X -onto-> Y )  ->  ( F  e.  ( X E Y )  <->  ( F  e.  ( X ( Hom  `  C ) Y )  /\  A. z  e.  ( Base `  C
) A. g  e.  ( Y ( Hom  `  C ) z ) A. h  e.  ( Y ( Hom  `  C
) z ) ( ( g ( <. X ,  Y >. (comp `  C ) z ) F )  =  ( h ( <. X ,  Y >. (comp `  C
) z ) F )  ->  g  =  h ) ) ) )
12895, 125, 127mpbir2and 913 . 2  |-  ( (
ph  /\  F : X -onto-> Y )  ->  F  e.  ( X E Y ) )
12991, 128impbida 828 1  |-  ( ph  ->  ( F  e.  ( X E Y )  <-> 
F : X -onto-> Y
) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    /\ wa 369    = wceq 1369    e. wcel 1756   A.wral 2736    C_ wss 3349   (/)c0 3658   ifcif 3812   {csn 3898   {cpr 3900   <.cop 3904    e. cmpt 4371    X. cxp 4859   ran crn 4862    o. ccom 4865    Fn wfn 5434   -->wf 5435   -onto->wfo 5437   ` cfv 5439  (class class class)co 6112   omcom 6497   1oc1o 6934   2oc2o 6935   Basecbs 14195   Hom chom 14270  compcco 14271   Catccat 14623  Epicepi 14689   SetCatcsetc 14964
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1591  ax-4 1602  ax-5 1670  ax-6 1708  ax-7 1728  ax-8 1758  ax-9 1760  ax-10 1775  ax-11 1780  ax-12 1792  ax-13 1943  ax-ext 2423  ax-rep 4424  ax-sep 4434  ax-nul 4442  ax-pow 4491  ax-pr 4552  ax-un 6393  ax-cnex 9359  ax-resscn 9360  ax-1cn 9361  ax-icn 9362  ax-addcl 9363  ax-addrcl 9364  ax-mulcl 9365  ax-mulrcl 9366  ax-mulcom 9367  ax-addass 9368  ax-mulass 9369  ax-distr 9370  ax-i2m1 9371  ax-1ne0 9372  ax-1rid 9373  ax-rnegex 9374  ax-rrecex 9375  ax-cnre 9376  ax-pre-lttri 9377  ax-pre-lttrn 9378  ax-pre-ltadd 9379  ax-pre-mulgt0 9380
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 966  df-3an 967  df-tru 1372  df-ex 1587  df-nf 1590  df-sb 1701  df-eu 2257  df-mo 2258  df-clab 2430  df-cleq 2436  df-clel 2439  df-nfc 2577  df-ne 2622  df-nel 2623  df-ral 2741  df-rex 2742  df-reu 2743  df-rmo 2744  df-rab 2745  df-v 2995  df-sbc 3208  df-csb 3310  df-dif 3352  df-un 3354  df-in 3356  df-ss 3363  df-pss 3365  df-nul 3659  df-if 3813  df-pw 3883  df-sn 3899  df-pr 3901  df-tp 3903  df-op 3905  df-uni 4113  df-int 4150  df-iun 4194  df-br 4314  df-opab 4372  df-mpt 4373  df-tr 4407  df-eprel 4653  df-id 4657  df-po 4662  df-so 4663  df-fr 4700  df-we 4702  df-ord 4743  df-on 4744  df-lim 4745  df-suc 4746  df-xp 4867  df-rel 4868  df-cnv 4869  df-co 4870  df-dm 4871  df-rn 4872  df-res 4873  df-ima 4874  df-iota 5402  df-fun 5441  df-fn 5442  df-f 5443  df-f1 5444  df-fo 5445  df-f1o 5446  df-fv 5447  df-riota 6073  df-ov 6115  df-oprab 6116  df-mpt2 6117  df-om 6498  df-1st 6598  df-2nd 6599  df-tpos 6766  df-recs 6853  df-rdg 6887  df-1o 6941  df-2o 6942  df-oadd 6945  df-er 7122  df-map 7237  df-en 7332  df-dom 7333  df-sdom 7334  df-fin 7335  df-pnf 9441  df-mnf 9442  df-xr 9443  df-ltxr 9444  df-le 9445  df-sub 9618  df-neg 9619  df-nn 10344  df-2 10401  df-3 10402  df-4 10403  df-5 10404  df-6 10405  df-7 10406  df-8 10407  df-9 10408  df-10 10409  df-n0 10601  df-z 10668  df-dec 10777  df-uz 10883  df-fz 11459  df-struct 14197  df-ndx 14198  df-slot 14199  df-base 14200  df-sets 14201  df-hom 14283  df-cco 14284  df-cat 14627  df-cid 14628  df-oppc 14672  df-mon 14690  df-epi 14691  df-setc 14965
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator