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

Theorem yoniso 14061
Description: If the codomain is recoverable from a hom-set, then the Yoneda embedding is injective on objects, and hence is an isomorphism from  C into a full subcategory of a presheaf category. (Contributed by Mario Carneiro, 30-Jan-2017.)
Hypotheses
Ref Expression
yoniso.y  |-  Y  =  (Yon `  C )
yoniso.o  |-  O  =  (oppCat `  C )
yoniso.s  |-  S  =  ( SetCat `  U )
yoniso.d  |-  D  =  (CatCat `  V )
yoniso.b  |-  B  =  ( Base `  D
)
yoniso.i  |-  I  =  (  Iso  `  D
)
yoniso.q  |-  Q  =  ( O FuncCat  S )
yoniso.e  |-  E  =  ( Qs  ran  ( 1st `  Y
) )
yoniso.v  |-  ( ph  ->  V  e.  X )
yoniso.c  |-  ( ph  ->  C  e.  B )
yoniso.u  |-  ( ph  ->  U  e.  W )
yoniso.h  |-  ( ph  ->  ran  (  Homf  `  C ) 
C_  U )
yoniso.eb  |-  ( ph  ->  E  e.  B )
yoniso.1  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( F `  ( x
(  Hom  `  C ) y ) )  =  y )
Assertion
Ref Expression
yoniso  |-  ( ph  ->  Y  e.  ( C I E ) )
Distinct variable groups:    x, y, C    y, F    ph, x, y   
x, Y, y
Allowed substitution hints:    B( x, y)    D( x, y)    Q( x, y)    S( x, y)    U( x, y)    E( x, y)    F( x)    I( x, y)    O( x, y)    V( x, y)    W( x, y)    X( x, y)

