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

Theorem fucass 15206
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 15188 . . . . . . . . . 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 459 . . . . . . . 8  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
9 funcrcl 15101 . . . . . . . 8  |-  ( F  e.  ( C  Func  D )  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
108, 9syl 16 . . . . . . 7  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
1110simprd 463 . . . . . 6  |-  ( ph  ->  D  e.  Cat )
1211adantr 465 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  D  e.  Cat )
13 eqid 2441 . . . . . . 7  |-  ( Base `  C )  =  (
Base `  C )
14 relfunc 15100 . . . . . . . 8  |-  Rel  ( C  Func  D )
15 1st2ndbr 6830 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  F  e.  ( C  Func  D
) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
1614, 8, 15sylancr 663 . . . . . . 7  |-  ( ph  ->  ( 1st `  F
) ( C  Func  D ) ( 2nd `  F
) )
1713, 1, 16funcf1 15104 . . . . . 6  |-  ( ph  ->  ( 1st `  F
) : ( Base `  C ) --> ( Base `  D ) )
1817ffvelrnda 6012 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  F ) `  x )  e.  (
Base `  D )
)
197simprd 463 . . . . . . . 8  |-  ( ph  ->  G  e.  ( C 
Func  D ) )
20 1st2ndbr 6830 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  G  e.  ( C  Func  D
) )  ->  ( 1st `  G ) ( C  Func  D )
( 2nd `  G
) )
2114, 19, 20sylancr 663 . . . . . . 7  |-  ( ph  ->  ( 1st `  G
) ( C  Func  D ) ( 2nd `  G
) )
2213, 1, 21funcf1 15104 . . . . . 6  |-  ( ph  ->  ( 1st `  G
) : ( Base `  C ) --> ( Base `  D ) )
2322ffvelrnda 6012 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  G ) `  x )  e.  (
Base `  D )
)
24 fucass.t . . . . . . . . . 10  |-  ( ph  ->  T  e.  ( H N K ) )
255natrcl 15188 . . . . . . . . . 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 459 . . . . . . . 8  |-  ( ph  ->  H  e.  ( C 
Func  D ) )
28 1st2ndbr 6830 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  H  e.  ( C  Func  D
) )  ->  ( 1st `  H ) ( C  Func  D )
( 2nd `  H
) )
2914, 27, 28sylancr 663 . . . . . . 7  |-  ( ph  ->  ( 1st `  H
) ( C  Func  D ) ( 2nd `  H
) )
3013, 1, 29funcf1 15104 . . . . . 6  |-  ( ph  ->  ( 1st `  H
) : ( Base `  C ) --> ( Base `  D ) )
3130ffvelrnda 6012 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  H ) `  x )  e.  (
Base `  D )
)
325, 4nat1st2nd 15189 . . . . . . 7  |-  ( ph  ->  R  e.  ( <.
( 1st `  F
) ,  ( 2nd `  F ) >. N <. ( 1st `  G ) ,  ( 2nd `  G
) >. ) )
3332adantr 465 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  R  e.  ( <. ( 1st `  F
) ,  ( 2nd `  F ) >. N <. ( 1st `  G ) ,  ( 2nd `  G
) >. ) )
34 simpr 461 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  x  e.  ( Base `  C )
)
355, 33, 13, 2, 34natcl 15191 . . . . 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 15189 . . . . . . 7  |-  ( ph  ->  S  e.  ( <.
( 1st `  G
) ,  ( 2nd `  G ) >. N <. ( 1st `  H ) ,  ( 2nd `  H
) >. ) )
3837adantr 465 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  S  e.  ( <. ( 1st `  G
) ,  ( 2nd `  G ) >. N <. ( 1st `  H ) ,  ( 2nd `  H
) >. ) )
395, 38, 13, 2, 34natcl 15191 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( S `  x )  e.  ( ( ( 1st `  G
) `  x )
( Hom  `  D ) ( ( 1st `  H
) `  x )
) )
4026simprd 463 . . . . . . . 8  |-  ( ph  ->  K  e.  ( C 
Func  D ) )
41 1st2ndbr 6830 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  K  e.  ( C  Func  D
) )  ->  ( 1st `  K ) ( C  Func  D )
( 2nd `  K
) )
4214, 40, 41sylancr 663 . . . . . . 7  |-  ( ph  ->  ( 1st `  K
) ( C  Func  D ) ( 2nd `  K
) )
4313, 1, 42funcf1 15104 . . . . . 6  |-  ( ph  ->  ( 1st `  K
) : ( Base `  C ) --> ( Base `  D ) )
4443ffvelrnda 6012 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  K ) `  x )  e.  (
Base `  D )
)
455, 24nat1st2nd 15189 . . . . . . 7  |-  ( ph  ->  T  e.  ( <.
( 1st `  H
) ,  ( 2nd `  H ) >. N <. ( 1st `  K ) ,  ( 2nd `  K
) >. ) )
4645adantr 465 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  T  e.  ( <. ( 1st `  H
) ,  ( 2nd `  H ) >. N <. ( 1st `  K ) ,  ( 2nd `  K
) >. ) )
475, 46, 13, 2, 34natcl 15191 . . . . 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 14955 . . . 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 465 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  S  e.  ( G N H ) )
5224adantr 465 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  T  e.  ( H N K ) )
5349, 5, 13, 3, 50, 51, 52, 34fuccoval 15201 . . . . 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 6292 . . . 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 465 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  R  e.  ( F N G ) )
5649, 5, 13, 3, 50, 55, 51, 34fuccoval 15201 . . . . 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 6293 . . . 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 2492 . . 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 4519 . 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 15202 . . 3  |-  ( ph  ->  ( T ( <. G ,  H >.  .xb 
K ) S )  e.  ( G N K ) )
6149, 5, 13, 3, 50, 4, 60fucco 15200 . 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 15202 . . 3  |-  ( ph  ->  ( S ( <. F ,  G >.  .xb 
H ) R )  e.  ( F N H ) )
6349, 5, 13, 3, 50, 62, 24fucco 15200 . 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 2492 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 1381    e. wcel 1802   <.cop 4016   class class class wbr 4433    |-> cmpt 4491   Rel wrel 4990   ` cfv 5574  (class class class)co 6277   1stc1st 6779   2ndc2nd 6780   Basecbs 14504   Hom chom 14580  compcco 14581   Catccat 14933    Func cfunc 15092   Nat cnat 15179   FuncCat cfuc 15180
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1603  ax-4 1616  ax-5 1689  ax-6 1732  ax-7 1774  ax-8 1804  ax-9 1806  ax-10 1821  ax-11 1826  ax-12 1838  ax-13 1983  ax-ext 2419  ax-rep 4544  ax-sep 4554  ax-nul 4562  ax-pow 4611  ax-pr 4672  ax-un 6573  ax-cnex 9546  ax-resscn 9547  ax-1cn 9548  ax-icn 9549  ax-addcl 9550  ax-addrcl 9551  ax-mulcl 9552  ax-mulrcl 9553  ax-mulcom 9554  ax-addass 9555  ax-mulass 9556  ax-distr 9557  ax-i2m1 9558  ax-1ne0 9559  ax-1rid 9560  ax-rnegex 9561  ax-rrecex 9562  ax-cnre 9563  ax-pre-lttri 9564  ax-pre-lttrn 9565  ax-pre-ltadd 9566  ax-pre-mulgt0 9567
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 973  df-3an 974  df-tru 1384  df-ex 1598  df-nf 1602  df-sb 1725  df-eu 2270  df-mo 2271  df-clab 2427  df-cleq 2433  df-clel 2436  df-nfc 2591  df-ne 2638  df-nel 2639  df-ral 2796  df-rex 2797  df-reu 2798  df-rab 2800  df-v 3095  df-sbc 3312  df-csb 3418  df-dif 3461  df-un 3463  df-in 3465  df-ss 3472  df-pss 3474  df-nul 3768  df-if 3923  df-pw 3995  df-sn 4011  df-pr 4013  df-tp 4015  df-op 4017  df-uni 4231  df-int 4268  df-iun 4313  df-br 4434  df-opab 4492  df-mpt 4493  df-tr 4527  df-eprel 4777  df-id 4781  df-po 4786  df-so 4787  df-fr 4824  df-we 4826  df-ord 4867  df-on 4868  df-lim 4869  df-suc 4870  df-xp 4991  df-rel 4992  df-cnv 4993  df-co 4994  df-dm 4995  df-rn 4996  df-res 4997  df-ima 4998  df-iota 5537  df-fun 5576  df-fn 5577  df-f 5578  df-f1 5579  df-fo 5580  df-f1o 5581  df-fv 5582  df-riota 6238  df-ov 6280  df-oprab 6281  df-mpt2 6282  df-om 6682  df-1st 6781  df-2nd 6782  df-recs 7040  df-rdg 7074  df-1o 7128  df-oadd 7132  df-er 7309  df-map 7420  df-ixp 7468  df-en 7515  df-dom 7516  df-sdom 7517  df-fin 7518  df-pnf 9628  df-mnf 9629  df-xr 9630  df-ltxr 9631  df-le 9632  df-sub 9807  df-neg 9808  df-nn 10538  df-2 10595  df-3 10596  df-4 10597  df-5 10598  df-6 10599  df-7 10600  df-8 10601  df-9 10602  df-10 10603  df-n0 10797  df-z 10866  df-dec 10980  df-uz 11086  df-fz 11677  df-struct 14506  df-ndx 14507  df-slot 14508  df-base 14509  df-hom 14593  df-cco 14594  df-cat 14937  df-func 15096  df-nat 15181  df-fuc 15182
This theorem is referenced by:  fuccatid  15207
  Copyright terms: Public domain W3C validator