Metamath Proof Explorer


Theorem evlf2

Description: Value of the evaluation functor at a morphism. (Contributed by Mario Carneiro, 12-Jan-2017)

Ref Expression
Hypotheses evlfval.e ⊢ E = C eval F D
evlfval.c ⊢ φ → C ∈ Cat
evlfval.d ⊢ φ → D ∈ Cat
evlfval.b ⊢ B = Base C
evlfval.h ⊢ H = Hom ⁡ C
evlfval.o ⊢ · ˙ = comp ⁡ D
evlfval.n ⊢ N = C Nat D
evlf2.f ⊢ φ → F ∈ C Func D
evlf2.g ⊢ φ → G ∈ C Func D
evlf2.x ⊢ φ → X ∈ B
evlf2.y ⊢ φ → Y ∈ B
evlf2.l ⊢ L = F X 2 nd ⁡ E G Y
Assertion evlf2 ⊢ φ → L = a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g

Proof

Step Hyp Ref Expression
1 evlfval.e ⊢ E = C eval F D
2 evlfval.c ⊢ φ → C ∈ Cat
3 evlfval.d ⊢ φ → D ∈ Cat
4 evlfval.b ⊢ B = Base C
5 evlfval.h ⊢ H = Hom ⁡ C
6 evlfval.o ⊢ · ˙ = comp ⁡ D
7 evlfval.n ⊢ N = C Nat D
8 evlf2.f ⊢ φ → F ∈ C Func D
9 evlf2.g ⊢ φ → G ∈ C Func D
10 evlf2.x ⊢ φ → X ∈ B
11 evlf2.y ⊢ φ → Y ∈ B
12 evlf2.l ⊢ L = F X 2 nd ⁡ E G Y
13 1 2 3 4 5 6 7 evlfval ⊢ φ → E = f ∈ C Func D , x ∈ B ⟼ 1 st ⁡ f ⁡ x x ∈ C Func D × B , y ∈ C Func D × B ⟼ ⦋ 1 st ⁡ x / m⦌ ⦋ 1 st ⁡ y / n⦌ a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g
14 ovex ⊢ C Func D ∈ V
15 4 fvexi ⊢ B ∈ V
16 14 15 mpoex ⊢ f ∈ C Func D , x ∈ B ⟼ 1 st ⁡ f ⁡ x ∈ V
17 14 15 xpex ⊢ C Func D × B ∈ V
18 17 17 mpoex ⊢ x ∈ C Func D × B , y ∈ C Func D × B ⟼ ⦋ 1 st ⁡ x / m⦌ ⦋ 1 st ⁡ y / n⦌ a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g ∈ V
19 16 18 op2ndd ⊢ E = f ∈ C Func D , x ∈ B ⟼ 1 st ⁡ f ⁡ x x ∈ C Func D × B , y ∈ C Func D × B ⟼ ⦋ 1 st ⁡ x / m⦌ ⦋ 1 st ⁡ y / n⦌ a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g → 2 nd ⁡ E = x ∈ C Func D × B , y ∈ C Func D × B ⟼ ⦋ 1 st ⁡ x / m⦌ ⦋ 1 st ⁡ y / n⦌ a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g
20 13 19 syl ⊢ φ → 2 nd ⁡ E = x ∈ C Func D × B , y ∈ C Func D × B ⟼ ⦋ 1 st ⁡ x / m⦌ ⦋ 1 st ⁡ y / n⦌ a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g
21 fvexd ⊢ φ ∧ x = F X ∧ y = G Y → 1 st ⁡ x ∈ V
22 simprl ⊢ φ ∧ x = F X ∧ y = G Y → x = F X
23 22 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y → 1 st ⁡ x = 1 st ⁡ F X
24 op1stg ⊢ F ∈ C Func D ∧ X ∈ B → 1 st ⁡ F X = F
25 8 10 24 syl2anc ⊢ φ → 1 st ⁡ F X = F
26 25 adantr ⊢ φ ∧ x = F X ∧ y = G Y → 1 st ⁡ F X = F
27 23 26 eqtrd ⊢ φ ∧ x = F X ∧ y = G Y → 1 st ⁡ x = F
28 fvexd ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F → 1 st ⁡ y ∈ V
29 simplrr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F → y = G Y
30 29 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F → 1 st ⁡ y = 1 st ⁡ G Y
31 op1stg ⊢ G ∈ C Func D ∧ Y ∈ B → 1 st ⁡ G Y = G
32 9 11 31 syl2anc ⊢ φ → 1 st ⁡ G Y = G
33 32 ad2antrr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F → 1 st ⁡ G Y = G
34 30 33 eqtrd ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F → 1 st ⁡ y = G
35 simplr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → m = F
36 simpr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → n = G
37 35 36 oveq12d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → m N n = F N G
38 22 ad2antrr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → x = F X
39 38 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ x = 2 nd ⁡ F X
40 op2ndg ⊢ F ∈ C Func D ∧ X ∈ B → 2 nd ⁡ F X = X
41 8 10 40 syl2anc ⊢ φ → 2 nd ⁡ F X = X
42 41 ad3antrrr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ F X = X
43 39 42 eqtrd ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ x = X
44 29 adantr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → y = G Y
45 44 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ y = 2 nd ⁡ G Y
46 op2ndg ⊢ G ∈ C Func D ∧ Y ∈ B → 2 nd ⁡ G Y = Y
47 9 11 46 syl2anc ⊢ φ → 2 nd ⁡ G Y = Y
48 47 ad3antrrr ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ G Y = Y
49 45 48 eqtrd ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ y = Y
50 43 49 oveq12d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ x H 2 nd ⁡ y = X H Y
51 35 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 1 st ⁡ m = 1 st ⁡ F
52 51 43 fveq12d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 1 st ⁡ m ⁡ 2 nd ⁡ x = 1 st ⁡ F ⁡ X
53 51 49 fveq12d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 1 st ⁡ m ⁡ 2 nd ⁡ y = 1 st ⁡ F ⁡ Y
54 52 53 opeq12d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y = 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y
55 36 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 1 st ⁡ n = 1 st ⁡ G
56 55 49 fveq12d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 1 st ⁡ n ⁡ 2 nd ⁡ y = 1 st ⁡ G ⁡ Y
57 54 56 oveq12d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y = 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y
58 49 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → a ⁡ 2 nd ⁡ y = a ⁡ Y
59 35 fveq2d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ m = 2 nd ⁡ F
60 59 43 49 oveq123d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y = X 2 nd ⁡ F Y
61 60 fveq1d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g = X 2 nd ⁡ F Y ⁡ g
62 57 58 61 oveq123d ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g = a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g
63 37 50 62 mpoeq123dv ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F ∧ n = G → a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g = a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g
64 28 34 63 csbied2 ⊢ φ ∧ x = F X ∧ y = G Y ∧ m = F → ⦋ 1 st ⁡ y / n⦌ a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g = a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g
65 21 27 64 csbied2 ⊢ φ ∧ x = F X ∧ y = G Y → ⦋ 1 st ⁡ x / m⦌ ⦋ 1 st ⁡ y / n⦌ a ∈ m N n , g ∈ 2 nd ⁡ x H 2 nd ⁡ y ⟼ a ⁡ 2 nd ⁡ y 1 st ⁡ m ⁡ 2 nd ⁡ x 1 st ⁡ m ⁡ 2 nd ⁡ y · ˙ 1 st ⁡ n ⁡ 2 nd ⁡ y 2 nd ⁡ x 2 nd ⁡ m 2 nd ⁡ y ⁡ g = a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g
66 8 10 opelxpd ⊢ φ → F X ∈ C Func D × B
67 9 11 opelxpd ⊢ φ → G Y ∈ C Func D × B
68 ovex ⊢ F N G ∈ V
69 ovex ⊢ X H Y ∈ V
70 68 69 mpoex ⊢ a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g ∈ V
71 70 a1i ⊢ φ → a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g ∈ V
72 20 65 66 67 71 ovmpod ⊢ φ → F X 2 nd ⁡ E G Y = a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g
73 12 72 eqtrid ⊢ φ → L = a ∈ F N G , g ∈ X H Y ⟼ a ⁡ Y 1 st ⁡ F ⁡ X 1 st ⁡ F ⁡ Y · ˙ 1 st ⁡ G ⁡ Y X 2 nd ⁡ F Y ⁡ g