Proof of Theorem yoniso
StepHypRef Expression
1 relfunc 13738 . . . 4  |-  Rel  ( C  Func  Q )
2 yoniso.y . . . . 5  |-  Y  =  (Yon `  C )
3 yoniso.d . . . . . . . 8  |-  D  =  (CatCat `  V )
4 yoniso.b . . . . . . . 8  |-  B  =  ( Base `  D
)
5 yoniso.v . . . . . . . 8  |-  ( ph  ->  V  e.  X )
63, 4, 5catcbas 13931 . . . . . . 7  |-  ( ph  ->  B  =  ( V  i^i  Cat ) )
7 inss2 3392 . . . . . . 7  |-  ( V  i^i  Cat )  C_  Cat
86, 7syl6eqss 3230 . . . . . 6  |-  ( ph  ->  B  C_  Cat )
9 yoniso.c . . . . . 6  |-  ( ph  ->  C  e.  B )
108, 9sseldd 3183 . . . . 5  |-  ( ph  ->  C  e.  Cat )
11 yoniso.o . . . . 5  |-  O  =  (oppCat `  C )
12 yoniso.s . . . . 5  |-  S  =  ( SetCat `  U )
13 yoniso.q . . . . 5  |-  Q  =  ( O FuncCat  S )
14 yoniso.u . . . . 5  |-  ( ph  ->  U  e.  W )
15 yoniso.h . . . . 5  |-  ( ph  ->  ran  (  Homf  `  C ) 
C_  U )
162, 10, 11, 12, 13, 14, 15yoncl 14038 . . . 4  |-  ( ph  ->  Y  e.  ( C 
Func  Q ) )
17 1st2nd 6168 . . . 4  |-  ( ( Rel  ( C  Func  Q )  /\  Y  e.  ( C  Func  Q
) )  ->  Y  =  <. ( 1st `  Y
) ,  ( 2nd `  Y ) >. )
181, 16, 17sylancr 644 . . 3  |-  ( ph  ->  Y  =  <. ( 1st `  Y ) ,  ( 2nd `  Y
) >. )
192, 11, 12, 13, 10, 14, 15yonffth 14060 . . . . 5  |-  ( ph  ->  Y  e.  ( ( C Full  Q )  i^i  ( C Faith  Q ) ) )
2018, 19eqeltrrd 2360 . . . 4  |-  ( ph  -> 
<. ( 1st `  Y
) ,  ( 2nd `  Y ) >.  e.  ( ( C Full  Q )  i^i  ( C Faith  Q
) ) )
21 eqid 2285 . . . . . 6  |-  ( Base `  C )  =  (
Base `  C )
22 yoniso.e . . . . . 6  |-  E  =  ( Qs  ran  ( 1st `  Y
) )
2311oppccat 13627 . . . . . . . 8  |-  ( C  e.  Cat  ->  O  e.  Cat )
2410, 23syl 15 . . . . . . 7  |-  ( ph  ->  O  e.  Cat )
2512setccat 13919 . . . . . . . 8  |-  ( U  e.  W  ->  S  e.  Cat )
2614, 25syl 15 . . . . . . 7  |-  ( ph  ->  S  e.  Cat )
2713, 24, 26fuccat 13846 . . . . . 6  |-  ( ph  ->  Q  e.  Cat )
28 fvex 5541 . . . . . . . 8  |-  ( 1st `  Y )  e.  _V
2928rnex 4944 . . . . . . 7  |-  ran  ( 1st `  Y )  e. 
_V
3029a1i 10 . . . . . 6  |-  ( ph  ->  ran  ( 1st `  Y
)  e.  _V )
3113fucbas 13836 . . . . . . . . 9  |-  ( O 
Func  S )  =  (
Base `  Q )
32 1st2ndbr 6171 . . . . . . . . . 10  |-  ( ( Rel  ( C  Func  Q )  /\  Y  e.  ( C  Func  Q
) )  ->  ( 1st `  Y ) ( C  Func  Q )
( 2nd `  Y
) )
331, 16, 32sylancr 644 . . . . . . . . 9  |-  ( ph  ->  ( 1st `  Y
) ( C  Func  Q ) ( 2nd `  Y
) )
3421, 31, 33funcf1 13742 . . . . . . . 8  |-  ( ph  ->  ( 1st `  Y
) : ( Base `  C ) --> ( O 
Func  S ) )
35 ffn 5391 . . . . . . . 8  |-  ( ( 1st `  Y ) : ( Base `  C
) --> ( O  Func  S )  ->  ( 1st `  Y )  Fn  ( Base `  C ) )
3634, 35syl 15 . . . . . . 7  |-  ( ph  ->  ( 1st `  Y
)  Fn  ( Base `  C ) )
37 dffn3 5398 . . . . . . 7  |-  ( ( 1st `  Y )  Fn  ( Base `  C
)  <->  ( 1st `  Y
) : ( Base `  C ) --> ran  ( 1st `  Y ) )
3836, 37sylib 188 . . . . . 6  |-  ( ph  ->  ( 1st `  Y
) : ( Base `  C ) --> ran  ( 1st `  Y ) )
3921, 22, 27, 30, 38ffthres2c 13816 . . . . 5  |-  ( ph  ->  ( ( 1st `  Y
) ( ( C Full 
Q )  i^i  ( C Faith  Q ) ) ( 2nd `  Y )  <-> 
( 1st `  Y
) ( ( C Full 
E )  i^i  ( C Faith  E ) ) ( 2nd `  Y ) ) )
40 df-br 4026 . . . . 5  |-  ( ( 1st `  Y ) ( ( C Full  Q
)  i^i  ( C Faith  Q ) ) ( 2nd `  Y )  <->  <. ( 1st `  Y ) ,  ( 2nd `  Y )
>.  e.  ( ( C Full 
Q )  i^i  ( C Faith  Q ) ) )
41 df-br 4026 . . . . 5  |-  ( ( 1st `  Y ) ( ( C Full  E
)  i^i  ( C Faith  E ) ) ( 2nd `  Y )  <->  <. ( 1st `  Y ) ,  ( 2nd `  Y )
>.  e.  ( ( C Full 
E )  i^i  ( C Faith  E ) ) )
4239, 40, 413bitr3g 278 . . . 4  |-  ( ph  ->  ( <. ( 1st `  Y
) ,  ( 2nd `  Y ) >.  e.  ( ( C Full  Q )  i^i  ( C Faith  Q
) )  <->  <. ( 1st `  Y ) ,  ( 2nd `  Y )
>.  e.  ( ( C Full 
E )  i^i  ( C Faith  E ) ) ) )
4320, 42mpbid 201 . . 3  |-  ( ph  -> 
<. ( 1st `  Y
) ,  ( 2nd `  Y ) >.  e.  ( ( C Full  E )  i^i  ( C Faith  E
) ) )
4418, 43eqeltrd 2359 . 2  |-  ( ph  ->  Y  e.  ( ( C Full  E )  i^i  ( C Faith  E ) ) )
45 fveq2 5527 . . . . . . . . 9  |-  ( ( ( 1st `  Y
) `  x )  =  ( ( 1st `  Y ) `  y
)  ->  ( 1st `  ( ( 1st `  Y
) `  x )
)  =  ( 1st `  ( ( 1st `  Y
) `  y )
) )
4645fveq1d 5529 . . . . . . . 8  |-  ( ( ( 1st `  Y
) `  x )  =  ( ( 1st `  Y ) `  y
)  ->  ( ( 1st `  ( ( 1st `  Y ) `  x
) ) `  x
)  =  ( ( 1st `  ( ( 1st `  Y ) `
 y ) ) `
 x ) )
4746fveq2d 5531 . . . . . . 7  |-  ( ( ( 1st `  Y
) `  x )  =  ( ( 1st `  Y ) `  y
)  ->  ( F `  ( ( 1st `  (
( 1st `  Y
) `  x )
) `  x )
)  =  ( F `
 ( ( 1st `  ( ( 1st `  Y
) `  y )
) `  x )
) )
48 simpl 443 . . . . . . . . . 10  |-  ( ( x  e.  ( Base `  C )  /\  y  e.  ( Base `  C
) )  ->  x  e.  ( Base `  C
) )
4948, 48jca 518 . . . . . . . . 9  |-  ( ( x  e.  ( Base `  C )  /\  y  e.  ( Base `  C
) )  ->  (
x  e.  ( Base `  C )  /\  x  e.  ( Base `  C
) ) )
50 eleq1 2345 . . . . . . . . . . . . 13  |-  ( y  =  x  ->  (
y  e.  ( Base `  C )  <->  x  e.  ( Base `  C )
) )
5150anbi2d 684 . . . . . . . . . . . 12  |-  ( y  =  x  ->  (
( x  e.  (
Base `  C )  /\  y  e.  ( Base `  C ) )  <-> 
( x  e.  (
Base `  C )  /\  x  e.  ( Base `  C ) ) ) )
5251anbi2d 684 . . . . . . . . . . 11  |-  ( y  =  x  ->  (
( ph  /\  (
x  e.  ( Base `  C )  /\  y  e.  ( Base `  C
) ) )  <->  ( ph  /\  ( x  e.  (
Base `  C )  /\  x  e.  ( Base `  C ) ) ) ) )
53 fveq2 5527 . . . . . . . . . . . . . . 15  |-  ( y  =  x  ->  (
( 1st `  Y
) `  y )  =  ( ( 1st `  Y ) `  x
) )
5453fveq2d 5531 . . . . . . . . . . . . . 14  |-  ( y  =  x  ->  ( 1st `  ( ( 1st `  Y ) `  y
) )  =  ( 1st `  ( ( 1st `  Y ) `
 x ) ) )
5554fveq1d 5529 . . . . . . . . . . . . 13  |-  ( y  =  x  ->  (
( 1st `  (
( 1st `  Y
) `  y )
) `  x )  =  ( ( 1st `  ( ( 1st `  Y
) `  x )
) `  x )
)
5655fveq2d 5531 . . . . . . . . . . . 12  |-  ( y  =  x  ->  ( F `  ( ( 1st `  ( ( 1st `  Y ) `  y
) ) `  x
) )  =  ( F `  ( ( 1st `  ( ( 1st `  Y ) `
 x ) ) `
 x ) ) )
57 id 19 . . . . . . . . . . . 12  |-  ( y  =  x  ->  y  =  x )
5856, 57eqeq12d 2299 . . . . . . . . . . 11  |-  ( y  =  x  ->  (
( F `  (
( 1st `  (
( 1st `  Y
) `  y )
) `  x )
)  =  y  <->  ( F `  ( ( 1st `  (
( 1st `  Y
) `  x )
) `  x )
)  =  x ) )
5952, 58imbi12d 311 . . . . . . . . . 10  |-  ( y  =  x  ->  (
( ( ph  /\  ( x  e.  ( Base `  C )  /\  y  e.  ( Base `  C ) ) )  ->  ( F `  ( ( 1st `  (
( 1st `  Y
) `  y )
) `  x )
)  =  y )  <-> 
( ( ph  /\  ( x  e.  ( Base `  C )  /\  x  e.  ( Base `  C ) ) )  ->  ( F `  ( ( 1st `  (
( 1st `  Y
) `  x )
) `  x )
)  =  x ) ) )
6010adantr 451 . . . . . . . . . . . . 13  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  C  e.  Cat )
61 simprr 733 . . . . . . . . . . . . 13  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  y  e.  ( Base `  C
) )
62 eqid 2285 . . . . . . . . . . . . 13  |-  (  Hom  `  C )  =  (  Hom  `  C )
63 simprl 732 . . . . . . . . . . . . 13  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  x  e.  ( Base `  C
) )
642, 21, 60, 61, 62, 63yon11 14040 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( 1st `  (
( 1st `  Y
) `  y )
) `  x )  =  ( x (  Hom  `  C )
y ) )
6564fveq2d 5531 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( F `  ( ( 1st `  ( ( 1st `  Y ) `  y
) ) `  x
) )  =  ( F `  ( x (  Hom  `  C
) y ) ) )
66 yoniso.1 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( F `  ( x
(  Hom  `  C ) y ) )  =  y )
6765, 66eqtrd 2317 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( F `  ( ( 1st `  ( ( 1st `  Y ) `  y
) ) `  x
) )  =  y )
6859, 67chvarv 1955 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  x  e.  ( Base `  C )
) )  ->  ( F `  ( ( 1st `  ( ( 1st `  Y ) `  x
) ) `  x
) )  =  x )
6949, 68sylan2 460 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( F `  ( ( 1st `  ( ( 1st `  Y ) `  x
) ) `  x
) )  =  x )
7069, 67eqeq12d 2299 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( F `  (
( 1st `  (
( 1st `  Y
) `  x )
) `  x )
)  =  ( F `
 ( ( 1st `  ( ( 1st `  Y
) `  y )
) `  x )
)  <->  x  =  y
) )
7147, 70syl5ib 210 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( ( 1st `  Y
) `  x )  =  ( ( 1st `  Y ) `  y
)  ->  x  =  y ) )
7271ralrimivva 2637 . . . . 5  |-  ( ph  ->  A. x  e.  (
Base `  C ) A. y  e.  ( Base `  C ) ( ( ( 1st `  Y
) `  x )  =  ( ( 1st `  Y ) `  y
)  ->  x  =  y ) )
73 dff13 5785 . . . . 5  |-  ( ( 1st `  Y ) : ( Base `  C
) -1-1-> ( O  Func  S )  <->  ( ( 1st `  Y ) : (
Base `  C ) --> ( O  Func  S )  /\  A. x  e.  ( Base `  C
) A. y  e.  ( Base `  C
) ( ( ( 1st `  Y ) `
 x )  =  ( ( 1st `  Y
) `  y )  ->  x  =  y ) ) )
7434, 72, 73sylanbrc 645 . . . 4  |-  ( ph  ->  ( 1st `  Y
) : ( Base `  C ) -1-1-> ( O 
Func  S ) )
75 f1f1orn 5485 . . . 4  |-  ( ( 1st `  Y ) : ( Base `  C
) -1-1-> ( O  Func  S )  ->  ( 1st `  Y ) : (
Base `  C ) -1-1-onto-> ran  ( 1st `  Y ) )
7674, 75syl 15 . . 3  |-  ( ph  ->  ( 1st `  Y
) : ( Base `  C ) -1-1-onto-> ran  ( 1st `  Y
) )
77 frn 5397 . . . . . 6  |-  ( ( 1st `  Y ) : ( Base `  C
) --> ( O  Func  S )  ->  ran  ( 1st `  Y )  C_  ( O  Func  S ) )
7834, 77syl 15 . . . . 5  |-  ( ph  ->  ran  ( 1st `  Y
)  C_  ( O  Func  S ) )
7922, 31ressbas2 13201 . . . . 5  |-  ( ran  ( 1st `  Y
)  C_  ( O  Func  S )  ->  ran  ( 1st `  Y )  =  ( Base `  E
) )
8078, 79syl 15 . . . 4  |-  ( ph  ->  ran  ( 1st `  Y
)  =  ( Base `  E ) )
81 f1oeq3 5467 . . . 4  |-  ( ran  ( 1st `  Y
)  =  ( Base `  E )  ->  (
( 1st `  Y
) : ( Base `  C ) -1-1-onto-> ran  ( 1st `  Y
)  <->  ( 1st `  Y
) : ( Base `  C ) -1-1-onto-> ( Base `  E
) ) )
8280, 81syl 15 . . 3  |-  ( ph  ->  ( ( 1st `  Y
) : ( Base `  C ) -1-1-onto-> ran  ( 1st `  Y
)  <->  ( 1st `  Y
) : ( Base `  C ) -1-1-onto-> ( Base `  E
) ) )
8376, 82mpbid 201 . 2  |-  ( ph  ->  ( 1st `  Y
) : ( Base `  C ) -1-1-onto-> ( Base `  E
) )
84 eqid 2285 . . 3  |-  ( Base `  E )  =  (
Base `  E )
85 yoniso.eb . . 3  |-  ( ph  ->  E  e.  B )
86 yoniso.i . . 3  |-  I  =  (  Iso  `  D
)
873, 4, 21, 84, 5, 9, 85, 86catciso 13941 . 2  |-  ( ph  ->  ( Y  e.  ( C I E )  <-> 
( Y  e.  ( ( C Full  E )  i^i  ( C Faith  E
) )  /\  ( 1st `  Y ) : ( Base `  C
)
-1-1-onto-> ( Base `  E )
) ) )
8844, 83, 87mpbir2and 888 1  |-  ( ph  ->  Y  e.  ( C I E ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 176    /\ wa 358    = wceq 1625    e. wcel 1686   A.wral 2545   _Vcvv 2790    i^i cin 3153    C_ wss 3154   <.cop 3645   class class class wbr 4025   ran crn 4692   Rel wrel 4696    Fn wfn 5252   -->wf 5253   -1-1->wf1 5254   -1-1-onto->wf1o 5256   ` cfv 5257  (class class class)co 5860   1stc1st 6122   2ndc2nd 6123   Basecbs 13150   ↾s cress 13151    Hom chom 13221   Catccat 13568    Homf chomf 13570  oppCatcoppc 13616    Iso ciso 13651    Func cfunc 13730   Full cful 13778   Faith cfth 13779   FuncCat cfuc 13818   SetCatcsetc 13909  CatCatccatc 13928  Yoncyon 14025
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1535  ax-5 1546  ax-17 1605  ax-9 1637  ax-8 1645  ax-13 1688  ax-14 1690  ax-6 1705  ax-7 1710  ax-11 1717  ax-12 1868  ax-ext 2266  ax-rep 4133  ax-sep 4143  ax-nul 4151  ax-pow 4190  ax-pr 4216  ax-un 4514  ax-cnex 8795  ax-resscn 8796  ax-1cn 8797  ax-icn 8798  ax-addcl 8799  ax-addrcl 8800  ax-mulcl 8801  ax-mulrcl 8802  ax-mulcom 8803  ax-addass 8804  ax-mulass 8805  ax-distr 8806  ax-i2m1 8807  ax-1ne0 8808  ax-1rid 8809  ax-rnegex 8810  ax-rrecex 8811  ax-cnre 8812  ax-pre-lttri 8813  ax-pre-lttrn 8814  ax-pre-ltadd 8815  ax-pre-mulgt0 8816
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1531  df-nf 1534  df-sb 1632  df-eu 2149  df-mo 2150  df-clab 2272  df-cleq 2278  df-clel 2281  df-nfc 2410  df-ne 2450  df-nel 2451  df-ral 2550  df-rex 2551  df-reu 2552  df-rmo 2553  df-rab 2554  df-v 2792  df-sbc 2994  df-csb 3084  df-dif 3157  df-un 3159  df-in 3161  df-ss 3168  df-pss 3170  df-nul 3458  df-if 3568  df-pw 3629  df-sn 3648  df-pr 3649  df-tp 3650  df-op 3651  df-uni 3830  df-int 3865  df-iun 3909  df-br 4026  df-opab 4080  df-mpt 4081  df-tr 4116  df-eprel 4307  df-id 4311  df-po 4316  df-so 4317  df-fr 4354  df-we 4356  df-ord 4397  df-on 4398  df-lim 4399  df-suc 4400  df-om 4659  df-xp 4697  df-rel 4698  df-cnv 4699  df-co 4700  df-dm 4701  df-rn 4702  df-res 4703  df-ima 4704  df-iota 5221  df-fun 5259  df-fn 5260  df-f 5261  df-f1 5262  df-fo 5263  df-f1o 5264  df-fv 5265  df-ov 5863  df-oprab 5864  df-mpt2 5865  df-1st 6124  df-2nd 6125  df-tpos 6236  df-riota 6306  df-recs 6390  df-rdg 6425  df-1o 6481  df-oadd 6485  df-er 6662  df-map 6776  df-pm 6777  df-ixp 6820  df-en 6866  df-dom 6867  df-sdom 6868  df-fin 6869  df-pnf 8871  df-mnf 8872  df-xr 8873  df-ltxr 8874  df-le 8875  df-sub 9041  df-neg 9042  df-nn 9749  df-2 9806  df-3 9807  df-4 9808  df-5 9809  df-6 9810  df-7 9811  df-8 9812  df-9 9813  df-10 9814  df-n0 9968  df-z 10027  df-dec 10127  df-uz 10233  df-fz 10785  df-struct 13152  df-ndx 13153  df-slot 13154  df-base 13155  df-sets 13156  df-ress 13157  df-hom 13234  df-cco 13235  df-cat 13572  df-cid 13573  df-homf 13574  df-comf 13575  df-oppc 13617  df-sect 13652  df-inv 13653  df-iso 13654  df-ssc 13689  df-resc 13690  df-subc 13691  df-func 13734  df-idfu 13735  df-cofu 13736  df-full 13780  df-fth 13781  df-nat 13819  df-fuc 13820  df-setc 13910  df-catc 13929  df-xpc 13948  df-1stf 13949  df-2ndf 13950  df-prf 13951  df-evlf 13989  df-curf 13990  df-hof 14026  df-yon 14027
  Copyright terms: Public domain W3C validator