Metamath Proof Explorer


Theorem prcof2

Description: The morphism part of the pre-composition functor. (Contributed by Zhi Wang, 3-Nov-2025)

Ref Expression
Hypotheses prcof2a.n ⊢ N = D Nat E
prcof2a.k ⊢ φ → K ∈ D Func E
prcof2a.l ⊢ φ → L ∈ D Func E
prcof2.p No typesetting found for |- ( ph -> ( 2nd ` ( <. D , E >. -o.F <. F , G >. ) ) = P ) with typecode |-
prcof2.r ⊢ Rel ⁡ R
prcof2.f ⊢ φ → F R G
Assertion prcof2 ⊢ φ → K P L = a ∈ K N L ⟼ a ∘ F

Proof

Step Hyp Ref Expression
1 prcof2a.n ⊢ N = D Nat E
2 prcof2a.k ⊢ φ → K ∈ D Func E
3 prcof2a.l ⊢ φ → L ∈ D Func E
4 prcof2.p Could not format ( ph -> ( 2nd ` ( <. D , E >. -o.F <. F , G >. ) ) = P ) : No typesetting found for |- ( ph -> ( 2nd ` ( <. D , E >. -o.F <. F , G >. ) ) = P ) with typecode |-
5 prcof2.r ⊢ Rel ⁡ R
6 prcof2.f ⊢ φ → F R G
7 eqid ⊢ D Func E = D Func E
8 2 func1st2nd ⊢ φ → 1 st ⁡ K D Func E 2 nd ⁡ K
9 8 funcrcl2 ⊢ φ → D ∈ Cat
10 8 funcrcl3 ⊢ φ → E ∈ Cat
11 7 1 9 10 5 6 prcofval Could not format ( ph -> ( <. D , E >. -o.F <. F , G >. ) = <. ( k e. ( D Func E ) |-> ( k o.func <. F , G >. ) ) , ( k e. ( D Func E ) , l e. ( D Func E ) |-> ( a e. ( k N l ) |-> ( a o. F ) ) ) >. ) : No typesetting found for |- ( ph -> ( <. D , E >. -o.F <. F , G >. ) = <. ( k e. ( D Func E ) |-> ( k o.func <. F , G >. ) ) , ( k e. ( D Func E ) , l e. ( D Func E ) |-> ( a e. ( k N l ) |-> ( a o. F ) ) ) >. ) with typecode |-
12 11 fveq2d Could not format ( ph -> ( 2nd ` ( <. D , E >. -o.F <. F , G >. ) ) = ( 2nd ` <. ( k e. ( D Func E ) |-> ( k o.func <. F , G >. ) ) , ( k e. ( D Func E ) , l e. ( D Func E ) |-> ( a e. ( k N l ) |-> ( a o. F ) ) ) >. ) ) : No typesetting found for |- ( ph -> ( 2nd ` ( <. D , E >. -o.F <. F , G >. ) ) = ( 2nd ` <. ( k e. ( D Func E ) |-> ( k o.func <. F , G >. ) ) , ( k e. ( D Func E ) , l e. ( D Func E ) |-> ( a e. ( k N l ) |-> ( a o. F ) ) ) >. ) ) with typecode |-
13 ovex ⊢ D Func E ∈ V
14 13 mptex ⊢ k ∈ D Func E ⟼ k ∘ func F G ∈ V
15 13 13 mpoex ⊢ k ∈ D Func E , l ∈ D Func E ⟼ a ∈ k N l ⟼ a ∘ F ∈ V
16 14 15 op2nd ⊢ 2 nd ⁡ k ∈ D Func E ⟼ k ∘ func F G k ∈ D Func E , l ∈ D Func E ⟼ a ∈ k N l ⟼ a ∘ F = k ∈ D Func E , l ∈ D Func E ⟼ a ∈ k N l ⟼ a ∘ F
17 12 16 eqtrdi Could not format ( ph -> ( 2nd ` ( <. D , E >. -o.F <. F , G >. ) ) = ( k e. ( D Func E ) , l e. ( D Func E ) |-> ( a e. ( k N l ) |-> ( a o. F ) ) ) ) : No typesetting found for |- ( ph -> ( 2nd ` ( <. D , E >. -o.F <. F , G >. ) ) = ( k e. ( D Func E ) , l e. ( D Func E ) |-> ( a e. ( k N l ) |-> ( a o. F ) ) ) ) with typecode |-
18 4 17 eqtr3d ⊢ φ → P = k ∈ D Func E , l ∈ D Func E ⟼ a ∈ k N l ⟼ a ∘ F
19 simprl ⊢ φ ∧ k = K ∧ l = L → k = K
20 simprr ⊢ φ ∧ k = K ∧ l = L → l = L
21 19 20 oveq12d ⊢ φ ∧ k = K ∧ l = L → k N l = K N L
22 21 mpteq1d ⊢ φ ∧ k = K ∧ l = L → a ∈ k N l ⟼ a ∘ F = a ∈ K N L ⟼ a ∘ F
23 ovex ⊢ K N L ∈ V
24 23 mptex ⊢ a ∈ K N L ⟼ a ∘ F ∈ V
25 24 a1i ⊢ φ → a ∈ K N L ⟼ a ∘ F ∈ V
26 18 22 2 3 25 ovmpod ⊢ φ → K P L = a ∈ K N L ⟼ a ∘ F