Metamath Proof Explorer


Theorem fucofval

Description: Value of the function giving the functor composition bifunctor. Hypotheses fucofval.c and fucofval.d are not redundant ( fucofvalne ). (Contributed by Zhi Wang, 29-Sep-2025)

Ref Expression
Hypotheses fucofval.c ⊢ φ → C ∈ T
fucofval.d ⊢ φ → D ∈ U
fucofval.e ⊢ φ → E ∈ V
fucofval.o No typesetting found for |- ( ph -> ( <. C , D >. o.F E ) = .o. ) with typecode |-
fucofval.w ⊢ φ → W = D Func E × C Func D
Assertion fucofval Could not format assertion : No typesetting found for |- ( ph -> .o. = <. ( o.func |` W ) , ( u e. W , v e. W |-> [_ ( 1st ` ( 2nd ` u ) ) / f ]_ [_ ( 1st ` ( 1st ` u ) ) / k ]_ [_ ( 2nd ` ( 1st ` u ) ) / l ]_ [_ ( 1st ` ( 2nd ` v ) ) / m ]_ [_ ( 1st ` ( 1st ` v ) ) / r ]_ ( b e. ( ( 1st ` u ) ( D Nat E ) ( 1st ` v ) ) , a e. ( ( 2nd ` u ) ( C Nat D ) ( 2nd ` v ) ) |-> ( x e. ( Base ` C ) |-> ( ( b ` ( m ` x ) ) ( <. ( k ` ( f ` x ) ) , ( k ` ( m ` x ) ) >. ( comp ` E ) ( r ` ( m ` x ) ) ) ( ( ( f ` x ) l ( m ` x ) ) ` ( a ` x ) ) ) ) ) ) >. ) with typecode |-

Proof

Step Hyp Ref Expression
1 fucofval.c ⊢ φ → C ∈ T
2 fucofval.d ⊢ φ → D ∈ U
3 fucofval.e ⊢ φ → E ∈ V
4 fucofval.o Could not format ( ph -> ( <. C , D >. o.F E ) = .o. ) : No typesetting found for |- ( ph -> ( <. C , D >. o.F E ) = .o. ) with typecode |-
5 fucofval.w ⊢ φ → W = D Func E × C Func D
6 opex ⊢ C D ∈ V
7 6 a1i ⊢ φ → C D ∈ V
8 op1stg ⊢ C ∈ T ∧ D ∈ U → 1 st ⁡ C D = C
9 1 2 8 syl2anc ⊢ φ → 1 st ⁡ C D = C
10 op2ndg ⊢ C ∈ T ∧ D ∈ U → 2 nd ⁡ C D = D
11 1 2 10 syl2anc ⊢ φ → 2 nd ⁡ C D = D
12 7 9 11 3 4 5 fucofvalg Could not format ( ph -> .o. = <. ( o.func |` W ) , ( u e. W , v e. W |-> [_ ( 1st ` ( 2nd ` u ) ) / f ]_ [_ ( 1st ` ( 1st ` u ) ) / k ]_ [_ ( 2nd ` ( 1st ` u ) ) / l ]_ [_ ( 1st ` ( 2nd ` v ) ) / m ]_ [_ ( 1st ` ( 1st ` v ) ) / r ]_ ( b e. ( ( 1st ` u ) ( D Nat E ) ( 1st ` v ) ) , a e. ( ( 2nd ` u ) ( C Nat D ) ( 2nd ` v ) ) |-> ( x e. ( Base ` C ) |-> ( ( b ` ( m ` x ) ) ( <. ( k ` ( f ` x ) ) , ( k ` ( m ` x ) ) >. ( comp ` E ) ( r ` ( m ` x ) ) ) ( ( ( f ` x ) l ( m ` x ) ) ` ( a ` x ) ) ) ) ) ) >. ) : No typesetting found for |- ( ph -> .o. = <. ( o.func |` W ) , ( u e. W , v e. W |-> [_ ( 1st ` ( 2nd ` u ) ) / f ]_ [_ ( 1st ` ( 1st ` u ) ) / k ]_ [_ ( 2nd ` ( 1st ` u ) ) / l ]_ [_ ( 1st ` ( 2nd ` v ) ) / m ]_ [_ ( 1st ` ( 1st ` v ) ) / r ]_ ( b e. ( ( 1st ` u ) ( D Nat E ) ( 1st ` v ) ) , a e. ( ( 2nd ` u ) ( C Nat D ) ( 2nd ` v ) ) |-> ( x e. ( Base ` C ) |-> ( ( b ` ( m ` x ) ) ( <. ( k ` ( f ` x ) ) , ( k ` ( m ` x ) ) >. ( comp ` E ) ( r ` ( m ` x ) ) ) ( ( ( f ` x ) l ( m ` x ) ) ` ( a ` x ) ) ) ) ) ) >. ) with typecode |-