This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Value of the functor category. (Contributed by Mario Carneiro, 6-Jan-2017)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | fucval.q | |- Q = ( C FuncCat D ) |
|
| fucval.b | |- B = ( C Func D ) |
||
| fucval.n | |- N = ( C Nat D ) |
||
| fucval.a | |- A = ( Base ` C ) |
||
| fucval.o | |- .x. = ( comp ` D ) |
||
| fucval.c | |- ( ph -> C e. Cat ) |
||
| fucval.d | |- ( ph -> D e. Cat ) |
||
| fucval.x | |- ( ph -> .xb = ( v e. ( B X. B ) , h e. B |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) ) |
||
| Assertion | fucval | |- ( ph -> Q = { <. ( Base ` ndx ) , B >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , .xb >. } ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | fucval.q | |- Q = ( C FuncCat D ) |
|
| 2 | fucval.b | |- B = ( C Func D ) |
|
| 3 | fucval.n | |- N = ( C Nat D ) |
|
| 4 | fucval.a | |- A = ( Base ` C ) |
|
| 5 | fucval.o | |- .x. = ( comp ` D ) |
|
| 6 | fucval.c | |- ( ph -> C e. Cat ) |
|
| 7 | fucval.d | |- ( ph -> D e. Cat ) |
|
| 8 | fucval.x | |- ( ph -> .xb = ( v e. ( B X. B ) , h e. B |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) ) |
|
| 9 | df-fuc | |- FuncCat = ( t e. Cat , u e. Cat |-> { <. ( Base ` ndx ) , ( t Func u ) >. , <. ( Hom ` ndx ) , ( t Nat u ) >. , <. ( comp ` ndx ) , ( v e. ( ( t Func u ) X. ( t Func u ) ) , h e. ( t Func u ) |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) >. } ) |
|
| 10 | 9 | a1i | |- ( ph -> FuncCat = ( t e. Cat , u e. Cat |-> { <. ( Base ` ndx ) , ( t Func u ) >. , <. ( Hom ` ndx ) , ( t Nat u ) >. , <. ( comp ` ndx ) , ( v e. ( ( t Func u ) X. ( t Func u ) ) , h e. ( t Func u ) |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) >. } ) ) |
| 11 | simprl | |- ( ( ph /\ ( t = C /\ u = D ) ) -> t = C ) |
|
| 12 | simprr | |- ( ( ph /\ ( t = C /\ u = D ) ) -> u = D ) |
|
| 13 | 11 12 | oveq12d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( t Func u ) = ( C Func D ) ) |
| 14 | 13 2 | eqtr4di | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( t Func u ) = B ) |
| 15 | 14 | opeq2d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> <. ( Base ` ndx ) , ( t Func u ) >. = <. ( Base ` ndx ) , B >. ) |
| 16 | 11 12 | oveq12d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( t Nat u ) = ( C Nat D ) ) |
| 17 | 16 3 | eqtr4di | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( t Nat u ) = N ) |
| 18 | 17 | opeq2d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> <. ( Hom ` ndx ) , ( t Nat u ) >. = <. ( Hom ` ndx ) , N >. ) |
| 19 | 14 | sqxpeqd | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( ( t Func u ) X. ( t Func u ) ) = ( B X. B ) ) |
| 20 | 17 | oveqd | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( g ( t Nat u ) h ) = ( g N h ) ) |
| 21 | 17 | oveqd | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( f ( t Nat u ) g ) = ( f N g ) ) |
| 22 | 11 | fveq2d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( Base ` t ) = ( Base ` C ) ) |
| 23 | 22 4 | eqtr4di | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( Base ` t ) = A ) |
| 24 | 12 | fveq2d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( comp ` u ) = ( comp ` D ) ) |
| 25 | 24 5 | eqtr4di | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( comp ` u ) = .x. ) |
| 26 | 25 | oveqd | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) = ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ) |
| 27 | 26 | oveqd | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) = ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) |
| 28 | 23 27 | mpteq12dv | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) = ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) |
| 29 | 20 21 28 | mpoeq123dv | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) = ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) |
| 30 | 29 | csbeq2dv | |- ( ( ph /\ ( t = C /\ u = D ) ) -> [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) = [_ ( 2nd ` v ) / g ]_ ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) |
| 31 | 30 | csbeq2dv | |- ( ( ph /\ ( t = C /\ u = D ) ) -> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) = [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) |
| 32 | 19 14 31 | mpoeq123dv | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( v e. ( ( t Func u ) X. ( t Func u ) ) , h e. ( t Func u ) |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) = ( v e. ( B X. B ) , h e. B |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) ) |
| 33 | 8 | adantr | |- ( ( ph /\ ( t = C /\ u = D ) ) -> .xb = ( v e. ( B X. B ) , h e. B |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. A |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. .x. ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) ) |
| 34 | 32 33 | eqtr4d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> ( v e. ( ( t Func u ) X. ( t Func u ) ) , h e. ( t Func u ) |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) = .xb ) |
| 35 | 34 | opeq2d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> <. ( comp ` ndx ) , ( v e. ( ( t Func u ) X. ( t Func u ) ) , h e. ( t Func u ) |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) >. = <. ( comp ` ndx ) , .xb >. ) |
| 36 | 15 18 35 | tpeq123d | |- ( ( ph /\ ( t = C /\ u = D ) ) -> { <. ( Base ` ndx ) , ( t Func u ) >. , <. ( Hom ` ndx ) , ( t Nat u ) >. , <. ( comp ` ndx ) , ( v e. ( ( t Func u ) X. ( t Func u ) ) , h e. ( t Func u ) |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g ( t Nat u ) h ) , a e. ( f ( t Nat u ) g ) |-> ( x e. ( Base ` t ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` u ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) >. } = { <. ( Base ` ndx ) , B >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , .xb >. } ) |
| 37 | tpex | |- { <. ( Base ` ndx ) , B >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , .xb >. } e. _V |
|
| 38 | 37 | a1i | |- ( ph -> { <. ( Base ` ndx ) , B >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , .xb >. } e. _V ) |
| 39 | 10 36 6 7 38 | ovmpod | |- ( ph -> ( C FuncCat D ) = { <. ( Base ` ndx ) , B >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , .xb >. } ) |
| 40 | 1 39 | eqtrid | |- ( ph -> Q = { <. ( Base ` ndx ) , B >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , .xb >. } ) |