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

Theorem funcco 13761
Description: A functor maps composition in the source category to composition in the target. (Contributed by Mario Carneiro, 2-Jan-2017.)
Hypotheses
Ref Expression
funcco.b  |-  B  =  ( Base `  D
)
funcco.h  |-  H  =  (  Hom  `  D
)
funcco.o  |-  .x.  =  (comp `  D )
funcco.O  |-  O  =  (comp `  E )
funcco.f  |-  ( ph  ->  F ( D  Func  E ) G )
funcco.x  |-  ( ph  ->  X  e.  B )
funcco.y  |-  ( ph  ->  Y  e.  B )
funcco.z  |-  ( ph  ->  Z  e.  B )
funcco.m  |-  ( ph  ->  M  e.  ( X H Y ) )
funcco.n  |-  ( ph  ->  N  e.  ( Y H Z ) )
Assertion
Ref Expression
funcco  |-  ( ph  ->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) )

Proof of Theorem funcco
Dummy variables  m  n  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 funcco.f . . . 4  |-  ( ph  ->  F ( D  Func  E ) G )
2 funcco.b . . . . 5  |-  B  =  ( Base `  D
)
3 eqid 2296 . . . . 5  |-  ( Base `  E )  =  (
Base `  E )
4 funcco.h . . . . 5  |-  H  =  (  Hom  `  D
)
5 eqid 2296 . . . . 5  |-  (  Hom  `  E )  =  (  Hom  `  E )
6 eqid 2296 . . . . 5  |-  ( Id
`  D )  =  ( Id `  D
)
7 eqid 2296 . . . . 5  |-  ( Id
`  E )  =  ( Id `  E
)
8 funcco.o . . . . 5  |-  .x.  =  (comp `  D )
9 funcco.O . . . . 5  |-  O  =  (comp `  E )
10 df-br 4040 . . . . . . . 8  |-  ( F ( D  Func  E
) G  <->  <. F ,  G >.  e.  ( D 
Func  E ) )
111, 10sylib 188 . . . . . . 7  |-  ( ph  -> 
<. F ,  G >.  e.  ( D  Func  E
) )
12 funcrcl 13753 . . . . . . 7  |-  ( <. F ,  G >.  e.  ( D  Func  E
)  ->  ( D  e.  Cat  /\  E  e. 
Cat ) )
1311, 12syl 15 . . . . . 6  |-  ( ph  ->  ( D  e.  Cat  /\  E  e.  Cat )
)
1413simpld 445 . . . . 5  |-  ( ph  ->  D  e.  Cat )
1513simprd 449 . . . . 5  |-  ( ph  ->  E  e.  Cat )
162, 3, 4, 5, 6, 7, 8, 9, 14, 15isfunc 13754 . . . 4  |-  ( ph  ->  ( F ( D 
Func  E ) G  <->  ( F : B --> ( Base `  E
)  /\  G  e.  X_ z  e.  ( B  X.  B ) ( ( ( F `  ( 1st `  z ) ) (  Hom  `  E
) ( F `  ( 2nd `  z ) ) )  ^m  ( H `  z )
)  /\  A. x  e.  B  ( (
( x G x ) `  ( ( Id `  D ) `
 x ) )  =  ( ( Id
`  E ) `  ( F `  x ) )  /\  A. y  e.  B  A. z  e.  B  A. m  e.  ( x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  ( n ( <.
x ,  y >.  .x.  z ) m ) )  =  ( ( ( y G z ) `  n ) ( <. ( F `  x ) ,  ( F `  y )
>. O ( F `  z ) ) ( ( x G y ) `  m ) ) ) ) ) )
171, 16mpbid 201 . . 3  |-  ( ph  ->  ( F : B --> ( Base `  E )  /\  G  e.  X_ z  e.  ( B  X.  B
) ( ( ( F `  ( 1st `  z ) ) (  Hom  `  E )
( F `  ( 2nd `  z ) ) )  ^m  ( H `
 z ) )  /\  A. x  e.  B  ( ( ( x G x ) `
 ( ( Id
`  D ) `  x ) )  =  ( ( Id `  E ) `  ( F `  x )
)  /\  A. y  e.  B  A. z  e.  B  A. m  e.  ( x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  ( n ( <.
x ,  y >.  .x.  z ) m ) )  =  ( ( ( y G z ) `  n ) ( <. ( F `  x ) ,  ( F `  y )
>. O ( F `  z ) ) ( ( x G y ) `  m ) ) ) ) )
1817simp3d 969 . 2  |-  ( ph  ->  A. x  e.  B  ( ( ( x G x ) `  ( ( Id `  D ) `  x
) )  =  ( ( Id `  E
) `  ( F `  x ) )  /\  A. y  e.  B  A. z  e.  B  A. m  e.  ( x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  ( n ( <. x ,  y
>.  .x.  z ) m ) )  =  ( ( ( y G z ) `  n
) ( <. ( F `  x ) ,  ( F `  y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) ) ) )
19 funcco.x . . 3  |-  ( ph  ->  X  e.  B )
20 funcco.y . . . . . 6  |-  ( ph  ->  Y  e.  B )
2120adantr 451 . . . . 5  |-  ( (
ph  /\  x  =  X )  ->  Y  e.  B )
22 funcco.z . . . . . . 7  |-  ( ph  ->  Z  e.  B )
2322ad2antrr 706 . . . . . 6  |-  ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  ->  Z  e.  B )
24 funcco.m . . . . . . . . 9  |-  ( ph  ->  M  e.  ( X H Y ) )
2524ad3antrrr 710 . . . . . . . 8  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  M  e.  ( X H Y ) )
26 simpllr 735 . . . . . . . . 9  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  x  =  X )
27 simplr 731 . . . . . . . . 9  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  y  =  Y )
2826, 27oveq12d 5892 . . . . . . . 8  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  (
x H y )  =  ( X H Y ) )
2925, 28eleqtrrd 2373 . . . . . . 7  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  M  e.  ( x H y ) )
30 funcco.n . . . . . . . . . 10  |-  ( ph  ->  N  e.  ( Y H Z ) )
3130ad4antr 712 . . . . . . . . 9  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  N  e.  ( Y H Z ) )
32 simpllr 735 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  y  =  Y )
33 simplr 731 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  z  =  Z )
3432, 33oveq12d 5892 . . . . . . . . 9  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  (
y H z )  =  ( Y H Z ) )
3531, 34eleqtrrd 2373 . . . . . . . 8  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  N  e.  ( y H z ) )
36 simp-5r 745 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  x  =  X )
37 simpllr 735 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  z  =  Z )
3836, 37oveq12d 5892 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
x G z )  =  ( X G Z ) )
39 simp-4r 743 . . . . . . . . . . . . 13  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  y  =  Y )
4036, 39opeq12d 3820 . . . . . . . . . . . 12  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  <. x ,  y >.  =  <. X ,  Y >. )
4140, 37oveq12d 5892 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( <. x ,  y >.  .x.  z )  =  (
<. X ,  Y >.  .x. 
Z ) )
42 simpr 447 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  n  =  N )
43 simplr 731 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  m  =  M )
4441, 42, 43oveq123d 5895 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
n ( <. x ,  y >.  .x.  z
) m )  =  ( N ( <. X ,  Y >.  .x. 
Z ) M ) )
4538, 44fveq12d 5547 . . . . . . . . 9  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
( x G z ) `  ( n ( <. x ,  y
>.  .x.  z ) m ) )  =  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) ) )
4636fveq2d 5545 . . . . . . . . . . . 12  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( F `  x )  =  ( F `  X ) )
4739fveq2d 5545 . . . . . . . . . . . 12  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( F `  y )  =  ( F `  Y ) )
4846, 47opeq12d 3820 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  <. ( F `  x ) ,  ( F `  y ) >.  =  <. ( F `  X ) ,  ( F `  Y ) >. )
4937fveq2d 5545 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( F `  z )  =  ( F `  Z ) )
5048, 49oveq12d 5892 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( <. ( F `  x
) ,  ( F `
 y ) >. O ( F `  z ) )  =  ( <. ( F `  X ) ,  ( F `  Y )
>. O ( F `  Z ) ) )
5139, 37oveq12d 5892 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
y G z )  =  ( Y G Z ) )
5251, 42fveq12d 5547 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
( y G z ) `  n )  =  ( ( Y G Z ) `  N ) )
5336, 39oveq12d 5892 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
x G y )  =  ( X G Y ) )
5453, 43fveq12d 5547 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
( x G y ) `  m )  =  ( ( X G Y ) `  M ) )
5550, 52, 54oveq123d 5895 . . . . . . . . 9  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
( ( y G z ) `  n
) ( <. ( F `  x ) ,  ( F `  y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) )
5645, 55eqeq12d 2310 . . . . . . . 8  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
( ( x G z ) `  (
n ( <. x ,  y >.  .x.  z
) m ) )  =  ( ( ( y G z ) `
 n ) (
<. ( F `  x
) ,  ( F `
 y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) )  <->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) ) )
5735, 56rspcdv 2900 . . . . . . 7  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  ( A. n  e.  (
y H z ) ( ( x G z ) `  (
n ( <. x ,  y >.  .x.  z
) m ) )  =  ( ( ( y G z ) `
 n ) (
<. ( F `  x
) ,  ( F `
 y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) )  ->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) ) )
5829, 57rspcimdv 2898 . . . . . 6  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  ( A. m  e.  (
x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  (
n ( <. x ,  y >.  .x.  z
) m ) )  =  ( ( ( y G z ) `
 n ) (
<. ( F `  x
) ,  ( F `
 y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) )  ->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) ) )
