Metamath Proof Explorer


Theorem yonedalem3a

Description: Lemma for yoneda . (Contributed by Mario Carneiro, 29-Jan-2017)

Ref Expression
Hypotheses yoneda.y ⊢ Y = Yon ⁡ C
yoneda.b ⊢ B = Base C
yoneda.1 ⊢ 1 ˙ = Id ⁡ C
yoneda.o ⊢ O = oppCat ⁡ C
yoneda.s ⊢ S = SetCat ⁡ U
yoneda.t ⊢ T = SetCat ⁡ V
yoneda.q ⊢ Q = O FuncCat S
yoneda.h ⊢ H = Hom F ⁡ Q
yoneda.r ⊢ R = Q × c O FuncCat T
yoneda.e ⊢ E = O eval F S
yoneda.z ⊢ Z = H ∘ func 1 st ⁡ Y tpos 2 nd ⁡ Y ∘ func Q 2 nd F O ⟨,⟩ F Q 1 st F O
yoneda.c ⊢ φ → C ∈ Cat
yoneda.w ⊢ φ → V ∈ W
yoneda.u ⊢ φ → ran ⁡ Hom 𝑓 ⁡ C ⊆ U
yoneda.v ⊢ φ → ran ⁡ Hom 𝑓 ⁡ Q ∪ U ⊆ V
yonedalem21.f ⊢ φ → F ∈ O Func S
yonedalem21.x ⊢ φ → X ∈ B
yonedalem3a.m ⊢ M = f ∈ O Func S , x ∈ B ⟼ a ∈ 1 st ⁡ Y ⁡ x O Nat S f ⟼ a ⁡ x ⁡ 1 ˙ ⁡ x
Assertion yonedalem3a ⊢ φ → F M X = a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X ∧ F M X : F 1 st ⁡ Z X ⟶ F 1 st ⁡ E X

Proof

