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

Theorem funcco 14786
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 2443 . . . . 5  |-  ( Base `  E )  =  (
Base `  E )
4 funcco.h . . . . 5  |-  H  =  ( Hom  `  D
)
5 eqid 2443 . . . . 5  |-  ( Hom  `  E )  =  ( Hom  `  E )
6 eqid 2443 . . . . 5  |-  ( Id
`  D )  =  ( Id `  D
)
7 eqid 2443 . . . . 5  |-  ( Id
`  E )  =  ( Id `  E
)
8 funcco.o . . . . 5  |-  .x.  =  (comp `  D )
9 funcco.O . . . . 5  |-  O  =  (comp `  E )
10 df-br 4298 . . . . . . . 8  |-  ( F ( D  Func  E
) G  <->  <. F ,  G >.  e.  ( D 
Func  E ) )
111, 10sylib 196 . . . . . . 7  |-  ( ph  -> 
<. F ,  G >.  e.  ( D  Func  E
) )
12 funcrcl 14778 . . . . . . 7  |-  ( <. F ,  G >.  e.  ( D  Func  E
)  ->  ( D  e.  Cat  /\  E  e. 
Cat ) )
1311, 12syl 16 . . . . . 6  |-  ( ph  ->  ( D  e.  Cat  /\  E  e.  Cat )
)
1413simpld 459 . . . . 5  |-  ( ph  ->  D  e.  Cat )
1513simprd 463 . . . . 5  |-  ( ph  ->  E  e.  Cat )
162, 3, 4, 5, 6, 7, 8, 9, 14, 15isfunc 14779 . . . 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 210 . . 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 1002 . 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 465 . . . . 5  |-  ( (
ph  /\  x  =  X )  ->  Y  e.  B )
22 funcco.z . . . . . . 7  |-  ( ph  ->  Z  e.  B )
2322ad2antrr 725 . . . . . 6  |-  ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  ->  Z  e.  B )
24 funcco.m . . . . . . . . 9  |-  ( ph  ->  M  e.  ( X H Y ) )
2524ad3antrrr 729 . . . . . . . 8  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  M  e.  ( X H Y ) )
26 simpllr 758 . . . . . . . . 9  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  x  =  X )
27 simplr 754 . . . . . . . . 9  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  y  =  Y )
2826, 27oveq12d 6114 . . . . . . . 8  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  (
x H y )  =  ( X H Y ) )
2925, 28eleqtrrd 2520 . . . . . . 7  |-  ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y
)  /\  z  =  Z )  ->  M  e.  ( x H y ) )
30 funcco.n . . . . . . . . . 10  |-  ( ph  ->  N  e.  ( Y H Z ) )
3130ad4antr 731 . . . . . . . . 9  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  N  e.  ( Y H Z ) )
32 simpllr 758 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  y  =  Y )
33 simplr 754 . . . . . . . . . 10  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  z  =  Z )
3432, 33oveq12d 6114 . . . . . . . . 9  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  (
y H z )  =  ( Y H Z ) )
3531, 34eleqtrrd 2520 . . . . . . . 8  |-  ( ( ( ( ( ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  ->  N  e.  ( y H z ) )
36 simp-5r 768 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  x  =  X )
37 simpllr 758 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  z  =  Z )
3836, 37oveq12d 6114 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
x G z )  =  ( X G Z ) )
39 simp-4r 766 . . . . . . . . . . . . 13  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  y  =  Y )
4036, 39opeq12d 4072 . . . . . . . . . . . 12  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  <. x ,  y >.  =  <. X ,  Y >. )
4140, 37oveq12d 6114 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( <. x ,  y >.  .x.  z )  =  (
<. X ,  Y >.  .x. 
Z ) )
42 simpr 461 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  n  =  N )
43 simplr 754 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  m  =  M )
4441, 42, 43oveq123d 6117 . . . . . . . . . 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 5702 . . . . . . . . 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 5700 . . . . . . . . . . . 12  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( F `  x )  =  ( F `  X ) )
4739fveq2d 5700 . . . . . . . . . . . 12  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( F `  y )  =  ( F `  Y ) )
4846, 47opeq12d 4072 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  <. ( F `  x ) ,  ( F `  y ) >.  =  <. ( F `  X ) ,  ( F `  Y ) >. )
4937fveq2d 5700 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  ( F `  z )  =  ( F `  Z ) )
5048, 49oveq12d 6114 . . . . . . . . . 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 6114 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
y G z )  =  ( Y G Z ) )
5251, 42fveq12d 5702 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
( y G z ) `  n )  =  ( ( Y G Z ) `  N ) )
5336, 39oveq12d 6114 . . . . . . . . . . 11  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
x G y )  =  ( X G Y ) )
5453, 43fveq12d 5702 . . . . . . . . . 10  |-  ( ( ( ( ( (
ph  /\  x  =  X )  /\  y  =  Y )  /\  z  =  Z )  /\  m  =  M )  /\  n  =  N )  ->  (
( x G y ) `  m )  =  ( ( X G Y ) `  M ) )
5550, 52, 54oveq123d 6117 . . . . . . . . 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 2457 . . . . . . . 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 3081 . . . . . . 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 3079 . . . . . 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 3079 . . . . 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 3079 . . . 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 467 . . 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 3079 . 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 15 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 setvar class
Syntax hints:    -> wi 4    /\ wa 369    /\ w3a 965    = wceq 1369    e. wcel 1756   A.wral 2720   <.cop 3888   class class class wbr 4297    X. cxp 4843   -->wf 5419   ` cfv 5423  (class class class)co 6096   1stc1st 6580   2ndc2nd 6581    ^m cmap 7219   X_cixp 7268   Basecbs 14179   Hom chom 14254  compcco 14255   Catccat 14607   Idccid 14608    Func cfunc 14769
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 4408  ax-sep 4418  ax-nul 4426  ax-pow 4475  ax-pr 4536  ax-un 6377
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  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 2573  df-ne 2613  df-ral 2725  df-rex 2726  df-reu 2727  df-rab 2729  df-v 2979  df-sbc 3192  df-csb 3294  df-dif 3336  df-un 3338  df-in 3340  df-ss 3347  df-nul 3643  df-if 3797  df-pw 3867  df-sn 3883  df-pr 3885  df-op 3889  df-uni 4097  df-iun 4178  df-br 4298  df-opab 4356  df-mpt 4357  df-id 4641  df-xp 4851  df-rel 4852  df-cnv 4853  df-co 4854  df-dm 4855  df-rn 4856  df-res 4857  df-ima 4858  df-iota 5386  df-fun 5425  df-fn 5426  df-f 5427  df-f1 5428  df-fo 5429  df-f1o 5430  df-fv 5431  df-ov 6099  df-oprab 6100  df-mpt2 6101  df-map 7221  df-ixp 7269  df-func 14773
This theorem is referenced by:  funcsect  14787  funcoppc  14790  cofucl  14803  funcres  14811  fthsect  14840  fthmon  14842  catcisolem  14979  prfcl  15018  evlfcllem  15036  curf1cl  15043  curf2cl  15046  curfcl  15047  uncfcurf  15054  yonedalem4c  15092
  Copyright terms: Public domain W3C validator