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

Theorem fucass 14874
Description: Associativity of natural transformation composition. (Contributed by Mario Carneiro, 6-Jan-2017.)
Hypotheses
Ref Expression
fucass.q  |-  Q  =  ( C FuncCat  D )
fucass.n  |-  N  =  ( C Nat  D )
fucass.x  |-  .xb  =  (comp `  Q )
fucass.r  |-  ( ph  ->  R  e.  ( F N G ) )
fucass.s  |-  ( ph  ->  S  e.  ( G N H ) )
fucass.t  |-  ( ph  ->  T  e.  ( H N K ) )
Assertion
Ref Expression
fucass  |-  ( ph  ->  ( ( T (
<. G ,  H >.  .xb 
K ) S ) ( <. F ,  G >. 
.xb  K ) R )  =  ( T ( <. F ,  H >. 
.xb  K ) ( S ( <. F ,  G >.  .xb  H ) R ) ) )

Proof of Theorem fucass
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 eqid 2441 . . . . 5  |-  ( Base `  D )  =  (
Base `  D )
2 eqid 2441 . . . . 5  |-  ( Hom  `  D )  =  ( Hom  `  D )
3 eqid 2441 . . . . 5  |-  (comp `  D )  =  (comp `  D )
4 fucass.r . . . . . . . . . 10  |-  ( ph  ->  R  e.  ( F N G ) )
5 fucass.n . . . . . . . . . . 11  |-  N  =  ( C Nat  D )
65natrcl 14856 . . . . . . . . . 10  |-  ( R  e.  ( F N G )  ->  ( F  e.  ( C  Func  D )  /\  G  e.  ( C  Func  D
) ) )
74, 6syl 16 . . . . . . . . 9  |-  ( ph  ->  ( F  e.  ( C  Func  D )  /\  G  e.  ( C  Func  D ) ) )
87simpld 456 . . . . . . . 8  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
9 funcrcl 14769 . . . . . . . 8  |-  ( F  e.  ( C  Func  D )  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
108, 9syl 16 . . . . . . 7  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
1110simprd 460 . . . . . 6  |-  ( ph  ->  D  e.  Cat )
1211adantr 462 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  D  e.  Cat )
13 eqid 2441 . . . . . . 7  |-  ( Base `  C )  =  (
Base `  C )
14 relfunc 14768 . . . . . . . 8  |-  Rel  ( C  Func  D )
15 1st2ndbr 6622 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  F  e.  ( C  Func  D
) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
1614, 8, 15sylancr 658 . . . . . . 7  |-  ( ph  ->  ( 1st `  F
) ( C  Func  D ) ( 2nd `  F
) )
1713, 1, 16funcf1 14772 . . . . . 6  |-  ( ph  ->  ( 1st `  F
) : ( Base `  C ) --> ( Base `  D ) )
1817ffvelrnda 5840 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  F ) `  x )  e.  (
Base `  D )
)
197simprd 460 . . . . . . . 8  |-  ( ph  ->  G  e.  ( C 
Func  D ) )
20 1st2ndbr 6622 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  G  e.  ( C  Func  D
) )  ->  ( 1st `  G ) ( C  Func  D )
( 2nd `  G
) )
2114, 19, 20sylancr 658 . . . . . . 7  |-  ( ph  ->  ( 1st `  G
) ( C  Func  D ) ( 2nd `  G
) )
2213, 1, 21funcf1 14772 . . . . . 6  |-  ( ph  ->  ( 1st `  G
) : ( Base `  C ) --> ( Base `  D ) )
2322ffvelrnda 5840 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  G ) `  x )  e.  (
Base `  D )
)
24 fucass.t . . . . . . . . . 10  |-  ( ph  ->  T  e.  ( H N K ) )
255natrcl 14856 . . . . . . . . . 10  |-  ( T  e.  ( H N K )  ->  ( H  e.  ( C  Func  D )  /\  K  e.  ( C  Func  D
) ) )
2624, 25syl 16 . . . . . . . . 9  |-  ( ph  ->  ( H  e.  ( C  Func  D )  /\  K  e.  ( C  Func  D ) ) )
2726simpld 456 . . . . . . . 8  |-  ( ph  ->  H  e.  ( C 
Func  D ) )
28 1st2ndbr 6622 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  H  e.  ( C  Func  D
) )  ->  ( 1st `  H ) ( C  Func  D )
( 2nd `  H
) )
2914, 27, 28sylancr 658 . . . . . . 7  |-  ( ph  ->  ( 1st `  H
) ( C  Func  D ) ( 2nd `  H
) )
3013, 1, 29funcf1 14772 . . . . . 6  |-  ( ph  ->  ( 1st `  H
) : ( Base `  C ) --> ( Base `  D ) )
3130ffvelrnda 5840 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  H ) `  x )  e.  (
Base `  D )
)
325, 4nat1st2nd 14857 . . . . . . 7  |-  ( ph  ->  R  e.  ( <.
( 1st `  F
) ,  ( 2nd `  F ) >. N <. ( 1st `  G ) ,  ( 2nd `  G
) >. ) )
3332adantr 462 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  R  e.  ( <. ( 1st `  F
) ,  ( 2nd `  F ) >. N <. ( 1st `  G ) ,  ( 2nd `  G
) >. ) )
34 simpr 458 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  x  e.  ( Base `  C )
)
355, 33, 13, 2, 34natcl 14859 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( R `  x )  e.  ( ( ( 1st `  F
) `  x )
( Hom  `  D ) ( ( 1st `  G
) `  x )
) )
36 fucass.s . . . . . . . 8  |-  ( ph  ->  S  e.  ( G N H ) )
375, 36nat1st2nd 14857 . . . . . . 7  |-  ( ph  ->  S  e.  ( <.
( 1st `  G
) ,  ( 2nd `  G ) >. N <. ( 1st `  H ) ,  ( 2nd `  H
) >. ) )
3837adantr 462 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  S  e.  ( <. ( 1st `  G
) ,  ( 2nd `  G ) >. N <. ( 1st `  H ) ,  ( 2nd `  H
) >. ) )
395, 38, 13, 2, 34natcl 14859 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( S `  x )  e.  ( ( ( 1st `  G
) `  x )
( Hom  `  D ) ( ( 1st `  H
) `  x )
) )
4026simprd 460 . . . . . . . 8  |-  ( ph  ->  K  e.  ( C 
Func  D ) )
41 1st2ndbr 6622 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  K  e.  ( C  Func  D
) )  ->  ( 1st `  K ) ( C  Func  D )
( 2nd `  K
) )
4214, 40, 41sylancr 658 . . . . . . 7  |-  ( ph  ->  ( 1st `  K
) ( C  Func  D ) ( 2nd `  K
) )
4313, 1, 42funcf1 14772 . . . . . 6  |-  ( ph  ->  ( 1st `  K
) : ( Base `  C ) --> ( Base `  D ) )
4443ffvelrnda 5840 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  K ) `  x )  e.  (
Base `  D )
)
455, 24nat1st2nd 14857 . . . . . . 7  |-  ( ph  ->  T  e.  ( <.
( 1st `  H
) ,  ( 2nd `  H ) >. N <. ( 1st `  K ) ,  ( 2nd `  K
) >. ) )
4645adantr 462 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  T  e.  ( <. ( 1st `  H
) ,  ( 2nd `  H ) >. N <. ( 1st `  K ) ,  ( 2nd `  K
) >. ) )
475, 46, 13, 2, 34natcl 14859 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( T `  x )  e.  ( ( ( 1st `  H
) `  x )
( Hom  `  D ) ( ( 1st `  K
) `  x )
) )
481, 2, 3, 12, 18, 23, 31, 35, 39, 44, 47catass 14620 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
( T `  x
) ( <. (
( 1st `  G
) `  x ) ,  ( ( 1st `  H ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( S `
 x ) ) ( <. ( ( 1st `  F ) `  x
) ,  ( ( 1st `  G ) `
 x ) >.
(comp `  D )
( ( 1st `  K
) `  x )
) ( R `  x ) )  =  ( ( T `  x ) ( <.
( ( 1st `  F
) `  x ) ,  ( ( 1st `  H ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( ( S `  x ) ( <. ( ( 1st `  F ) `  x
) ,  ( ( 1st `  G ) `
 x ) >.
(comp `  D )
( ( 1st `  H
) `  x )
) ( R `  x ) ) ) )
49 fucass.q . . . . . 6  |-  Q  =  ( C FuncCat  D )
50 fucass.x . . . . . 6  |-  .xb  =  (comp `  Q )
5136adantr 462 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  S  e.  ( G N H ) )
5224adantr 462 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  T  e.  ( H N K ) )
5349, 5, 13, 3, 50, 51, 52, 34fuccoval 14869 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( T ( <. G ,  H >.  .xb  K ) S ) `  x )  =  ( ( T `
 x ) (
<. ( ( 1st `  G
) `  x ) ,  ( ( 1st `  H ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( S `
 x ) ) )
5453oveq1d 6105 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
( T ( <. G ,  H >.  .xb 
K ) S ) `
 x ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  G ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( R `
 x ) )  =  ( ( ( T `  x ) ( <. ( ( 1st `  G ) `  x
) ,  ( ( 1st `  H ) `
 x ) >.
(comp `  D )
( ( 1st `  K
) `  x )
) ( S `  x ) ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  G ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( R `
 x ) ) )
554adantr 462 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  R  e.  ( F N G ) )
5649, 5, 13, 3, 50, 55, 51, 34fuccoval 14869 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( S ( <. F ,  G >.  .xb  H ) R ) `  x )  =  ( ( S `
 x ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  G ) `  x
) >. (comp `  D
) ( ( 1st `  H ) `  x
) ) ( R `
 x ) ) )
5756oveq2d 6106 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( T `  x )
( <. ( ( 1st `  F ) `  x
) ,  ( ( 1st `  H ) `
 x ) >.
(comp `  D )
( ( 1st `  K
) `  x )
) ( ( S ( <. F ,  G >. 
.xb  H ) R ) `  x ) )  =  ( ( T `  x ) ( <. ( ( 1st `  F ) `  x
) ,  ( ( 1st `  H ) `
 x ) >.
(comp `  D )
( ( 1st `  K
) `  x )
) ( ( S `
 x ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  G ) `  x
) >. (comp `  D
) ( ( 1st `  H ) `  x
) ) ( R `
 x ) ) ) )
5848, 54, 573eqtr4d 2483 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
( T ( <. G ,  H >.  .xb 
K ) S ) `
 x ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  G ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( R `
 x ) )  =  ( ( T `
 x ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  H ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( ( S ( <. F ,  G >.  .xb  H ) R ) `  x ) ) )
5958mpteq2dva 4375 . 2  |-  ( ph  ->  ( x  e.  (
Base `  C )  |->  ( ( ( T ( <. G ,  H >. 
.xb  K ) S ) `  x ) ( <. ( ( 1st `  F ) `  x
) ,  ( ( 1st `  G ) `
 x ) >.
(comp `  D )
( ( 1st `  K
) `  x )
) ( R `  x ) ) )  =  ( x  e.  ( Base `  C
)  |->  ( ( T `
 x ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  H ) `  x
) >. (comp `  D
) ( ( 1st `  K ) `  x
) ) ( ( S ( <. F ,  G >.  .xb  H ) R ) `  x ) ) ) )
6049, 5, 50, 36, 24fuccocl 14870 . . 3  |-  ( ph  ->  ( T ( <. G ,  H >.  .xb 
K ) S )  e.  ( G N K ) )
6149, 5, 13, 3, 50, 4, 60fucco 14868 . 2  |-  ( ph  ->  ( ( T (
<. G ,  H >.  .xb 
K ) S ) ( <. F ,  G >. 
.xb  K ) R )  =  ( x  e.  ( Base `  C
)  |->  ( ( ( T ( <. G ,  H >.  .xb  K ) S ) `  x ) ( <. ( ( 1st `  F ) `  x
) ,  ( ( 1st `  G ) `
 x ) >.
(comp `  D )
( ( 1st `  K
) `  x )
) ( R `  x ) ) ) )
6249, 5, 50, 4, 36fuccocl 14870 . . 3  |-  ( ph  ->  ( S ( <. F ,  G >.  .xb 
H ) R )  e.  ( F N H ) )
6349, 5, 13, 3, 50, 62, 24fucco 14868 . 2  |-  ( ph  ->  ( T ( <. F ,  H >.  .xb 
K ) ( S ( <. F ,  G >. 
.xb  H ) R ) )  =  ( x  e.  ( Base `  C )  |->  ( ( T `  x ) ( <. ( ( 1st `  F ) `  x
) ,  ( ( 1st `  H ) `
 x ) >.
(comp `  D )
( ( 1st `  K
) `  x )
) ( ( S ( <. F ,  G >. 
.xb  H ) R ) `  x ) ) ) )
6459, 61, 633eqtr4d 2483 1  |-  ( ph  ->  ( ( T (
<. G ,  H >.  .xb 
K ) S ) ( <. F ,  G >. 
.xb  K ) R )  =  ( T ( <. F ,  H >. 
.xb  K ) ( S ( <. F ,  G >.  .xb  H ) R ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 369    = wceq 1364    e. wcel 1761   <.cop 3880   class class class wbr 4289    e. cmpt 4347   Rel wrel 4841   ` cfv 5415  (class class class)co 6090   1stc1st 6574   2ndc2nd 6575   Basecbs 14170   Hom chom 14245  compcco 14246   Catccat 14598    Func cfunc 14760   Nat cnat 14847   FuncCat cfuc 14848
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1596  ax-4 1607  ax-5 1675  ax-6 1713  ax-7 1733  ax-8 1763  ax-9 1765  ax-10 1780  ax-11 1785  ax-12 1797  ax-13 1948  ax-ext 2422  ax-rep 4400  ax-sep 4410  ax-nul 4418  ax-pow 4467  ax-pr 4528  ax-un 6371  ax-cnex 9334  ax-resscn 9335  ax-1cn 9336  ax-icn 9337  ax-addcl 9338  ax-addrcl 9339  ax-mulcl 9340  ax-mulrcl 9341  ax-mulcom 9342  ax-addass 9343  ax-mulass 9344  ax-distr 9345  ax-i2m1 9346  ax-1ne0 9347  ax-1rid 9348  ax-rnegex 9349  ax-rrecex 9350  ax-cnre 9351  ax-pre-lttri 9352  ax-pre-lttrn 9353  ax-pre-ltadd 9354  ax-pre-mulgt0 9355
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 961  df-3an 962  df-tru 1367  df-ex 1592  df-nf 1595  df-sb 1706  df-eu 2261  df-mo 2262  df-clab 2428  df-cleq 2434  df-clel 2437  df-nfc 2566  df-ne 2606  df-nel 2607  df-ral 2718  df-rex 2719  df-reu 2720  df-rab 2722  df-v 2972  df-sbc 3184  df-csb 3286  df-dif 3328  df-un 3330  df-in 3332  df-ss 3339  df-pss 3341  df-nul 3635  df-if 3789  df-pw 3859  df-sn 3875  df-pr 3877  df-tp 3879  df-op 3881  df-uni 4089  df-int 4126  df-iun 4170  df-br 4290  df-opab 4348  df-mpt 4349  df-tr 4383  df-eprel 4628  df-id 4632  df-po 4637  df-so 4638  df-fr 4675  df-we 4677  df-ord 4718  df-on 4719  df-lim 4720  df-suc 4721  df-xp 4842  df-rel 4843  df-cnv 4844  df-co 4845  df-dm 4846  df-rn 4847  df-res 4848  df-ima 4849  df-iota 5378  df-fun 5417  df-fn 5418  df-f 5419  df-f1 5420  df-fo 5421  df-f1o 5422  df-fv 5423  df-riota 6049  df-ov 6093  df-oprab 6094  df-mpt2 6095  df-om 6476  df-1st 6576  df-2nd 6577  df-recs 6828  df-rdg 6862  df-1o 6916  df-oadd 6920  df-er 7097  df-map 7212  df-ixp 7260  df-en 7307  df-dom 7308  df-sdom 7309  df-fin 7310  df-pnf 9416  df-mnf 9417  df-xr 9418  df-ltxr 9419  df-le 9420  df-sub 9593  df-neg 9594  df-nn 10319  df-2 10376  df-3 10377  df-4 10378  df-5 10379  df-6 10380  df-7 10381  df-8 10382  df-9 10383  df-10 10384  df-n0 10576  df-z 10643  df-dec 10752  df-uz 10858  df-fz 11434  df-struct 14172  df-ndx 14173  df-slot 14174  df-base 14175  df-hom 14258  df-cco 14259  df-cat 14602  df-func 14764  df-nat 14849  df-fuc 14850
This theorem is referenced by:  fuccatid  14875
  Copyright terms: Public domain W3C validator