Metamath Proof Explorer


Theorem postcofval

Description: Value of the post-composition functor as a curry of the functor composition bifunctor. (Contributed by Zhi Wang, 11-Oct-2025)

Ref Expression
Hypotheses postcofval.q Q = C FuncCat D
postcofval.r R = D FuncCat E
postcofval.o No typesetting found for |- .o. = ( <. R , Q >. curryF ( <. C , D >. o.F E ) ) with typecode |-
postcofval.f φ F D Func E
postcofval.c φ C Cat
postcofval.k No typesetting found for |- K = ( ( 1st ` .o. ) ` F ) with typecode |-
Assertion postcofval φ K = g C Func D F func g g C Func D , h C Func D a g C Nat D h x Base C 1 st g x 2 nd F 1 st h x a x

Proof

Step Hyp Ref Expression
1 postcofval.q Q = C FuncCat D
2 postcofval.r R = D FuncCat E
3 postcofval.o Could not format .o. = ( <. R , Q >. curryF ( <. C , D >. o.F E ) ) : No typesetting found for |- .o. = ( <. R , Q >. curryF ( <. C , D >. o.F E ) ) with typecode |-
4 postcofval.f φ F D Func E
5 postcofval.c φ C Cat
6 postcofval.k Could not format K = ( ( 1st ` .o. ) ` F ) : No typesetting found for |- K = ( ( 1st ` .o. ) ` F ) with typecode |-
7 2 fucbas D Func E = Base R
8 relfunc Rel D Func E
9 1st2ndbr Rel D Func E F D Func E 1 st F D Func E 2 nd F
10 8 4 9 sylancr φ 1 st F D Func E 2 nd F
11 10 funcrcl2 φ D Cat
12 10 funcrcl3 φ E Cat
13 2 11 12 fuccat φ R Cat
14 1 5 11 fuccat φ Q Cat
15 2 1 oveq12i R × c Q = D FuncCat E × c C FuncCat D
16 eqid C FuncCat E = C FuncCat E
17 15 16 5 11 12 fucofunca Could not format ( ph -> ( <. C , D >. o.F E ) e. ( ( R Xc. Q ) Func ( C FuncCat E ) ) ) : No typesetting found for |- ( ph -> ( <. C , D >. o.F E ) e. ( ( R Xc. Q ) Func ( C FuncCat E ) ) ) with typecode |-
18 1 fucbas C Func D = Base Q
19 eqid C Nat D = C Nat D
20 1 19 fuchom C Nat D = Hom Q
21 eqid Id R = Id R
22 3 7 13 14 17 18 4 6 20 21 curf1 Could not format ( ph -> K = <. ( g e. ( C Func D ) |-> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) ) , ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) ) >. ) : No typesetting found for |- ( ph -> K = <. ( g e. ( C Func D ) |-> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) ) , ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) ) >. ) with typecode |-
23 eqidd Could not format ( ( ph /\ g e. ( C Func D ) ) -> ( 1st ` ( <. C , D >. o.F E ) ) = ( 1st ` ( <. C , D >. o.F E ) ) ) : No typesetting found for |- ( ( ph /\ g e. ( C Func D ) ) -> ( 1st ` ( <. C , D >. o.F E ) ) = ( 1st ` ( <. C , D >. o.F E ) ) ) with typecode |-
24 simpr φ g C Func D g C Func D
25 4 adantr φ g C Func D F D Func E
26 23 24 25 fuco11b Could not format ( ( ph /\ g e. ( C Func D ) ) -> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) = ( F o.func g ) ) : No typesetting found for |- ( ( ph /\ g e. ( C Func D ) ) -> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) = ( F o.func g ) ) with typecode |-
27 26 mpteq2dva Could not format ( ph -> ( g e. ( C Func D ) |-> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) ) = ( g e. ( C Func D ) |-> ( F o.func g ) ) ) : No typesetting found for |- ( ph -> ( g e. ( C Func D ) |-> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) ) = ( g e. ( C Func D ) |-> ( F o.func g ) ) ) with typecode |-
28 eqidd Could not format ( ( ph /\ a e. ( g ( C Nat D ) h ) ) -> ( 2nd ` ( <. C , D >. o.F E ) ) = ( 2nd ` ( <. C , D >. o.F E ) ) ) : No typesetting found for |- ( ( ph /\ a e. ( g ( C Nat D ) h ) ) -> ( 2nd ` ( <. C , D >. o.F E ) ) = ( 2nd ` ( <. C , D >. o.F E ) ) ) with typecode |-
29 simpr φ a g C Nat D h a g C Nat D h
30 4 adantr φ a g C Nat D h F D Func E
31 28 21 2 29 30 fucolid Could not format ( ( ph /\ a e. ( g ( C Nat D ) h ) ) -> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) = ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) : No typesetting found for |- ( ( ph /\ a e. ( g ( C Nat D ) h ) ) -> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) = ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) with typecode |-
32 31 mpteq2dva Could not format ( ph -> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) = ( a e. ( g ( C Nat D ) h ) |-> ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) ) : No typesetting found for |- ( ph -> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) = ( a e. ( g ( C Nat D ) h ) |-> ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) ) with typecode |-
33 32 mpoeq3dv Could not format ( ph -> ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) ) = ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) ) ) : No typesetting found for |- ( ph -> ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) ) = ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) ) ) with typecode |-
34 27 33 opeq12d Could not format ( ph -> <. ( g e. ( C Func D ) |-> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) ) , ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) ) >. = <. ( g e. ( C Func D ) |-> ( F o.func g ) ) , ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) ) >. ) : No typesetting found for |- ( ph -> <. ( g e. ( C Func D ) |-> ( F ( 1st ` ( <. C , D >. o.F E ) ) g ) ) , ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( ( ( Id ` R ) ` F ) ( <. F , g >. ( 2nd ` ( <. C , D >. o.F E ) ) <. F , h >. ) a ) ) ) >. = <. ( g e. ( C Func D ) |-> ( F o.func g ) ) , ( g e. ( C Func D ) , h e. ( C Func D ) |-> ( a e. ( g ( C Nat D ) h ) |-> ( x e. ( Base ` C ) |-> ( ( ( ( 1st ` g ) ` x ) ( 2nd ` F ) ( ( 1st ` h ) ` x ) ) ` ( a ` x ) ) ) ) ) >. ) with typecode |-
35 22 34 eqtrd φ K = g C Func D F func g g C Func D , h C Func D a g C Nat D h x Base C 1 st g x 2 nd F 1 st h x a x