Proof of Theorem yonedalem3a
| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | yonedalem21.f | . . 3
⊢ (𝜑 → 𝐹 ∈ (𝑂 Func 𝑆)) | 
| 2 |  | yonedalem21.x | . . 3
⊢ (𝜑 → 𝑋 ∈ 𝐵) | 
| 3 |  | simpr 484 | . . . . . . 7
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → 𝑥 = 𝑋) | 
| 4 | 3 | fveq2d 6909 | . . . . . 6
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → ((1st ‘𝑌)‘𝑥) = ((1st ‘𝑌)‘𝑋)) | 
| 5 |  | simpl 482 | . . . . . 6
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → 𝑓 = 𝐹) | 
| 6 | 4, 5 | oveq12d 7450 | . . . . 5
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → (((1st ‘𝑌)‘𝑥)(𝑂 Nat 𝑆)𝑓) = (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) | 
| 7 | 3 | fveq2d 6909 | . . . . . 6
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → (𝑎‘𝑥) = (𝑎‘𝑋)) | 
| 8 | 3 | fveq2d 6909 | . . . . . 6
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → ( 1 ‘𝑥) = ( 1 ‘𝑋)) | 
| 9 | 7, 8 | fveq12d 6912 | . . . . 5
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → ((𝑎‘𝑥)‘( 1 ‘𝑥)) = ((𝑎‘𝑋)‘( 1 ‘𝑋))) | 
| 10 | 6, 9 | mpteq12dv 5232 | . . . 4
⊢ ((𝑓 = 𝐹 ∧ 𝑥 = 𝑋) → (𝑎 ∈ (((1st ‘𝑌)‘𝑥)(𝑂 Nat 𝑆)𝑓) ↦ ((𝑎‘𝑥)‘( 1 ‘𝑥))) = (𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ↦ ((𝑎‘𝑋)‘( 1 ‘𝑋)))) | 
| 11 |  | yonedalem3a.m | . . . 4
⊢ 𝑀 = (𝑓 ∈ (𝑂 Func 𝑆), 𝑥 ∈ 𝐵 ↦ (𝑎 ∈ (((1st ‘𝑌)‘𝑥)(𝑂 Nat 𝑆)𝑓) ↦ ((𝑎‘𝑥)‘( 1 ‘𝑥)))) | 
| 12 |  | ovex 7465 | . . . . 5
⊢
(((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ∈ V | 
| 13 | 12 | mptex 7244 | . . . 4
⊢ (𝑎 ∈ (((1st
‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ↦ ((𝑎‘𝑋)‘( 1 ‘𝑋))) ∈ V | 
| 14 | 10, 11, 13 | ovmpoa 7589 | . . 3
⊢ ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋 ∈ 𝐵) → (𝐹𝑀𝑋) = (𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ↦ ((𝑎‘𝑋)‘( 1 ‘𝑋)))) | 
| 15 | 1, 2, 14 | syl2anc 584 | . 2
⊢ (𝜑 → (𝐹𝑀𝑋) = (𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ↦ ((𝑎‘𝑋)‘( 1 ‘𝑋)))) | 
| 16 |  | eqid 2736 | . . . . . . 7
⊢ (𝑂 Nat 𝑆) = (𝑂 Nat 𝑆) | 
| 17 |  | simpr 484 | . . . . . . . 8
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) | 
| 18 | 16, 17 | nat1st2nd 18000 | . . . . . . 7
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → 𝑎 ∈ (〈(1st
‘((1st ‘𝑌)‘𝑋)), (2nd ‘((1st
‘𝑌)‘𝑋))〉(𝑂 Nat 𝑆)〈(1st ‘𝐹), (2nd ‘𝐹)〉)) | 
| 19 |  | yoneda.o | . . . . . . . 8
⊢ 𝑂 = (oppCat‘𝐶) | 
| 20 |  | yoneda.b | . . . . . . . 8
⊢ 𝐵 = (Base‘𝐶) | 
| 21 | 19, 20 | oppcbas 17762 | . . . . . . 7
⊢ 𝐵 = (Base‘𝑂) | 
| 22 |  | eqid 2736 | . . . . . . 7
⊢ (Hom
‘𝑆) = (Hom
‘𝑆) | 
| 23 | 2 | adantr 480 | . . . . . . 7
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → 𝑋 ∈ 𝐵) | 
| 24 | 16, 18, 21, 22, 23 | natcl 18002 | . . . . . 6
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → (𝑎‘𝑋) ∈ (((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋)(Hom ‘𝑆)((1st ‘𝐹)‘𝑋))) | 
| 25 |  | yoneda.s | . . . . . . 7
⊢ 𝑆 = (SetCat‘𝑈) | 
| 26 |  | yoneda.w | . . . . . . . . 9
⊢ (𝜑 → 𝑉 ∈ 𝑊) | 
| 27 |  | yoneda.v | . . . . . . . . . 10
⊢ (𝜑 → (ran
(Homf ‘𝑄) ∪ 𝑈) ⊆ 𝑉) | 
| 28 | 27 | unssbd 4193 | . . . . . . . . 9
⊢ (𝜑 → 𝑈 ⊆ 𝑉) | 
| 29 | 26, 28 | ssexd 5323 | . . . . . . . 8
⊢ (𝜑 → 𝑈 ∈ V) | 
| 30 | 29 | adantr 480 | . . . . . . 7
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → 𝑈 ∈ V) | 
| 31 |  | eqid 2736 | . . . . . . . . . . 11
⊢
(Base‘𝑆) =
(Base‘𝑆) | 
| 32 |  | relfunc 17908 | . . . . . . . . . . . 12
⊢ Rel
(𝑂 Func 𝑆) | 
| 33 |  | yoneda.y | . . . . . . . . . . . . 13
⊢ 𝑌 = (Yon‘𝐶) | 
| 34 |  | yoneda.c | . . . . . . . . . . . . 13
⊢ (𝜑 → 𝐶 ∈ Cat) | 
| 35 |  | yoneda.u | . . . . . . . . . . . . 13
⊢ (𝜑 → ran
(Homf ‘𝐶) ⊆ 𝑈) | 
| 36 | 33, 20, 34, 2, 19, 25, 29, 35 | yon1cl 18309 | . . . . . . . . . . . 12
⊢ (𝜑 → ((1st
‘𝑌)‘𝑋) ∈ (𝑂 Func 𝑆)) | 
| 37 |  | 1st2ndbr 8068 | . . . . . . . . . . . 12
⊢ ((Rel
(𝑂 Func 𝑆) ∧ ((1st ‘𝑌)‘𝑋) ∈ (𝑂 Func 𝑆)) → (1st
‘((1st ‘𝑌)‘𝑋))(𝑂 Func 𝑆)(2nd ‘((1st
‘𝑌)‘𝑋))) | 
| 38 | 32, 36, 37 | sylancr 587 | . . . . . . . . . . 11
⊢ (𝜑 → (1st
‘((1st ‘𝑌)‘𝑋))(𝑂 Func 𝑆)(2nd ‘((1st
‘𝑌)‘𝑋))) | 
| 39 | 21, 31, 38 | funcf1 17912 | . . . . . . . . . 10
⊢ (𝜑 → (1st
‘((1st ‘𝑌)‘𝑋)):𝐵⟶(Base‘𝑆)) | 
| 40 | 39, 2 | ffvelcdmd 7104 | . . . . . . . . 9
⊢ (𝜑 → ((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋) ∈ (Base‘𝑆)) | 
| 41 | 25, 29 | setcbas 18124 | . . . . . . . . 9
⊢ (𝜑 → 𝑈 = (Base‘𝑆)) | 
| 42 | 40, 41 | eleqtrrd 2843 | . . . . . . . 8
⊢ (𝜑 → ((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋) ∈ 𝑈) | 
| 43 | 42 | adantr 480 | . . . . . . 7
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → ((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋) ∈ 𝑈) | 
| 44 |  | 1st2ndbr 8068 | . . . . . . . . . . . 12
⊢ ((Rel
(𝑂 Func 𝑆) ∧ 𝐹 ∈ (𝑂 Func 𝑆)) → (1st ‘𝐹)(𝑂 Func 𝑆)(2nd ‘𝐹)) | 
| 45 | 32, 1, 44 | sylancr 587 | . . . . . . . . . . 11
⊢ (𝜑 → (1st
‘𝐹)(𝑂 Func 𝑆)(2nd ‘𝐹)) | 
| 46 | 21, 31, 45 | funcf1 17912 | . . . . . . . . . 10
⊢ (𝜑 → (1st
‘𝐹):𝐵⟶(Base‘𝑆)) | 
| 47 | 46, 2 | ffvelcdmd 7104 | . . . . . . . . 9
⊢ (𝜑 → ((1st
‘𝐹)‘𝑋) ∈ (Base‘𝑆)) | 
| 48 | 47, 41 | eleqtrrd 2843 | . . . . . . . 8
⊢ (𝜑 → ((1st
‘𝐹)‘𝑋) ∈ 𝑈) | 
| 49 | 48 | adantr 480 | . . . . . . 7
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → ((1st ‘𝐹)‘𝑋) ∈ 𝑈) | 
| 50 | 25, 30, 22, 43, 49 | elsetchom 18127 | . . . . . 6
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → ((𝑎‘𝑋) ∈ (((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋)(Hom ‘𝑆)((1st ‘𝐹)‘𝑋)) ↔ (𝑎‘𝑋):((1st ‘((1st
‘𝑌)‘𝑋))‘𝑋)⟶((1st ‘𝐹)‘𝑋))) | 
| 51 | 24, 50 | mpbid 232 | . . . . 5
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → (𝑎‘𝑋):((1st ‘((1st
‘𝑌)‘𝑋))‘𝑋)⟶((1st ‘𝐹)‘𝑋)) | 
| 52 |  | eqid 2736 | . . . . . . . 8
⊢ (Hom
‘𝐶) = (Hom
‘𝐶) | 
| 53 |  | yoneda.1 | . . . . . . . 8
⊢  1 =
(Id‘𝐶) | 
| 54 | 20, 52, 53, 34, 2 | catidcl 17726 | . . . . . . 7
⊢ (𝜑 → ( 1 ‘𝑋) ∈ (𝑋(Hom ‘𝐶)𝑋)) | 
| 55 | 33, 20, 34, 2, 52, 2 | yon11 18310 | . . . . . . 7
⊢ (𝜑 → ((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋) = (𝑋(Hom ‘𝐶)𝑋)) | 
| 56 | 54, 55 | eleqtrrd 2843 | . . . . . 6
⊢ (𝜑 → ( 1 ‘𝑋) ∈ ((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋)) | 
| 57 | 56 | adantr 480 | . . . . 5
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → ( 1 ‘𝑋) ∈ ((1st
‘((1st ‘𝑌)‘𝑋))‘𝑋)) | 
| 58 | 51, 57 | ffvelcdmd 7104 | . . . 4
⊢ ((𝜑 ∧ 𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) → ((𝑎‘𝑋)‘( 1 ‘𝑋)) ∈ ((1st ‘𝐹)‘𝑋)) | 
| 59 | 58 | fmpttd 7134 | . . 3
⊢ (𝜑 → (𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ↦ ((𝑎‘𝑋)‘( 1 ‘𝑋))):(((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)⟶((1st ‘𝐹)‘𝑋)) | 
| 60 |  | yoneda.t | . . . . 5
⊢ 𝑇 = (SetCat‘𝑉) | 
| 61 |  | yoneda.q | . . . . 5
⊢ 𝑄 = (𝑂 FuncCat 𝑆) | 
| 62 |  | yoneda.h | . . . . 5
⊢ 𝐻 =
(HomF‘𝑄) | 
| 63 |  | yoneda.r | . . . . 5
⊢ 𝑅 = ((𝑄 ×c 𝑂) FuncCat 𝑇) | 
| 64 |  | yoneda.e | . . . . 5
⊢ 𝐸 = (𝑂 evalF 𝑆) | 
| 65 |  | yoneda.z | . . . . 5
⊢ 𝑍 = (𝐻 ∘func
((〈(1st ‘𝑌), tpos (2nd ‘𝑌)〉
∘func (𝑄 2ndF 𝑂))
〈,〉F (𝑄 1stF 𝑂))) | 
| 66 | 33, 20, 53, 19, 25, 60, 61, 62, 63, 64, 65, 34, 26, 35, 27, 1, 2 | yonedalem21 18319 | . . . 4
⊢ (𝜑 → (𝐹(1st ‘𝑍)𝑋) = (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)) | 
| 67 | 19 | oppccat 17766 | . . . . . 6
⊢ (𝐶 ∈ Cat → 𝑂 ∈ Cat) | 
| 68 | 34, 67 | syl 17 | . . . . 5
⊢ (𝜑 → 𝑂 ∈ Cat) | 
| 69 | 25 | setccat 18131 | . . . . . 6
⊢ (𝑈 ∈ V → 𝑆 ∈ Cat) | 
| 70 | 29, 69 | syl 17 | . . . . 5
⊢ (𝜑 → 𝑆 ∈ Cat) | 
| 71 | 64, 68, 70, 21, 1, 2 | evlf1 18266 | . . . 4
⊢ (𝜑 → (𝐹(1st ‘𝐸)𝑋) = ((1st ‘𝐹)‘𝑋)) | 
| 72 | 15, 66, 71 | feq123d 6724 | . . 3
⊢ (𝜑 → ((𝐹𝑀𝑋):(𝐹(1st ‘𝑍)𝑋)⟶(𝐹(1st ‘𝐸)𝑋) ↔ (𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ↦ ((𝑎‘𝑋)‘( 1 ‘𝑋))):(((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹)⟶((1st ‘𝐹)‘𝑋))) | 
| 73 | 59, 72 | mpbird 257 | . 2
⊢ (𝜑 → (𝐹𝑀𝑋):(𝐹(1st ‘𝑍)𝑋)⟶(𝐹(1st ‘𝐸)𝑋)) | 
| 74 | 15, 73 | jca 511 | 1
⊢ (𝜑 → ((𝐹𝑀𝑋) = (𝑎 ∈ (((1st ‘𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹) ↦ ((𝑎‘𝑋)‘( 1 ‘𝑋))) ∧ (𝐹𝑀𝑋):(𝐹(1st ‘𝑍)𝑋)⟶(𝐹(1st ‘𝐸)𝑋))) |