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

Theorem cofucl 14087
Description: The composition of two functors is a functor. (Contributed by Mario Carneiro, 3-Jan-2017.)
Hypotheses
Ref Expression
cofucl.f  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
cofucl.g  |-  ( ph  ->  G  e.  ( D 
Func  E ) )
Assertion
Ref Expression
cofucl  |-  ( ph  ->  ( G  o.func  F )  e.  ( C  Func  E
) )

Proof of Theorem cofucl
Dummy variables  f 
g  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2438 . . . 4  |-  ( Base `  C )  =  (
Base `  C )
2 cofucl.f . . . 4  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
3 cofucl.g . . . 4  |-  ( ph  ->  G  e.  ( D 
Func  E ) )
41, 2, 3cofuval 14081 . . 3  |-  ( ph  ->  ( G  o.func  F )  =  <. ( ( 1st `  G )  o.  ( 1st `  F ) ) ,  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) ) >. )
51, 2, 3cofu1st 14082 . . . 4  |-  ( ph  ->  ( 1st `  ( G  o.func 
F ) )  =  ( ( 1st `  G
)  o.  ( 1st `  F ) ) )
64fveq2d 5734 . . . . 5  |-  ( ph  ->  ( 2nd `  ( G  o.func 
F ) )  =  ( 2nd `  <. ( ( 1st `  G
)  o.  ( 1st `  F ) ) ,  ( x  e.  (
Base `  C ) ,  y  e.  ( Base `  C )  |->  ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) ) >. ) )
7 fvex 5744 . . . . . . 7  |-  ( 1st `  G )  e.  _V
8 fvex 5744 . . . . . . 7  |-  ( 1st `  F )  e.  _V
97, 8coex 5415 . . . . . 6  |-  ( ( 1st `  G )  o.  ( 1st `  F
) )  e.  _V
10 fvex 5744 . . . . . . 7  |-  ( Base `  C )  e.  _V
1110, 10mpt2ex 6427 . . . . . 6  |-  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) )  e.  _V
129, 11op2nd 6358 . . . . 5  |-  ( 2nd `  <. ( ( 1st `  G )  o.  ( 1st `  F ) ) ,  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) ) >. )  =  ( x  e.  ( Base `  C ) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) )
136, 12syl6eq 2486 . . . 4  |-  ( ph  ->  ( 2nd `  ( G  o.func 
F ) )  =  ( x  e.  (
Base `  C ) ,  y  e.  ( Base `  C )  |->  ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) ) )
145, 13opeq12d 3994 . . 3  |-  ( ph  -> 
<. ( 1st `  ( G  o.func 
F ) ) ,  ( 2nd `  ( G  o.func 
F ) ) >.  =  <. ( ( 1st `  G )  o.  ( 1st `  F ) ) ,  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) ) >. )
154, 14eqtr4d 2473 . 2  |-  ( ph  ->  ( G  o.func  F )  =  <. ( 1st `  ( G  o.func 
F ) ) ,  ( 2nd `  ( G  o.func 
F ) ) >.
)
16 eqid 2438 . . . . . . 7  |-  ( Base `  D )  =  (
Base `  D )
17 eqid 2438 . . . . . . 7  |-  ( Base `  E )  =  (
Base `  E )
18 relfunc 14061 . . . . . . . 8  |-  Rel  ( D  Func  E )
19 1st2ndbr 6398 . . . . . . . 8  |-  ( ( Rel  ( D  Func  E )  /\  G  e.  ( D  Func  E
) )  ->  ( 1st `  G ) ( D  Func  E )
( 2nd `  G
) )
2018, 3, 19sylancr 646 . . . . . . 7  |-  ( ph  ->  ( 1st `  G
) ( D  Func  E ) ( 2nd `  G
) )
2116, 17, 20funcf1 14065 . . . . . 6  |-  ( ph  ->  ( 1st `  G
) : ( Base `  D ) --> ( Base `  E ) )
22 relfunc 14061 . . . . . . . 8  |-  Rel  ( C  Func  D )
23 1st2ndbr 6398 . . . . . . . 8  |-  ( ( Rel  ( C  Func  D )  /\  F  e.  ( C  Func  D
) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
2422, 2, 23sylancr 646 . . . . . . 7  |-  ( ph  ->  ( 1st `  F
) ( C  Func  D ) ( 2nd `  F
) )
251, 16, 24funcf1 14065 . . . . . 6  |-  ( ph  ->  ( 1st `  F
) : ( Base `  C ) --> ( Base `  D ) )
26 fco 5602 . . . . . 6  |-  ( ( ( 1st `  G
) : ( Base `  D ) --> ( Base `  E )  /\  ( 1st `  F ) : ( Base `  C
) --> ( Base `  D
) )  ->  (
( 1st `  G
)  o.  ( 1st `  F ) ) : ( Base `  C
) --> ( Base `  E
) )
2721, 25, 26syl2anc 644 . . . . 5  |-  ( ph  ->  ( ( 1st `  G
)  o.  ( 1st `  F ) ) : ( Base `  C
) --> ( Base `  E
) )
285feq1d 5582 . . . . 5  |-  ( ph  ->  ( ( 1st `  ( G  o.func 
F ) ) : ( Base `  C
) --> ( Base `  E
)  <->  ( ( 1st `  G )  o.  ( 1st `  F ) ) : ( Base `  C
) --> ( Base `  E
) ) )
2927, 28mpbird 225 . . . 4  |-  ( ph  ->  ( 1st `  ( G  o.func 
F ) ) : ( Base `  C
) --> ( Base `  E
) )
30 eqid 2438 . . . . . . 7  |-  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) )  =  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) )
31 ovex 6108 . . . . . . . 8  |-  ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  e.  _V
32 ovex 6108 . . . . . . . 8  |-  ( x ( 2nd `  F
) y )  e. 
_V
3331, 32coex 5415 . . . . . . 7  |-  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) )  e.  _V
3430, 33fnmpt2i 6422 . . . . . 6  |-  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) )  Fn  ( (
Base `  C )  X.  ( Base `  C
) )
3513fneq1d 5538 . . . . . 6  |-  ( ph  ->  ( ( 2nd `  ( G  o.func 
F ) )  Fn  ( ( Base `  C
)  X.  ( Base `  C ) )  <->  ( x  e.  ( Base `  C
) ,  y  e.  ( Base `  C
)  |->  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) )  Fn  ( (
Base `  C )  X.  ( Base `  C
) ) ) )
3634, 35mpbiri 226 . . . . 5  |-  ( ph  ->  ( 2nd `  ( G  o.func 
F ) )  Fn  ( ( Base `  C
)  X.  ( Base `  C ) ) )
37 eqid 2438 . . . . . . . . . . 11  |-  (  Hom  `  D )  =  (  Hom  `  D )
38 eqid 2438 . . . . . . . . . . 11  |-  (  Hom  `  E )  =  (  Hom  `  E )
3920adantr 453 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( 1st `  G ) ( D  Func  E )
( 2nd `  G
) )
4025adantr 453 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( 1st `  F ) : ( Base `  C
) --> ( Base `  D
) )
41 simprl 734 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  x  e.  ( Base `  C
) )
4240, 41ffvelrnd 5873 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( 1st `  F
) `  x )  e.  ( Base `  D
) )
43 simprr 735 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  y  e.  ( Base `  C
) )
4440, 43ffvelrnd 5873 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( 1st `  F
) `  y )  e.  ( Base `  D
) )
4516, 37, 38, 39, 42, 44funcf2 14067 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) ) : ( ( ( 1st `  F
) `  x )
(  Hom  `  D ) ( ( 1st `  F
) `  y )
) --> ( ( ( 1st `  G ) `
 ( ( 1st `  F ) `  x
) ) (  Hom  `  E ) ( ( 1st `  G ) `
 ( ( 1st `  F ) `  y
) ) ) )
46 eqid 2438 . . . . . . . . . . 11  |-  (  Hom  `  C )  =  (  Hom  `  C )
4724adantr 453 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
481, 46, 37, 47, 41, 43funcf2 14067 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
x ( 2nd `  F
) y ) : ( x (  Hom  `  C ) y ) --> ( ( ( 1st `  F ) `  x
) (  Hom  `  D
) ( ( 1st `  F ) `  y
) ) )
49 fco 5602 . . . . . . . . . 10  |-  ( ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) ) : ( ( ( 1st `  F
) `  x )
(  Hom  `  D ) ( ( 1st `  F
) `  y )
) --> ( ( ( 1st `  G ) `
 ( ( 1st `  F ) `  x
) ) (  Hom  `  E ) ( ( 1st `  G ) `
 ( ( 1st `  F ) `  y
) ) )  /\  ( x ( 2nd `  F ) y ) : ( x (  Hom  `  C )
y ) --> ( ( ( 1st `  F
) `  x )
(  Hom  `  D ) ( ( 1st `  F
) `  y )
) )  ->  (
( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) : ( x (  Hom  `  C )
y ) --> ( ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) (  Hom  `  E )
( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) ) )
5045, 48, 49syl2anc 644 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) : ( x (  Hom  `  C )
y ) --> ( ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) (  Hom  `  E )
( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) ) )
51 ovex 6108 . . . . . . . . . 10  |-  ( ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) (  Hom  `  E )
( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) )  e.  _V
52 ovex 6108 . . . . . . . . . 10  |-  ( x (  Hom  `  C
) y )  e. 
_V
5351, 52elmap 7044 . . . . . . . . 9  |-  ( ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) )  e.  ( ( ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) (  Hom  `  E )
( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) )  ^m  ( x (  Hom  `  C )
y ) )  <->  ( (
( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) : ( x (  Hom  `  C )
y ) --> ( ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) (  Hom  `  E )
( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) ) )
5450, 53sylibr 205 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) )  e.  ( ( ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) (  Hom  `  E )
( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) )  ^m  ( x (  Hom  `  C )
y ) ) )
552adantr 453 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  F  e.  ( C  Func  D
) )
563adantr 453 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  G  e.  ( D  Func  E
) )
571, 55, 56, 41, 43cofu2nd 14084 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
x ( 2nd `  ( G  o.func 
F ) ) y )  =  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  y
) )  o.  (
x ( 2nd `  F
) y ) ) )
581, 55, 56, 41cofu1 14083 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( 1st `  ( G  o.func 
F ) ) `  x )  =  ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) )
591, 55, 56, 43cofu1 14083 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( 1st `  ( G  o.func 
F ) ) `  y )  =  ( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) )
6058, 59oveq12d 6101 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( ( 1st `  ( G  o.func 
F ) ) `  x ) (  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) )  =  ( ( ( 1st `  G ) `  (
( 1st `  F
) `  x )
) (  Hom  `  E
) ( ( 1st `  G ) `  (
( 1st `  F
) `  y )
) ) )
6160oveq1d 6098 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
( ( ( 1st `  ( G  o.func  F )
) `  x )
(  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) )  ^m  ( x (  Hom  `  C ) y ) )  =  ( ( ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) (  Hom  `  E )
( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) )  ^m  ( x (  Hom  `  C )
y ) ) )
6254, 57, 613eltr4d 2519 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
x ( 2nd `  ( G  o.func 
F ) ) y )  e.  ( ( ( ( 1st `  ( G  o.func 
F ) ) `  x ) (  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) )  ^m  ( x (  Hom  `  C ) y ) ) )
6362ralrimivva 2800 . . . . . 6  |-  ( ph  ->  A. x  e.  (
Base `  C ) A. y  e.  ( Base `  C ) ( x ( 2nd `  ( G  o.func 
F ) ) y )  e.  ( ( ( ( 1st `  ( G  o.func 
F ) ) `  x ) (  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) )  ^m  ( x (  Hom  `  C ) y ) ) )
64 fveq2 5730 . . . . . . . . 9  |-  ( z  =  <. x ,  y
>.  ->  ( ( 2nd `  ( G  o.func  F )
) `  z )  =  ( ( 2nd `  ( G  o.func  F )
) `  <. x ,  y >. ) )
65 df-ov 6086 . . . . . . . . 9  |-  ( x ( 2nd `  ( G  o.func 
F ) ) y )  =  ( ( 2nd `  ( G  o.func 
F ) ) `  <. x ,  y >.
)
6664, 65syl6eqr 2488 . . . . . . . 8  |-  ( z  =  <. x ,  y
>.  ->  ( ( 2nd `  ( G  o.func  F )
) `  z )  =  ( x ( 2nd `  ( G  o.func 
F ) ) y ) )
67 vex 2961 . . . . . . . . . . . 12  |-  x  e. 
_V
68 vex 2961 . . . . . . . . . . . 12  |-  y  e. 
_V
6967, 68op1std 6359 . . . . . . . . . . 11  |-  ( z  =  <. x ,  y
>.  ->  ( 1st `  z
)  =  x )
7069fveq2d 5734 . . . . . . . . . 10  |-  ( z  =  <. x ,  y
>.  ->  ( ( 1st `  ( G  o.func  F )
) `  ( 1st `  z ) )  =  ( ( 1st `  ( G  o.func 
F ) ) `  x ) )
7167, 68op2ndd 6360 . . . . . . . . . . 11  |-  ( z  =  <. x ,  y
>.  ->  ( 2nd `  z
)  =  y )
7271fveq2d 5734 . . . . . . . . . 10  |-  ( z  =  <. x ,  y
>.  ->  ( ( 1st `  ( G  o.func  F )
) `  ( 2nd `  z ) )  =  ( ( 1st `  ( G  o.func 
F ) ) `  y ) )
7370, 72oveq12d 6101 . . . . . . . . 9  |-  ( z  =  <. x ,  y
>.  ->  ( ( ( 1st `  ( G  o.func 
F ) ) `  ( 1st `  z ) ) (  Hom  `  E
) ( ( 1st `  ( G  o.func  F )
) `  ( 2nd `  z ) ) )  =  ( ( ( 1st `  ( G  o.func 
F ) ) `  x ) (  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) ) )
74 fveq2 5730 . . . . . . . . . 10  |-  ( z  =  <. x ,  y
>.  ->  ( (  Hom  `  C ) `  z
)  =  ( (  Hom  `  C ) `  <. x ,  y
>. ) )
75 df-ov 6086 . . . . . . . . . 10  |-  ( x (  Hom  `  C
) y )  =  ( (  Hom  `  C
) `  <. x ,  y >. )
7674, 75syl6eqr 2488 . . . . . . . . 9  |-  ( z  =  <. x ,  y
>.  ->  ( (  Hom  `  C ) `  z
)  =  ( x (  Hom  `  C
) y ) )
7773, 76oveq12d 6101 . . . . . . . 8  |-  ( z  =  <. x ,  y
>.  ->  ( ( ( ( 1st `  ( G  o.func 
F ) ) `  ( 1st `  z ) ) (  Hom  `  E
) ( ( 1st `  ( G  o.func  F )
) `  ( 2nd `  z ) ) )  ^m  ( (  Hom  `  C ) `  z
) )  =  ( ( ( ( 1st `  ( G  o.func  F )
) `  x )
(  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) )  ^m  ( x (  Hom  `  C ) y ) ) )
7866, 77eleq12d 2506 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  ( ( ( 2nd `  ( G  o.func 
F ) ) `  z )  e.  ( ( ( ( 1st `  ( G  o.func  F )
) `  ( 1st `  z ) ) (  Hom  `  E )
( ( 1st `  ( G  o.func 
F ) ) `  ( 2nd `  z ) ) )  ^m  (
(  Hom  `  C ) `
 z ) )  <-> 
( x ( 2nd `  ( G  o.func  F )
) y )  e.  ( ( ( ( 1st `  ( G  o.func 
F ) ) `  x ) (  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) )  ^m  ( x (  Hom  `  C ) y ) ) ) )
7978ralxp 5018 . . . . . 6  |-  ( A. z  e.  ( ( Base `  C )  X.  ( Base `  C
) ) ( ( 2nd `  ( G  o.func 
F ) ) `  z )  e.  ( ( ( ( 1st `  ( G  o.func  F )
) `  ( 1st `  z ) ) (  Hom  `  E )
( ( 1st `  ( G  o.func 
F ) ) `  ( 2nd `  z ) ) )  ^m  (
(  Hom  `  C ) `
 z ) )  <->  A. x  e.  ( Base `  C ) A. y  e.  ( Base `  C ) ( x ( 2nd `  ( G  o.func 
F ) ) y )  e.  ( ( ( ( 1st `  ( G  o.func 
F ) ) `  x ) (  Hom  `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  y ) )  ^m  ( x (  Hom  `  C ) y ) ) )
8063, 79sylibr 205 . . . . 5  |-  ( ph  ->  A. z  e.  ( ( Base `  C
)  X.  ( Base `  C ) ) ( ( 2nd `  ( G  o.func 
F ) ) `  z )  e.  ( ( ( ( 1st `  ( G  o.func  F )
) `  ( 1st `  z ) ) (  Hom  `  E )
( ( 1st `  ( G  o.func 
F ) ) `  ( 2nd `  z ) ) )  ^m  (
(  Hom  `  C ) `
 z ) ) )
81 fvex 5744 . . . . . 6  |-  ( 2nd `  ( G  o.func  F )
)  e.  _V
8281elixp 7071 . . . . 5  |-  ( ( 2nd `  ( G  o.func 
F ) )  e.  X_ z  e.  (
( Base `  C )  X.  ( Base `  C
) ) ( ( ( ( 1st `  ( G  o.func 
F ) ) `  ( 1st `  z ) ) (  Hom  `  E
) ( ( 1st `  ( G  o.func  F )
) `  ( 2nd `  z ) ) )  ^m  ( (  Hom  `  C ) `  z
) )  <->  ( ( 2nd `  ( G  o.func  F ) )  Fn  ( (
Base `  C )  X.  ( Base `  C
) )  /\  A. z  e.  ( ( Base `  C )  X.  ( Base `  C
) ) ( ( 2nd `  ( G  o.func 
F ) ) `  z )  e.  ( ( ( ( 1st `  ( G  o.func  F )
) `  ( 1st `  z ) ) (  Hom  `  E )
( ( 1st `  ( G  o.func 
F ) ) `  ( 2nd `  z ) ) )  ^m  (
(  Hom  `  C ) `
 z ) ) ) )
8336, 80, 82sylanbrc 647 . . . 4  |-  ( ph  ->  ( 2nd `  ( G  o.func 
F ) )  e.  X_ z  e.  (
( Base `  C )  X.  ( Base `  C
) ) ( ( ( ( 1st `  ( G  o.func 
F ) ) `  ( 1st `  z ) ) (  Hom  `  E
) ( ( 1st `  ( G  o.func  F )
) `  ( 2nd `  z ) ) )  ^m  ( (  Hom  `  C ) `  z
) ) )
84 eqid 2438 . . . . . . . . . 10  |-  ( Id
`  C )  =  ( Id `  C
)
85 eqid 2438 . . . . . . . . . 10  |-  ( Id
`  D )  =  ( Id `  D
)
8624adantr 453 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( 1st `  F ) ( C 
Func  D ) ( 2nd `  F ) )
87 simpr 449 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  x  e.  ( Base `  C )
)
881, 84, 85, 86, 87funcid 14069 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
x ( 2nd `  F
) x ) `  ( ( Id `  C ) `  x
) )  =  ( ( Id `  D
) `  ( ( 1st `  F ) `  x ) ) )
8988fveq2d 5734 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  x
) ) `  (
( x ( 2nd `  F ) x ) `
 ( ( Id
`  C ) `  x ) ) )  =  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  x
) ) `  (
( Id `  D
) `  ( ( 1st `  F ) `  x ) ) ) )
90 eqid 2438 . . . . . . . . 9  |-  ( Id
`  E )  =  ( Id `  E
)
9120adantr 453 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( 1st `  G ) ( D 
Func  E ) ( 2nd `  G ) )
9225ffvelrnda 5872 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  F ) `  x )  e.  (
Base `  D )
)
9316, 85, 90, 91, 92funcid 14069 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  x
) ) `  (
( Id `  D
) `  ( ( 1st `  F ) `  x ) ) )  =  ( ( Id
`  E ) `  ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) ) )
9489, 93eqtrd 2470 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  x
) ) `  (
( x ( 2nd `  F ) x ) `
 ( ( Id
`  C ) `  x ) ) )  =  ( ( Id
`  E ) `  ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) ) )
952adantr 453 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  F  e.  ( C  Func  D ) )
963adantr 453 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  G  e.  ( D  Func  E ) )
97 funcrcl 14062 . . . . . . . . . . . 12  |-  ( F  e.  ( C  Func  D )  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
982, 97syl 16 . . . . . . . . . . 11  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
9998simpld 447 . . . . . . . . . 10  |-  ( ph  ->  C  e.  Cat )
10099adantr 453 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  C  e.  Cat )
1011, 46, 84, 100, 87catidcl 13909 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  C ) `  x )  e.  ( x (  Hom  `  C
) x ) )
1021, 95, 96, 87, 87, 46, 101cofu2 14085 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
x ( 2nd `  ( G  o.func 
F ) ) x ) `  ( ( Id `  C ) `
 x ) )  =  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  x
) ) `  (
( x ( 2nd `  F ) x ) `
 ( ( Id
`  C ) `  x ) ) ) )
1031, 95, 96, 87cofu1 14083 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( 1st `  ( G  o.func  F ) ) `  x )  =  ( ( 1st `  G ) `  (
( 1st `  F
) `  x )
) )
104103fveq2d 5734 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  E ) `  ( ( 1st `  ( G  o.func 
F ) ) `  x ) )  =  ( ( Id `  E ) `  (
( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) ) )
10594, 102, 1043eqtr4d 2480 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
x ( 2nd `  ( G  o.func 
F ) ) x ) `  ( ( Id `  C ) `
 x ) )  =  ( ( Id
`  E ) `  ( ( 1st `  ( G  o.func 
F ) ) `  x ) ) )
10686adantr 453 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
107 simplr 733 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  x  e.  ( Base `  C
) )
108 simprlr 741 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  z  e.  ( Base `  C
) )
1091, 46, 37, 106, 107, 108funcf2 14067 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
x ( 2nd `  F
) z ) : ( x (  Hom  `  C ) z ) --> ( ( ( 1st `  F ) `  x
) (  Hom  `  D
) ( ( 1st `  F ) `  z
) ) )
110 eqid 2438 . . . . . . . . . . . . 13  |-  (comp `  C )  =  (comp `  C )
111100adantr 453 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  C  e.  Cat )
112 simprll 740 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  y  e.  ( Base `  C
) )
113 simprrl 742 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  f  e.  ( x (  Hom  `  C ) y ) )
114 simprrr 743 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  g  e.  ( y (  Hom  `  C ) z ) )
1151, 46, 110, 111, 107, 112, 108, 113, 114catcocl 13912 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
g ( <. x ,  y >. (comp `  C ) z ) f )  e.  ( x (  Hom  `  C
) z ) )
116 fvco3 5802 . . . . . . . . . . . 12  |-  ( ( ( x ( 2nd `  F ) z ) : ( x (  Hom  `  C )
z ) --> ( ( ( 1st `  F
) `  x )
(  Hom  `  D ) ( ( 1st `  F
) `  z )
)  /\  ( g
( <. x ,  y
>. (comp `  C )
z ) f )  e.  ( x (  Hom  `  C )
z ) )  -> 
( ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  z
) )  o.  (
x ( 2nd `  F
) z ) ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( x ( 2nd `  F ) z ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) ) ) )
117109, 115, 116syl2anc 644 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( ( ( ( 1st `  F ) `
 x ) ( 2nd `  G ) ( ( 1st `  F
) `  z )
)  o.  ( x ( 2nd `  F
) z ) ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( x ( 2nd `  F ) z ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) ) ) )
118 eqid 2438 . . . . . . . . . . . . 13  |-  (comp `  D )  =  (comp `  D )
1191, 46, 110, 118, 106, 107, 112, 108, 113, 114funcco 14070 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( x ( 2nd `  F ) z ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  F ) z ) `
 g ) (
<. ( ( 1st `  F
) `  x ) ,  ( ( 1st `  F ) `  y
) >. (comp `  D
) ( ( 1st `  F ) `  z
) ) ( ( x ( 2nd `  F
) y ) `  f ) ) )
120119fveq2d 5734 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( x ( 2nd `  F ) z ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) ) )  =  ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( ( y ( 2nd `  F ) z ) `  g
) ( <. (
( 1st `  F
) `  x ) ,  ( ( 1st `  F ) `  y
) >. (comp `  D
) ( ( 1st `  F ) `  z
) ) ( ( x ( 2nd `  F
) y ) `  f ) ) ) )
121 eqid 2438 . . . . . . . . . . . 12  |-  (comp `  E )  =  (comp `  E )
12291adantr 453 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  ( 1st `  G ) ( D  Func  E )
( 2nd `  G
) )
12392adantr 453 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( 1st `  F
) `  x )  e.  ( Base `  D
) )
12425adantr 453 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( 1st `  F ) : (
Base `  C ) --> ( Base `  D )
)
125124adantr 453 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  ( 1st `  F ) : ( Base `  C
) --> ( Base `  D
) )
126125, 112ffvelrnd 5873 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( 1st `  F
) `  y )  e.  ( Base `  D
) )
127125, 108ffvelrnd 5873 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( 1st `  F
) `  z )  e.  ( Base `  D
) )
1281, 46, 37, 106, 107, 112funcf2 14067 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
x ( 2nd `  F
) y ) : ( x (  Hom  `  C ) y ) --> ( ( ( 1st `  F ) `  x
) (  Hom  `  D
) ( ( 1st `  F ) `  y
) ) )
129128, 113ffvelrnd 5873 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( x ( 2nd `  F ) y ) `
 f )  e.  ( ( ( 1st `  F ) `  x
) (  Hom  `  D
) ( ( 1st `  F ) `  y
) ) )
1301, 46, 37, 106, 112, 108funcf2 14067 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
y ( 2nd `  F
) z ) : ( y (  Hom  `  C ) z ) --> ( ( ( 1st `  F ) `  y
) (  Hom  `  D
) ( ( 1st `  F ) `  z
) ) )
131130, 114ffvelrnd 5873 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( y ( 2nd `  F ) z ) `
 g )  e.  ( ( ( 1st `  F ) `  y
) (  Hom  `  D
) ( ( 1st `  F ) `  z
) ) )
13216, 37, 118, 121, 122, 123, 126, 127, 129, 131funcco 14070 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( ( y ( 2nd `  F ) z ) `  g
) ( <. (
( 1st `  F
) `  x ) ,  ( ( 1st `  F ) `  y
) >. (comp `  D
) ( ( 1st `  F ) `  z
) ) ( ( x ( 2nd `  F
) y ) `  f ) ) )  =  ( ( ( ( ( 1st `  F
) `  y )
( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( y ( 2nd `  F ) z ) `
 g ) ) ( <. ( ( 1st `  G ) `  (
( 1st `  F
) `  x )
) ,  ( ( 1st `  G ) `
 ( ( 1st `  F ) `  y
) ) >. (comp `  E ) ( ( 1st `  G ) `
 ( ( 1st `  F ) `  z
) ) ) ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) ) `  (
( x ( 2nd `  F ) y ) `
 f ) ) ) )
133117, 120, 1323eqtrd 2474 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( ( ( ( 1st `  F ) `
 x ) ( 2nd `  G ) ( ( 1st `  F
) `  z )
)  o.  ( x ( 2nd `  F
) z ) ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( ( ( 1st `  F ) `  y
) ( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( y ( 2nd `  F ) z ) `
 g ) ) ( <. ( ( 1st `  G ) `  (
( 1st `  F
) `  x )
) ,  ( ( 1st `  G ) `
 ( ( 1st `  F ) `  y
) ) >. (comp `  E ) ( ( 1st `  G ) `
 ( ( 1st `  F ) `  z
) ) ) ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) ) `  (
( x ( 2nd `  F ) y ) `
 f ) ) ) )
13495adantr 453 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  F  e.  ( C  Func  D
) )
13596adantr 453 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  G  e.  ( D  Func  E
) )
1361, 134, 135, 107, 108cofu2nd 14084 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
x ( 2nd `  ( G  o.func 
F ) ) z )  =  ( ( ( ( 1st `  F
) `  x )
( 2nd `  G
) ( ( 1st `  F ) `  z
) )  o.  (
x ( 2nd `  F
) z ) ) )
137136fveq1d 5732 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( x ( 2nd `  ( G  o.func  F )
) z ) `  ( g ( <.
x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  z
) )  o.  (
x ( 2nd `  F
) z ) ) `
 ( g (
<. x ,  y >.
(comp `  C )
z ) f ) ) )
138103adantr 453 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( 1st `  ( G  o.func 
F ) ) `  x )  =  ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) )
1391, 134, 135, 112cofu1 14083 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( 1st `  ( G  o.func 
F ) ) `  y )  =  ( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) )
140138, 139opeq12d 3994 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  <. (
( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >.  =  <. ( ( 1st `  G
) `  ( ( 1st `  F ) `  x ) ) ,  ( ( 1st `  G
) `  ( ( 1st `  F ) `  y ) ) >.
)
1411, 134, 135, 108cofu1 14083 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( 1st `  ( G  o.func 
F ) ) `  z )  =  ( ( 1st `  G
) `  ( ( 1st `  F ) `  z ) ) )
142140, 141oveq12d 6101 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  ( <. ( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) )  =  ( <. ( ( 1st `  G ) `  (
( 1st `  F
) `  x )
) ,  ( ( 1st `  G ) `
 ( ( 1st `  F ) `  y
) ) >. (comp `  E ) ( ( 1st `  G ) `
 ( ( 1st `  F ) `  z
) ) ) )
1431, 134, 135, 112, 108, 46, 114cofu2 14085 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( y ( 2nd `  ( G  o.func  F )
) z ) `  g )  =  ( ( ( ( 1st `  F ) `  y
) ( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( y ( 2nd `  F ) z ) `
 g ) ) )
1441, 134, 135, 107, 112, 46, 113cofu2 14085 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( x ( 2nd `  ( G  o.func  F )
) y ) `  f )  =  ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) ) `  (
( x ( 2nd `  F ) y ) `
 f ) ) )
145142, 143, 144oveq123d 6104 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( ( y ( 2nd `  ( G  o.func 
F ) ) z ) `  g ) ( <. ( ( 1st `  ( G  o.func  F )
) `  x ) ,  ( ( 1st `  ( G  o.func  F )
) `  y ) >. (comp `  E )
( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) )  =  ( ( ( ( ( 1st `  F
) `  y )
( 2nd `  G
) ( ( 1st `  F ) `  z
) ) `  (
( y ( 2nd `  F ) z ) `
 g ) ) ( <. ( ( 1st `  G ) `  (
( 1st `  F
) `  x )
) ,  ( ( 1st `  G ) `
 ( ( 1st `  F ) `  y
) ) >. (comp `  E ) ( ( 1st `  G ) `
 ( ( 1st `  F ) `  z
) ) ) ( ( ( ( 1st `  F ) `  x
) ( 2nd `  G
) ( ( 1st `  F ) `  y
) ) `  (
( x ( 2nd `  F ) y ) `
 f ) ) ) )
146133, 137, 1453eqtr4d 2480 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x (  Hom  `  C ) y )  /\  g  e.  ( y (  Hom  `  C
) z ) ) ) )  ->  (
( x ( 2nd `  ( G  o.func  F )
) z ) `  ( g ( <.
x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  ( G  o.func  F )
) z ) `  g ) ( <.
( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) ) )
147146anassrs 631 . . . . . . . 8  |-  ( ( ( ( ph  /\  x  e.  ( Base `  C ) )  /\  ( y  e.  (
Base `  C )  /\  z  e.  ( Base `  C ) ) )  /\  ( f  e.  ( x (  Hom  `  C )
y )  /\  g  e.  ( y (  Hom  `  C ) z ) ) )  ->  (
( x ( 2nd `  ( G  o.func  F )
) z ) `  ( g ( <.
x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  ( G  o.func  F )
) z ) `  g ) ( <.
( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) ) )
148147ralrimivva 2800 . . . . . . 7  |-  ( ( ( ph  /\  x  e.  ( Base `  C
) )  /\  (
y  e.  ( Base `  C )  /\  z  e.  ( Base `  C
) ) )  ->  A. f  e.  (
x (  Hom  `  C
) y ) A. g  e.  ( y
(  Hom  `  C ) z ) ( ( x ( 2nd `  ( G  o.func 
F ) ) z ) `  ( g ( <. x ,  y
>. (comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  ( G  o.func  F )
) z ) `  g ) ( <.
( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) ) )
149148ralrimivva 2800 . . . . . 6  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  A. y  e.  ( Base `  C
) A. z  e.  ( Base `  C
) A. f  e.  ( x (  Hom  `  C ) y ) A. g  e.  ( y (  Hom  `  C
) z ) ( ( x ( 2nd `  ( G  o.func  F )
) z ) `  ( g ( <.
x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  ( G  o.func  F )
) z ) `  g ) ( <.
( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) ) )
150105, 149jca 520 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
( x ( 2nd `  ( G  o.func  F )
) x ) `  ( ( Id `  C ) `  x
) )  =  ( ( Id `  E
) `  ( ( 1st `  ( G  o.func  F ) ) `  x ) )  /\  A. y  e.  ( Base `  C
) A. z  e.  ( Base `  C
) A. f  e.  ( x (  Hom  `  C ) y ) A. g  e.  ( y (  Hom  `  C
) z ) ( ( x ( 2nd `  ( G  o.func  F )
) z ) `  ( g ( <.
x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  ( G  o.func  F )
) z ) `  g ) ( <.
( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) ) ) )
151150ralrimiva 2791 . . . 4  |-  ( ph  ->  A. x  e.  (
Base `  C )
( ( ( x ( 2nd `  ( G  o.func 
F ) ) x ) `  ( ( Id `  C ) `
 x ) )  =  ( ( Id
`  E ) `  ( ( 1st `  ( G  o.func 
F ) ) `  x ) )  /\  A. y  e.  ( Base `  C ) A. z  e.  ( Base `  C
) A. f  e.  ( x (  Hom  `  C ) y ) A. g  e.  ( y (  Hom  `  C
) z ) ( ( x ( 2nd `  ( G  o.func  F )
) z ) `  ( g ( <.
x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  ( G  o.func  F )
) z ) `  g ) ( <.
( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) ) ) )
152 funcrcl 14062 . . . . . . 7  |-  ( G  e.  ( D  Func  E )  ->  ( D  e.  Cat  /\  E  e. 
Cat ) )
1533, 152syl 16 . . . . . 6  |-  ( ph  ->  ( D  e.  Cat  /\  E  e.  Cat )
)
154153simprd 451 . . . . 5  |-  ( ph  ->  E  e.  Cat )
1551, 17, 46, 38, 84, 90, 110, 121, 99, 154isfunc 14063 . . . 4  |-  ( ph  ->  ( ( 1st `  ( G  o.func 
F ) ) ( C  Func  E )
( 2nd `  ( G  o.func 
F ) )  <->  ( ( 1st `  ( G  o.func  F ) ) : ( Base `  C ) --> ( Base `  E )  /\  ( 2nd `  ( G  o.func  F ) )  e.  X_ z  e.  ( ( Base `  C
)  X.  ( Base `  C ) ) ( ( ( ( 1st `  ( G  o.func  F )
) `  ( 1st `  z ) ) (  Hom  `  E )
( ( 1st `  ( G  o.func 
F ) ) `  ( 2nd `  z ) ) )  ^m  (
(  Hom  `  C ) `
 z ) )  /\  A. x  e.  ( Base `  C
) ( ( ( x ( 2nd `  ( G  o.func 
F ) ) x ) `  ( ( Id `  C ) `
 x ) )  =  ( ( Id
`  E ) `  ( ( 1st `  ( G  o.func 
F ) ) `  x ) )  /\  A. y  e.  ( Base `  C ) A. z  e.  ( Base `  C
) A. f  e.  ( x (  Hom  `  C ) y ) A. g  e.  ( y (  Hom  `  C
) z ) ( ( x ( 2nd `  ( G  o.func  F )
) z ) `  ( g ( <.
x ,  y >.
(comp `  C )
z ) f ) )  =  ( ( ( y ( 2nd `  ( G  o.func  F )
) z ) `  g ) ( <.
( ( 1st `  ( G  o.func 
F ) ) `  x ) ,  ( ( 1st `  ( G  o.func 
F ) ) `  y ) >. (comp `  E ) ( ( 1st `  ( G  o.func 
F ) ) `  z ) ) ( ( x ( 2nd `  ( G  o.func  F )
) y ) `  f ) ) ) ) ) )
15629, 83, 151, 155mpbir3and 1138 . . 3  |-  ( ph  ->  ( 1st `  ( G  o.func 
F ) ) ( C  Func  E )
( 2nd `  ( G  o.func 
F ) ) )
157 df-br 4215 . . 3  |-  ( ( 1st `  ( G  o.func 
F ) ) ( C  Func  E )
( 2nd `  ( G  o.func 
F ) )  <->  <. ( 1st `  ( G  o.func  F )
) ,  ( 2nd `  ( G  o.func  F )
) >.  e.  ( C 
Func  E ) )
158156, 157sylib 190 . 2  |-  ( ph  -> 
<. ( 1st `  ( G  o.func 
F ) ) ,  ( 2nd `  ( G  o.func 
F ) ) >.  e.  ( C  Func  E
) )
15915, 158eqeltrd 2512 1  |-  ( ph  ->  ( G  o.func  F )  e.  ( C  Func  E
) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 360    = wceq 1653    e. wcel 1726   A.wral 2707   <.cop 3819   class class class wbr 4214    X. cxp 4878    o. ccom 4884   Rel wrel 4885    Fn wfn 5451   -->wf 5452   ` cfv 5456  (class class class)co 6083    e. cmpt2 6085   1stc1st 6349   2ndc2nd 6350    ^m cmap 7020   X_cixp 7065   Basecbs 13471    Hom chom 13542  compcco 13543   Catccat 13891   Idccid 13892    Func cfunc 14053    o.func ccofu 14055
This theorem is referenced by:  cofuass  14088  cofull  14133  cofth  14134  catccatid  14259  1st2ndprf  14305  uncfcl  14334  uncf1  14335  uncf2  14336  yonedalem1  14371  yonedalem21  14372  yonedalem22  14377
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-map 7022  df-ixp 7066  df-cat 13895  df-cid 13896  df-func 14057  df-cofu 14059
  Copyright terms: Public domain W3C validator