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

Theorem fullsubc 14049
Description: The full subcategory generated by a subset of objects is the category with these objects and the same morphisms as the original. The result is always a subcategory (and it is full, meaning that all morphisms of the original category between objects in the subcategory is also in the subcategory). (Contributed by Mario Carneiro, 4-Jan-2017.)
Hypotheses
Ref Expression
fullsubc.b  |-  B  =  ( Base `  C
)
fullsubc.h  |-  H  =  (  Homf 
`  C )
fullsubc.c  |-  ( ph  ->  C  e.  Cat )
fullsubc.s  |-  ( ph  ->  S  C_  B )
Assertion
Ref Expression
fullsubc  |-  ( ph  ->  ( H  |`  ( S  X.  S ) )  e.  (Subcat `  C
) )

Proof of Theorem fullsubc
Dummy variables  f 
g  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fullsubc.h . . . . 5  |-  H  =  (  Homf 
`  C )
2 fullsubc.b . . . . 5  |-  B  =  ( Base `  C
)
31, 2homffn 13921 . . . 4  |-  H  Fn  ( B  X.  B
)
4 fvex 5744 . . . . 5  |-  ( Base `  C )  e.  _V
52, 4eqeltri 2508 . . . 4  |-  B  e. 
_V
6 sscres 14025 . . . 4  |-  ( ( H  Fn  ( B  X.  B )  /\  B  e.  _V )  ->  ( H  |`  ( S  X.  S ) ) 
C_cat  H )
73, 5, 6mp2an 655 . . 3  |-  ( H  |`  ( S  X.  S
) )  C_cat  H
87a1i 11 . 2  |-  ( ph  ->  ( H  |`  ( S  X.  S ) ) 
C_cat  H )
9 eqid 2438 . . . . . 6  |-  (  Hom  `  C )  =  (  Hom  `  C )
10 eqid 2438 . . . . . 6  |-  ( Id
`  C )  =  ( Id `  C
)
11 fullsubc.c . . . . . . 7  |-  ( ph  ->  C  e.  Cat )
1211adantr 453 . . . . . 6  |-  ( (
ph  /\  x  e.  S )  ->  C  e.  Cat )
13 fullsubc.s . . . . . . 7  |-  ( ph  ->  S  C_  B )
1413sselda 3350 . . . . . 6  |-  ( (
ph  /\  x  e.  S )  ->  x  e.  B )
152, 9, 10, 12, 14catidcl 13909 . . . . 5  |-  ( (
ph  /\  x  e.  S )  ->  (
( Id `  C
) `  x )  e.  ( x (  Hom  `  C ) x ) )
16 simpr 449 . . . . . . 7  |-  ( (
ph  /\  x  e.  S )  ->  x  e.  S )
1716, 16ovresd 6216 . . . . . 6  |-  ( (
ph  /\  x  e.  S )  ->  (
x ( H  |`  ( S  X.  S
) ) x )  =  ( x H x ) )
181, 2, 9, 14, 14homfval 13920 . . . . . 6  |-  ( (
ph  /\  x  e.  S )  ->  (
x H x )  =  ( x (  Hom  `  C )
x ) )
1917, 18eqtrd 2470 . . . . 5  |-  ( (
ph  /\  x  e.  S )  ->  (
x ( H  |`  ( S  X.  S
) ) x )  =  ( x (  Hom  `  C )
x ) )
2015, 19eleqtrrd 2515 . . . 4  |-  ( (
ph  /\  x  e.  S )  ->  (
( Id `  C
) `  x )  e.  ( x ( H  |`  ( S  X.  S
) ) x ) )
21 eqid 2438 . . . . . . . . . 10  |-  (comp `  C )  =  (comp `  C )
2212ad3antrrr 712 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  C  e.  Cat )
2314ad3antrrr 712 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  x  e.  B
)
2413adantr 453 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  S )  ->  S  C_  B )
2524sselda 3350 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  y  e.  B )
2625adantr 453 . . . . . . . . . . 11  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  y  e.  B )
2726adantr 453 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  y  e.  B
)
2824adantr 453 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  S  C_  B )
2928sselda 3350 . . . . . . . . . . 11  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  z  e.  B )
3029adantr 453 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  z  e.  B
)
31 simprl 734 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  f  e.  ( x (  Hom  `  C
) y ) )
32 simprr 735 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  g  e.  ( y (  Hom  `  C
) z ) )
332, 9, 21, 22, 23, 27, 30, 31, 32catcocl 13912 . . . . . . . . 9  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  ( g (
<. x ,  y >.
(comp `  C )
z ) f )  e.  ( x (  Hom  `  C )
z ) )
3416ad3antrrr 712 . . . . . . . . . . 11  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  x  e.  S
)
35 simplr 733 . . . . . . . . . . 11  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  z  e.  S
)
3634, 35ovresd 6216 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  ( x ( H  |`  ( S  X.  S ) ) z )  =  ( x H z ) )
371, 2, 9, 23, 30homfval 13920 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  ( x H z )  =  ( x (  Hom  `  C
) z ) )
3836, 37eqtrd 2470 . . . . . . . . 9  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  ( x ( H  |`  ( S  X.  S ) ) z )  =  ( x (  Hom  `  C
) z ) )
3933, 38eleqtrrd 2515 . . . . . . . 8  |-  ( ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  /\  (
f  e.  ( x (  Hom  `  C
) y )  /\  g  e.  ( y
(  Hom  `  C ) z ) ) )  ->  ( g (
<. x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) )
4039ralrimivva 2800 . . . . . . 7  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  A. f  e.  ( x (  Hom  `  C ) y ) A. g  e.  ( y (  Hom  `  C
) z ) ( g ( <. x ,  y >. (comp `  C ) z ) f )  e.  ( x ( H  |`  ( S  X.  S
) ) z ) )
41 simplr 733 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  x  e.  S )
42 simpr 449 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  y  e.  S )
4341, 42ovresd 6216 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  (
x ( H  |`  ( S  X.  S
) ) y )  =  ( x H y ) )
4414adantr 453 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  x  e.  B )
451, 2, 9, 44, 25homfval 13920 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  (
x H y )  =  ( x (  Hom  `  C )
y ) )
4643, 45eqtrd 2470 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  (
x ( H  |`  ( S  X.  S
) ) y )  =  ( x (  Hom  `  C )
y ) )
4746adantr 453 . . . . . . . 8  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  (
x ( H  |`  ( S  X.  S
) ) y )  =  ( x (  Hom  `  C )
y ) )
48 simplr 733 . . . . . . . . . . 11  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  y  e.  S )
49 simpr 449 . . . . . . . . . . 11  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  z  e.  S )
5048, 49ovresd 6216 . . . . . . . . . 10  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  (
y ( H  |`  ( S  X.  S
) ) z )  =  ( y H z ) )
511, 2, 9, 26, 29homfval 13920 . . . . . . . . . 10  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  (
y H z )  =  ( y (  Hom  `  C )
z ) )
5250, 51eqtrd 2470 . . . . . . . . 9  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  (
y ( H  |`  ( S  X.  S
) ) z )  =  ( y (  Hom  `  C )
z ) )
5352raleqdv 2912 . . . . . . . 8  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  ( A. g  e.  (
y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z )  <->  A. g  e.  ( y (  Hom  `  C
) z ) ( g ( <. x ,  y >. (comp `  C ) z ) f )  e.  ( x ( H  |`  ( S  X.  S
) ) z ) ) )
5447, 53raleqbidv 2918 . . . . . . 7  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  ( A. f  e.  (
x ( H  |`  ( S  X.  S
) ) y ) A. g  e.  ( y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z )  <->  A. f  e.  ( x (  Hom  `  C
) y ) A. g  e.  ( y
(  Hom  `  C ) z ) ( g ( <. x ,  y
>. (comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) ) )
5540, 54mpbird 225 . . . . . 6  |-  ( ( ( ( ph  /\  x  e.  S )  /\  y  e.  S
)  /\  z  e.  S )  ->  A. f  e.  ( x ( H  |`  ( S  X.  S
) ) y ) A. g  e.  ( y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) )
5655ralrimiva 2791 . . . . 5  |-  ( ( ( ph  /\  x  e.  S )  /\  y  e.  S )  ->  A. z  e.  S  A. f  e.  ( x ( H  |`  ( S  X.  S
) ) y ) A. g  e.  ( y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) )
5756ralrimiva 2791 . . . 4  |-  ( (
ph  /\  x  e.  S )  ->  A. y  e.  S  A. z  e.  S  A. f  e.  ( x ( H  |`  ( S  X.  S
) ) y ) A. g  e.  ( y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) )
5820, 57jca 520 . . 3  |-  ( (
ph  /\  x  e.  S )  ->  (
( ( Id `  C ) `  x
)  e.  ( x ( H  |`  ( S  X.  S ) ) x )  /\  A. y  e.  S  A. z  e.  S  A. f  e.  ( x
( H  |`  ( S  X.  S ) ) y ) A. g  e.  ( y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) ) )
5958ralrimiva 2791 . 2  |-  ( ph  ->  A. x  e.  S  ( ( ( Id
`  C ) `  x )  e.  ( x ( H  |`  ( S  X.  S
) ) x )  /\  A. y  e.  S  A. z  e.  S  A. f  e.  ( x ( H  |`  ( S  X.  S
) ) y ) A. g  e.  ( y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) ) )
60 xpss12 4983 . . . . 5  |-  ( ( S  C_  B  /\  S  C_  B )  -> 
( S  X.  S
)  C_  ( B  X.  B ) )
6113, 13, 60syl2anc 644 . . . 4  |-  ( ph  ->  ( S  X.  S
)  C_  ( B  X.  B ) )
62 fnssres 5560 . . . 4  |-  ( ( H  Fn  ( B  X.  B )  /\  ( S  X.  S
)  C_  ( B  X.  B ) )  -> 
( H  |`  ( S  X.  S ) )  Fn  ( S  X.  S ) )
633, 61, 62sylancr 646 . . 3  |-  ( ph  ->  ( H  |`  ( S  X.  S ) )  Fn  ( S  X.  S ) )
641, 10, 21, 11, 63issubc2 14038 . 2  |-  ( ph  ->  ( ( H  |`  ( S  X.  S
) )  e.  (Subcat `  C )  <->  ( ( H  |`  ( S  X.  S ) )  C_cat  H  /\  A. x  e.  S  ( ( ( Id
`  C ) `  x )  e.  ( x ( H  |`  ( S  X.  S
) ) x )  /\  A. y  e.  S  A. z  e.  S  A. f  e.  ( x ( H  |`  ( S  X.  S
) ) y ) A. g  e.  ( y ( H  |`  ( S  X.  S
) ) z ) ( g ( <.
x ,  y >.
(comp `  C )
z ) f )  e.  ( x ( H  |`  ( S  X.  S ) ) z ) ) ) ) )
658, 59, 64mpbir2and 890 1  |-  ( ph  ->  ( H  |`  ( S  X.  S ) )  e.  (Subcat `  C
) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 360    = wceq 1653    e. wcel 1726   A.wral 2707   _Vcvv 2958    C_ wss 3322   <.cop 3819   class class class wbr 4214    X. cxp 4878    |` cres 4882    Fn wfn 5451   ` cfv 5456  (class class class)co 6083   Basecbs 13471    Hom chom 13542  compcco 13543   Catccat 13891   Idccid 13892    Homf chomf 13893    C_cat cssc 14009  Subcatcsubc 14011
This theorem is referenced by:  resscat  14051  funcres2c  14100  ressffth  14137  funcsetcres2  14250
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1556  ax-5 1567  ax-17 1627  ax-9 1667  ax-8 1688  ax-13 1728  ax-14 1730  ax-6 1745  ax-7 1750  ax-11 1762  ax-12 1951  ax-ext 2419  ax-rep 4322  ax-sep 4332  ax-nul 4340  ax-pow 4379  ax-pr 4405  ax-un 4703
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 2287  df-mo 2288  df-clab 2425  df-cleq 2431  df-clel 2434  df-nfc 2563  df-ne 2603  df-ral 2712  df-rex 2713  df-reu 2714  df-rmo 2715  df-rab 2716  df-v 2960  df-sbc 3164  df-csb 3254  df-dif 3325  df-un 3327  df-in 3329  df-ss 3336  df-nul 3631  df-if 3742  df-pw 3803  df-sn 3822  df-pr 3823  df-op 3825  df-uni 4018  df-iun 4097  df-br 4215  df-opab 4269  df-mpt 4270  df-id 4500  df-xp 4886  df-rel 4887  df-cnv 4888  df-co 4889  df-dm 4890  df-rn 4891  df-res 4892  df-ima 4893  df-iota 5420  df-fun 5458  df-fn 5459  df-f 5460  df-f1 5461  df-fo 5462  df-f1o 5463  df-fv 5464  df-ov 6086  df-oprab 6087  df-mpt2 6088  df-1st 6351  df-2nd 6352  df-riota 6551  df-pm 7023  df-ixp 7066  df-cat 13895  df-cid 13896  df-homf 13897  df-ssc 14012  df-subc 14014
  Copyright terms: Public domain W3C validator