5923, 58rspcimdv 2898 . . . . 5  |-  ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  ->  ( A. z  e.  B  A. m  e.  (
x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  (
n ( <. x ,  y >.  .x.  z
) m ) )  =  ( ( ( y G z ) `
 n ) (
<. ( F `  x
) ,  ( F `
 y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) )  ->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) ) )
6021, 59rspcimdv 2898 . . . 4  |-  ( (
ph  /\  x  =  X )  ->  ( A. y  e.  B  A. z  e.  B  A. m  e.  (
x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  (
n ( <. x ,  y >.  .x.  z
) m ) )  =  ( ( ( y G z ) `
 n ) (
<. ( F `  x
) ,  ( F `
 y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) )  ->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) ) )
6160adantld 453 . . 3  |-  ( (
ph  /\  x  =  X )  ->  (
( ( ( x G x ) `  ( ( Id `  D ) `  x
) )  =  ( ( Id `  E
) `  ( F `  x ) )  /\  A. y  e.  B  A. z  e.  B  A. m  e.  ( x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  ( n ( <. x ,  y
>.  .x.  z ) m ) )  =  ( ( ( y G z ) `  n
) ( <. ( F `  x ) ,  ( F `  y ) >. O ( F `  z ) ) ( ( x G y ) `  m ) ) )  ->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) ) )
6219, 61rspcimdv 2898 . 2  |-  ( ph  ->  ( A. x  e.  B  ( ( ( x G x ) `
 ( ( Id
`  D ) `  x ) )  =  ( ( Id `  E ) `  ( F `  x )
)  /\  A. y  e.  B  A. z  e.  B  A. m  e.  ( x H y ) A. n  e.  ( y H z ) ( ( x G z ) `  ( n ( <.
x ,  y >.  .x.  z ) m ) )  =  ( ( ( y G z ) `  n ) ( <. ( F `  x ) ,  ( F `  y )
>. O ( F `  z ) ) ( ( x G y ) `  m ) ) )  ->  (
( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N
) ( <. ( F `  X ) ,  ( F `  Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) ) )
6318, 62mpd 14 1  |-  ( ph  ->  ( ( X G Z ) `  ( N ( <. X ,  Y >.  .x.  Z ) M ) )  =  ( ( ( Y G Z ) `  N ) ( <.
( F `  X
) ,  ( F `
 Y ) >. O ( F `  Z ) ) ( ( X G Y ) `  M ) ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 358    /\ w3a 934    = wceq 1632    e. wcel 1696   A.wral 2556   <.cop 3656   class class class wbr 4039    X. cxp 4703   -->wf 5267   ` cfv 5271  (class class class)co 5874   1stc1st 6136   2ndc2nd 6137    ^m cmap 6788   X_cixp 6833   Basecbs 13164    Hom chom 13235  compcco 13236   Catccat 13582   Idccid 13583    Func cfunc 13744
This theorem is referenced by:  funcsect  13762  funcoppc  13765  cofucl  13778  funcres  13786  fthsect  13815  fthmon  13817  catcisolem  13954  prfcl  13993  evlfcllem  14011  curf1cl  14018  curf2cl  14021  curfcl  14022  uncfcurf  14029  yonedalem4c  14067
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1536  ax-5 1547  ax-17 1606  ax-9 1644  ax-8 1661  ax-13 1698  ax-14 1700  ax-6 1715  ax-7 1720  ax-11 1727  ax-12 1878  ax-ext 2277  ax-rep 4147  ax-sep 4157  ax-nul 4165  ax-pow 4204  ax-pr 4230  ax-un 4528
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3an 936  df-tru 1310  df-ex 1532  df-nf 1535  df-sb 1639  df-eu 2160  df-mo 2161  df-clab 2283  df-cleq 2289  df-clel 2292  df-nfc 2421  df-ne 2461  df-ral 2561  df-rex 2562  df-reu 2563  df-rab 2565  df-v 2803  df-sbc 3005  df-csb 3095  df-dif 3168  df-un 3170  df-in 3172  df-ss 3179  df-nul 3469  df-if 3579  df-pw 3640  df-sn 3659  df-pr 3660  df-op 3662  df-uni 3844  df-iun 3923  df-br 4040  df-opab 4094  df-mpt 4095  df-id 4325  df-xp 4711  df-rel 4712  df-cnv 4713  df-co 4714  df-dm 4715  df-rn 4716  df-res 4717  df-ima 4718  df-iota 5235  df-fun 5273  df-fn 5274  df-f 5275  df-f1 5276  df-fo 5277  df-f1o 5278  df-fv 5279  df-ov 5877  df-oprab 5878  df-mpt2 5879  df-map 6790  df-ixp 6834  df-func 13748
  Copyright terms: Public domain W3C validator