Proof of Theorem yonedalem21
Step | Hyp | Ref
| Expression |
1 | | yoneda.z |
. . . . . 6
⊢ 𝑍 = (𝐻 ∘func
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂))) |
2 | 1 | fveq2i 6777 |
. . . . 5
⊢
(1st ‘𝑍) = (1st ‘(𝐻 ∘func
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)))) |
3 | 2 | oveqi 7288 |
. . . 4
⊢ (𝐹(1st ‘𝑍)𝑋) = (𝐹(1st ‘(𝐻 ∘func
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂))))𝑋) |
4 | | df-ov 7278 |
. . . 4
⊢ (𝐹(1st ‘(𝐻 ∘func
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂))))𝑋) = ((1st ‘(𝐻 ∘func
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂))))‘〈𝐹, 𝑋〉) |
5 | 3, 4 | eqtri 2766 |
. . 3
⊢ (𝐹(1st ‘𝑍)𝑋) = ((1st ‘(𝐻 ∘func
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂))))‘〈𝐹, 𝑋〉) |
6 | | eqid 2738 |
. . . . 5
⊢ (𝑄 ×c
𝑂) = (𝑄 ×c 𝑂) |
7 | | yoneda.q |
. . . . . 6
⊢ 𝑄 = (𝑂 FuncCat 𝑆) |
8 | 7 | fucbas 17677 |
. . . . 5
⊢ (𝑂 Func 𝑆) = (Base‘𝑄) |
9 | | yoneda.o |
. . . . . 6
⊢ 𝑂 = (oppCat‘𝐶) |
10 | | yoneda.b |
. . . . . 6
⊢ 𝐵 = (Base‘𝐶) |
11 | 9, 10 | oppcbas 17428 |
. . . . 5
⊢ 𝐵 = (Base‘𝑂) |
12 | 6, 8, 11 | xpcbas 17895 |
. . . 4
⊢ ((𝑂 Func 𝑆) × 𝐵) = (Base‘(𝑄 ×c 𝑂)) |
13 | | eqid 2738 |
. . . . 5
⊢
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)) = ((〈(1st
‘𝑌), tpos
(2nd ‘𝑌)〉 ∘func (𝑄
2ndF 𝑂)) 〈,〉F (𝑄
1stF 𝑂)) |
14 | | eqid 2738 |
. . . . 5
⊢
((oppCat‘𝑄)
×c 𝑄) = ((oppCat‘𝑄) ×c 𝑄) |
15 | | yoneda.c |
. . . . . . . . 9
⊢ (𝜑 → 𝐶 ∈ Cat) |
16 | 9 | oppccat 17433 |
. . . . . . . . 9
⊢ (𝐶 ∈ Cat → 𝑂 ∈ Cat) |
17 | 15, 16 | syl 17 |
. . . . . . . 8
⊢ (𝜑 → 𝑂 ∈ Cat) |
18 | | yoneda.w |
. . . . . . . . . 10
⊢ (𝜑 → 𝑉 ∈ 𝑊) |
19 | | yoneda.v |
. . . . . . . . . . 11
⊢ (𝜑 → (ran
(Homf ‘𝑄) ∪ 𝑈) ⊆ 𝑉) |
20 | 19 | unssbd 4122 |
. . . . . . . . . 10
⊢ (𝜑 → 𝑈 ⊆ 𝑉) |
21 | 18, 20 | ssexd 5248 |
. . . . . . . . 9
⊢ (𝜑 → 𝑈 ∈ V) |
22 | | yoneda.s |
. . . . . . . . . 10
⊢ 𝑆 = (SetCat‘𝑈) |
23 | 22 | setccat 17800 |
. . . . . . . . 9
⊢ (𝑈 ∈ V → 𝑆 ∈ Cat) |
24 | 21, 23 | syl 17 |
. . . . . . . 8
⊢ (𝜑 → 𝑆 ∈ Cat) |
25 | 7, 17, 24 | fuccat 17688 |
. . . . . . 7
⊢ (𝜑 → 𝑄 ∈ Cat) |
26 | | eqid 2738 |
. . . . . . 7
⊢ (𝑄
2ndF 𝑂) = (𝑄 2ndF 𝑂) |
27 | 6, 25, 17, 26 | 2ndfcl 17915 |
. . . . . 6
⊢ (𝜑 → (𝑄 2ndF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑂)) |
28 | | eqid 2738 |
. . . . . . . 8
⊢
(oppCat‘𝑄) =
(oppCat‘𝑄) |
29 | | relfunc 17577 |
. . . . . . . . 9
⊢ Rel
(𝐶 Func 𝑄) |
30 | | yoneda.y |
. . . . . . . . . 10
⊢ 𝑌 = (Yon‘𝐶) |
31 | | yoneda.u |
. . . . . . . . . 10
⊢ (𝜑 → ran
(Homf ‘𝐶) ⊆ 𝑈) |
32 | 30, 15, 9, 22, 7, 21, 31 | yoncl 17980 |
. . . . . . . . 9
⊢ (𝜑 → 𝑌 ∈ (𝐶 Func 𝑄)) |
33 | | 1st2ndbr 7883 |
. . . . . . . . 9
⊢ ((Rel
(𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → (1st ‘𝑌)(𝐶 Func 𝑄)(2nd ‘𝑌)) |
34 | 29, 32, 33 | sylancr 587 |
. . . . . . . 8
⊢ (𝜑 → (1st
‘𝑌)(𝐶 Func 𝑄)(2nd ‘𝑌)) |
35 | 9, 28, 34 | funcoppc 17590 |
. . . . . . 7
⊢ (𝜑 → (1st
‘𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd ‘𝑌)) |
36 | | df-br 5075 |
. . . . . . 7
⊢
((1st ‘𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd ‘𝑌) ↔ 〈(1st
‘𝑌), tpos
(2nd ‘𝑌)〉 ∈ (𝑂 Func (oppCat‘𝑄))) |
37 | 35, 36 | sylib 217 |
. . . . . 6
⊢ (𝜑 → 〈(1st
‘𝑌), tpos
(2nd ‘𝑌)〉 ∈ (𝑂 Func (oppCat‘𝑄))) |
38 | 27, 37 | cofucl 17603 |
. . . . 5
⊢ (𝜑 → (〈(1st
‘𝑌), tpos
(2nd ‘𝑌)〉 ∘func (𝑄
2ndF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func (oppCat‘𝑄))) |
39 | | eqid 2738 |
. . . . . 6
⊢ (𝑄
1stF 𝑂) = (𝑄 1stF 𝑂) |
40 | 6, 25, 17, 39 | 1stfcl 17914 |
. . . . 5
⊢ (𝜑 → (𝑄 1stF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑄)) |
41 | 13, 14, 38, 40 | prfcl 17920 |
. . . 4
⊢ (𝜑 → ((〈(1st
‘𝑌), tpos
(2nd ‘𝑌)〉 ∘func (𝑄
2ndF 𝑂)) 〈,〉F (𝑄
1stF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func ((oppCat‘𝑄) ×c
𝑄))) |
42 | | yoneda.h |
. . . . 5
⊢ 𝐻 =
(HomF‘𝑄) |
43 | | yoneda.t |
. . . . 5
⊢ 𝑇 = (SetCat‘𝑉) |
44 | 19 | unssad 4121 |
. . . . 5
⊢ (𝜑 → ran
(Homf ‘𝑄) ⊆ 𝑉) |
45 | 42, 28, 43, 25, 18, 44 | hofcl 17977 |
. . . 4
⊢ (𝜑 → 𝐻 ∈ (((oppCat‘𝑄) ×c 𝑄) Func 𝑇)) |
46 | | yonedalem21.f |
. . . . 5
⊢ (𝜑 → 𝐹 ∈ (𝑂 Func 𝑆)) |
47 | | yonedalem21.x |
. . . . 5
⊢ (𝜑 → 𝑋 ∈ 𝐵) |
48 | 46, 47 | opelxpd 5627 |
. . . 4
⊢ (𝜑 → 〈𝐹, 𝑋〉 ∈ ((𝑂 Func 𝑆) × 𝐵)) |
49 | 12, 41, 45, 48 | cofu1 17599 |
. . 3
⊢ (𝜑 → ((1st
‘(𝐻
∘func ((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂))))‘〈𝐹, 𝑋〉) = ((1st ‘𝐻)‘((1st
‘((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)))‘〈𝐹, 𝑋〉))) |
50 | 5, 49 | eqtrid 2790 |
. 2
⊢ (𝜑 → (𝐹(1st ‘𝑍)𝑋) = ((1st ‘𝐻)‘((1st
‘((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)))‘〈𝐹, 𝑋〉))) |
51 | | eqid 2738 |
. . . . . 6
⊢ (Hom
‘(𝑄
×c 𝑂)) = (Hom ‘(𝑄 ×c 𝑂)) |
52 | 13, 12, 51, 38, 40, 48 | prf1 17917 |
. . . . 5
⊢ (𝜑 → ((1st
‘((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)))‘〈𝐹, 𝑋〉) = 〈((1st
‘(〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂)))‘〈𝐹, 𝑋〉), ((1st ‘(𝑄
1stF 𝑂))‘〈𝐹, 𝑋〉)〉) |
53 | 12, 27, 37, 48 | cofu1 17599 |
. . . . . . 7
⊢ (𝜑 → ((1st
‘(〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂)))‘〈𝐹, 𝑋〉) = ((1st
‘〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉)‘((1st
‘(𝑄
2ndF 𝑂))‘〈𝐹, 𝑋〉))) |
54 | | fvex 6787 |
. . . . . . . . . 10
⊢
(1st ‘𝑌) ∈ V |
55 | | fvex 6787 |
. . . . . . . . . . 11
⊢
(2nd ‘𝑌) ∈ V |
56 | 55 | tposex 8076 |
. . . . . . . . . 10
⊢ tpos
(2nd ‘𝑌)
∈ V |
57 | 54, 56 | op1st 7839 |
. . . . . . . . 9
⊢
(1st ‘〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉) = (1st
‘𝑌) |
58 | 57 | a1i 11 |
. . . . . . . 8
⊢ (𝜑 → (1st
‘〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉) = (1st
‘𝑌)) |
59 | 6, 12, 51, 25, 17, 26, 48 | 2ndf1 17912 |
. . . . . . . . 9
⊢ (𝜑 → ((1st
‘(𝑄
2ndF 𝑂))‘〈𝐹, 𝑋〉) = (2nd ‘〈𝐹, 𝑋〉)) |
60 | | op2ndg 7844 |
. . . . . . . . . 10
⊢ ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋 ∈ 𝐵) → (2nd ‘〈𝐹, 𝑋〉) = 𝑋) |
61 | 46, 47, 60 | syl2anc 584 |
. . . . . . . . 9
⊢ (𝜑 → (2nd
‘〈𝐹, 𝑋〉) = 𝑋) |
62 | 59, 61 | eqtrd 2778 |
. . . . . . . 8
⊢ (𝜑 → ((1st
‘(𝑄
2ndF 𝑂))‘〈𝐹, 𝑋〉) = 𝑋) |
63 | 58, 62 | fveq12d 6781 |
. . . . . . 7
⊢ (𝜑 → ((1st
‘〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉)‘((1st
‘(𝑄
2ndF 𝑂))‘〈𝐹, 𝑋〉)) = ((1st ‘𝑌)‘𝑋)) |
64 | 53, 63 | eqtrd 2778 |
. . . . . 6
⊢ (𝜑 → ((1st
‘(〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂)))‘〈𝐹, 𝑋〉) = ((1st ‘𝑌)‘𝑋)) |
65 | 6, 12, 51, 25, 17, 39, 48 | 1stf1 17909 |
. . . . . . 7
⊢ (𝜑 → ((1st
‘(𝑄
1stF 𝑂))‘〈𝐹, 𝑋〉) = (1st ‘〈𝐹, 𝑋〉)) |
66 | | op1stg 7843 |
. . . . . . . 8
⊢ ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋 ∈ 𝐵) → (1st ‘〈𝐹, 𝑋〉) = 𝐹) |
67 | 46, 47, 66 | syl2anc 584 |
. . . . . . 7
⊢ (𝜑 → (1st
‘〈𝐹, 𝑋〉) = 𝐹) |
68 | 65, 67 | eqtrd 2778 |
. . . . . 6
⊢ (𝜑 → ((1st
‘(𝑄
1stF 𝑂))‘〈𝐹, 𝑋〉) = 𝐹) |
69 | 64, 68 | opeq12d 4812 |
. . . . 5
⊢ (𝜑 → 〈((1st
‘(〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂)))‘〈𝐹, 𝑋〉), ((1st ‘(𝑄
1stF 𝑂))‘〈𝐹, 𝑋〉)〉 = 〈((1st
‘𝑌)‘𝑋), 𝐹〉) |
70 | 52, 69 | eqtrd 2778 |
. . . 4
⊢ (𝜑 → ((1st
‘((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)))‘〈𝐹, 𝑋〉) = 〈((1st
‘𝑌)‘𝑋), 𝐹〉) |
71 | 70 | fveq2d 6778 |
. . 3
⊢ (𝜑 → ((1st
‘𝐻)‘((1st
‘((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)))‘〈𝐹, 𝑋〉)) = ((1st ‘𝐻)‘〈((1st
‘𝑌)‘𝑋), 𝐹〉)) |
72 | | df-ov 7278 |
. . 3
⊢
(((1st ‘𝑌)‘𝑋)(1st ‘𝐻)𝐹) = ((1st ‘𝐻)‘〈((1st
‘𝑌)‘𝑋), 𝐹〉) |
73 | 71, 72 | eqtr4di 2796 |
. 2
⊢ (𝜑 → ((1st
‘𝐻)‘((1st
‘((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂)))‘〈𝐹, 𝑋〉)) = (((1st ‘𝑌)‘𝑋)(1st ‘𝐻)𝐹)) |
74 | | eqid 2738 |
. . . 4
⊢ (𝑂 Nat 𝑆) = (𝑂 Nat 𝑆) |
75 | 7, 74 | fuchom 17678 |
. . 3
⊢ (𝑂 Nat 𝑆) = (Hom ‘𝑄) |
76 | 30, 10, 15, 47, 9, 22, 21, 31 | yon1cl 17981 |
. . 3
⊢ (𝜑 → ((1st
‘𝑌)‘𝑋) ∈ (𝑂 Func 𝑆)) |
77 | 42, 25, 8, 75, 76, 46 | hof1 17972 |
. 2
⊢ (𝜑 → (((1st
‘𝑌)‘𝑋)(1st ‘𝐻)𝐹) = (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) |
78 | 50, 73, 77 | 3eqtrd 2782 |
1
⊢ (𝜑 → (𝐹(1st ‘𝑍)𝑋) = (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) |