Step Hyp Ref Expression
1 yoneda.y ⊢ Y = Yon ⁡ C
2 yoneda.b ⊢ B = Base C
3 yoneda.1 ⊢ 1 ˙ = Id ⁡ C
4 yoneda.o ⊢ O = oppCat ⁡ C
5 yoneda.s ⊢ S = SetCat ⁡ U
6 yoneda.t ⊢ T = SetCat ⁡ V
7 yoneda.q ⊢ Q = O FuncCat S
8 yoneda.h ⊢ H = Hom F ⁡ Q
9 yoneda.r ⊢ R = Q × c O FuncCat T
10 yoneda.e ⊢ E = O eval F S
11 yoneda.z ⊢ Z = H ∘ func 1 st ⁡ Y tpos 2 nd ⁡ Y ∘ func Q 2 nd F O ⟨,⟩ F Q 1 st F O
12 yoneda.c ⊢ φ → C ∈ Cat
13 yoneda.w ⊢ φ → V ∈ W
14 yoneda.u ⊢ φ → ran ⁡ Hom 𝑓 ⁡ C ⊆ U
15 yoneda.v ⊢ φ → ran ⁡ Hom 𝑓 ⁡ Q ∪ U ⊆ V
16 yonedalem21.f ⊢ φ → F ∈ O Func S
17 yonedalem21.x ⊢ φ → X ∈ B
18 yonedalem3a.m ⊢ M = f ∈ O Func S , x ∈ B ⟼ a ∈ 1 st ⁡ Y ⁡ x O Nat S f ⟼ a ⁡ x ⁡ 1 ˙ ⁡ x
19 simpr ⊢ f = F ∧ x = X → x = X
20 19 fveq2d ⊢ f = F ∧ x = X → 1 st ⁡ Y ⁡ x = 1 st ⁡ Y ⁡ X
21 simpl ⊢ f = F ∧ x = X → f = F
22 20 21 oveq12d ⊢ f = F ∧ x = X → 1 st ⁡ Y ⁡ x O Nat S f = 1 st ⁡ Y ⁡ X O Nat S F
23 19 fveq2d ⊢ f = F ∧ x = X → a ⁡ x = a ⁡ X
24 19 fveq2d ⊢ f = F ∧ x = X → 1 ˙ ⁡ x = 1 ˙ ⁡ X
25 23 24 fveq12d ⊢ f = F ∧ x = X → a ⁡ x ⁡ 1 ˙ ⁡ x = a ⁡ X ⁡ 1 ˙ ⁡ X
26 22 25 mpteq12dv ⊢ f = F ∧ x = X → a ∈ 1 st ⁡ Y ⁡ x O Nat S f ⟼ a ⁡ x ⁡ 1 ˙ ⁡ x = a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X
27 ovex ⊢ 1 st ⁡ Y ⁡ X O Nat S F ∈ V
28 27 mptex ⊢ a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X ∈ V
29 26 18 28 ovmpoa ⊢ F ∈ O Func S ∧ X ∈ B → F M X = a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X
30 16 17 29 syl2anc ⊢ φ → F M X = a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X
31 eqid ⊢ O Nat S = O Nat S
32 simpr ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → a ∈ 1 st ⁡ Y ⁡ X O Nat S F
33 31 32 nat1st2nd ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → a ∈ 1 st ⁡ 1 st ⁡ Y ⁡ X 2 nd ⁡ 1 st ⁡ Y ⁡ X O Nat S 1 st ⁡ F 2 nd ⁡ F
34 4 2 oppcbas ⊢ B = Base O
35 eqid ⊢ Hom ⁡ S = Hom ⁡ S
36 17 adantr ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → X ∈ B
37 31 33 34 35 36 natcl ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → a ⁡ X ∈ 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X Hom ⁡ S 1 st ⁡ F ⁡ X
38 15 unssbd ⊢ φ → U ⊆ V
39 13 38 ssexd ⊢ φ → U ∈ V
40 39 adantr ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → U ∈ V
41 eqid ⊢ Base S = Base S
42 relfunc ⊢ Rel ⁡ O Func S
43 1 2 12 17 4 5 39 14 yon1cl ⊢ φ → 1 st ⁡ Y ⁡ X ∈ O Func S
44 1st2ndbr ⊢ Rel ⁡ O Func S ∧ 1 st ⁡ Y ⁡ X ∈ O Func S → 1 st ⁡ 1 st ⁡ Y ⁡ X O Func S 2 nd ⁡ 1 st ⁡ Y ⁡ X
45 42 43 44 sylancr ⊢ φ → 1 st ⁡ 1 st ⁡ Y ⁡ X O Func S 2 nd ⁡ 1 st ⁡ Y ⁡ X
46 34 41 45 funcf1 ⊢ φ → 1 st ⁡ 1 st ⁡ Y ⁡ X : B ⟶ Base S
47 46 17 ffvelcdmd ⊢ φ → 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X ∈ Base S
48 5 39 setcbas ⊢ φ → U = Base S
49 47 48 eleqtrrd ⊢ φ → 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X ∈ U
50 49 adantr ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X ∈ U
51 1st2ndbr ⊢ Rel ⁡ O Func S ∧ F ∈ O Func S → 1 st ⁡ F O Func S 2 nd ⁡ F
52 42 16 51 sylancr ⊢ φ → 1 st ⁡ F O Func S 2 nd ⁡ F
53 34 41 52 funcf1 ⊢ φ → 1 st ⁡ F : B ⟶ Base S
54 53 17 ffvelcdmd ⊢ φ → 1 st ⁡ F ⁡ X ∈ Base S
55 54 48 eleqtrrd ⊢ φ → 1 st ⁡ F ⁡ X ∈ U
56 55 adantr ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → 1 st ⁡ F ⁡ X ∈ U
57 5 40 35 50 56 elsetchom ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → a ⁡ X ∈ 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X Hom ⁡ S 1 st ⁡ F ⁡ X ↔ a ⁡ X : 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X ⟶ 1 st ⁡ F ⁡ X
58 37 57 mpbid ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → a ⁡ X : 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X ⟶ 1 st ⁡ F ⁡ X
59 eqid ⊢ Hom ⁡ C = Hom ⁡ C
60 2 59 3 12 17 catidcl ⊢ φ → 1 ˙ ⁡ X ∈ X Hom ⁡ C X
61 1 2 12 17 59 17 yon11 ⊢ φ → 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X = X Hom ⁡ C X
62 60 61 eleqtrrd ⊢ φ → 1 ˙ ⁡ X ∈ 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X
63 62 adantr ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → 1 ˙ ⁡ X ∈ 1 st ⁡ 1 st ⁡ Y ⁡ X ⁡ X
64 58 63 ffvelcdmd ⊢ φ ∧ a ∈ 1 st ⁡ Y ⁡ X O Nat S F → a ⁡ X ⁡ 1 ˙ ⁡ X ∈ 1 st ⁡ F ⁡ X
65 64 fmpttd ⊢ φ → a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X : 1 st ⁡ Y ⁡ X O Nat S F ⟶ 1 st ⁡ F ⁡ X
66 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 yonedalem21 ⊢ φ → F 1 st ⁡ Z X = 1 st ⁡ Y ⁡ X O Nat S F
67 4 oppccat ⊢ C ∈ Cat → O ∈ Cat
68 12 67 syl ⊢ φ → O ∈ Cat
69 5 setccat ⊢ U ∈ V → S ∈ Cat
70 39 69 syl ⊢ φ → S ∈ Cat
71 10 68 70 34 16 17 evlf1 ⊢ φ → F 1 st ⁡ E X = 1 st ⁡ F ⁡ X
72 30 66 71 feq123d ⊢ φ → F M X : F 1 st ⁡ Z X ⟶ F 1 st ⁡ E X ↔ a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X : 1 st ⁡ Y ⁡ X O Nat S F ⟶ 1 st ⁡ F ⁡ X
73 65 72 mpbird ⊢ φ → F M X : F 1 st ⁡ Z X ⟶ F 1 st ⁡ E X
74 30 73 jca ⊢ φ → F M X = a ∈ 1 st ⁡ Y ⁡ X O Nat S F ⟼ a ⁡ X ⁡ 1 ˙ ⁡ X ∧ F M X : F 1 st ⁡ Z X ⟶ F 1 st ⁡ E X