MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  yonedalem21 Structured version   Visualization version   GIF version

Theorem yonedalem21 18285
Description: Lemma for yoneda 18295. (Contributed by Mario Carneiro, 28-Jan-2017.)
Hypotheses
Ref Expression
yoneda.y 𝑌 = (Yon‘𝐶)
yoneda.b 𝐵 = (Base‘𝐶)
yoneda.1 1 = (Id‘𝐶)
yoneda.o 𝑂 = (oppCat‘𝐶)
yoneda.s 𝑆 = (SetCat‘𝑈)
yoneda.t 𝑇 = (SetCat‘𝑉)
yoneda.q 𝑄 = (𝑂 FuncCat 𝑆)
yoneda.h 𝐻 = (HomF𝑄)
yoneda.r 𝑅 = ((𝑄 ×c 𝑂) FuncCat 𝑇)
yoneda.e 𝐸 = (𝑂 evalF 𝑆)
yoneda.z 𝑍 = (𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))
yoneda.c (𝜑𝐶 ∈ Cat)
yoneda.w (𝜑𝑉𝑊)
yoneda.u (𝜑 → ran (Homf𝐶) ⊆ 𝑈)
yoneda.v (𝜑 → (ran (Homf𝑄) ∪ 𝑈) ⊆ 𝑉)
yonedalem21.f (𝜑𝐹 ∈ (𝑂 Func 𝑆))
yonedalem21.x (𝜑𝑋𝐵)
Assertion
Ref Expression
yonedalem21 (𝜑 → (𝐹(1st𝑍)𝑋) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))

Proof of Theorem yonedalem21
StepHypRef Expression
1 yoneda.z . . . . . 6 𝑍 = (𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))
21fveq2i 6879 . . . . 5 (1st𝑍) = (1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))
32oveqi 7418 . . . 4 (𝐹(1st𝑍)𝑋) = (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋)
4 df-ov 7408 . . . 4 (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
53, 4eqtri 2758 . . 3 (𝐹(1st𝑍)𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
6 eqid 2735 . . . . 5 (𝑄 ×c 𝑂) = (𝑄 ×c 𝑂)
7 yoneda.q . . . . . 6 𝑄 = (𝑂 FuncCat 𝑆)
87fucbas 17976 . . . . 5 (𝑂 Func 𝑆) = (Base‘𝑄)
9 yoneda.o . . . . . 6 𝑂 = (oppCat‘𝐶)
10 yoneda.b . . . . . 6 𝐵 = (Base‘𝐶)
119, 10oppcbas 17730 . . . . 5 𝐵 = (Base‘𝑂)
126, 8, 11xpcbas 18190 . . . 4 ((𝑂 Func 𝑆) × 𝐵) = (Base‘(𝑄 ×c 𝑂))
13 eqid 2735 . . . . 5 ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) = ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))
14 eqid 2735 . . . . 5 ((oppCat‘𝑄) ×c 𝑄) = ((oppCat‘𝑄) ×c 𝑄)
15 yoneda.c . . . . . . . . 9 (𝜑𝐶 ∈ Cat)
169oppccat 17734 . . . . . . . . 9 (𝐶 ∈ Cat → 𝑂 ∈ Cat)
1715, 16syl 17 . . . . . . . 8 (𝜑𝑂 ∈ Cat)
18 yoneda.w . . . . . . . . . 10 (𝜑𝑉𝑊)
19 yoneda.v . . . . . . . . . . 11 (𝜑 → (ran (Homf𝑄) ∪ 𝑈) ⊆ 𝑉)
2019unssbd 4169 . . . . . . . . . 10 (𝜑𝑈𝑉)
2118, 20ssexd 5294 . . . . . . . . 9 (𝜑𝑈 ∈ V)
22 yoneda.s . . . . . . . . . 10 𝑆 = (SetCat‘𝑈)
2322setccat 18098 . . . . . . . . 9 (𝑈 ∈ V → 𝑆 ∈ Cat)
2421, 23syl 17 . . . . . . . 8 (𝜑𝑆 ∈ Cat)
257, 17, 24fuccat 17986 . . . . . . 7 (𝜑𝑄 ∈ Cat)
26 eqid 2735 . . . . . . 7 (𝑄 2ndF 𝑂) = (𝑄 2ndF 𝑂)
276, 25, 17, 262ndfcl 18210 . . . . . 6 (𝜑 → (𝑄 2ndF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑂))
28 eqid 2735 . . . . . . . 8 (oppCat‘𝑄) = (oppCat‘𝑄)
29 relfunc 17875 . . . . . . . . 9 Rel (𝐶 Func 𝑄)
30 yoneda.y . . . . . . . . . 10 𝑌 = (Yon‘𝐶)
31 yoneda.u . . . . . . . . . 10 (𝜑 → ran (Homf𝐶) ⊆ 𝑈)
3230, 15, 9, 22, 7, 21, 31yoncl 18274 . . . . . . . . 9 (𝜑𝑌 ∈ (𝐶 Func 𝑄))
33 1st2ndbr 8041 . . . . . . . . 9 ((Rel (𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
3429, 32, 33sylancr 587 . . . . . . . 8 (𝜑 → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
359, 28, 34funcoppc 17888 . . . . . . 7 (𝜑 → (1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌))
36 df-br 5120 . . . . . . 7 ((1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌) ↔ ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3735, 36sylib 218 . . . . . 6 (𝜑 → ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3827, 37cofucl 17901 . . . . 5 (𝜑 → (⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func (oppCat‘𝑄)))
39 eqid 2735 . . . . . 6 (𝑄 1stF 𝑂) = (𝑄 1stF 𝑂)
406, 25, 17, 391stfcl 18209 . . . . 5 (𝜑 → (𝑄 1stF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑄))
4113, 14, 38, 40prfcl 18215 . . . 4 (𝜑 → ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func ((oppCat‘𝑄) ×c 𝑄)))
42 yoneda.h . . . . 5 𝐻 = (HomF𝑄)
43 yoneda.t . . . . 5 𝑇 = (SetCat‘𝑉)
4419unssad 4168 . . . . 5 (𝜑 → ran (Homf𝑄) ⊆ 𝑉)
4542, 28, 43, 25, 18, 44hofcl 18271 . . . 4 (𝜑𝐻 ∈ (((oppCat‘𝑄) ×c 𝑄) Func 𝑇))
46 yonedalem21.f . . . . 5 (𝜑𝐹 ∈ (𝑂 Func 𝑆))
47 yonedalem21.x . . . . 5 (𝜑𝑋𝐵)
4846, 47opelxpd 5693 . . . 4 (𝜑 → ⟨𝐹, 𝑋⟩ ∈ ((𝑂 Func 𝑆) × 𝐵))
4912, 41, 45, 48cofu1 17897 . . 3 (𝜑 → ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
505, 49eqtrid 2782 . 2 (𝜑 → (𝐹(1st𝑍)𝑋) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
51 eqid 2735 . . . . . 6 (Hom ‘(𝑄 ×c 𝑂)) = (Hom ‘(𝑄 ×c 𝑂))
5213, 12, 51, 38, 40, 48prf1 18212 . . . . 5 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩)
5312, 27, 37, 48cofu1 17897 . . . . . . 7 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)))
54 fvex 6889 . . . . . . . . . 10 (1st𝑌) ∈ V
55 fvex 6889 . . . . . . . . . . 11 (2nd𝑌) ∈ V
5655tposex 8259 . . . . . . . . . 10 tpos (2nd𝑌) ∈ V
5754, 56op1st 7996 . . . . . . . . 9 (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌)
5857a1i 11 . . . . . . . 8 (𝜑 → (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌))
596, 12, 51, 25, 17, 26, 482ndf1 18207 . . . . . . . . 9 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = (2nd ‘⟨𝐹, 𝑋⟩))
60 op2ndg 8001 . . . . . . . . . 10 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6146, 47, 60syl2anc 584 . . . . . . . . 9 (𝜑 → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6259, 61eqtrd 2770 . . . . . . . 8 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝑋)
6358, 62fveq12d 6883 . . . . . . 7 (𝜑 → ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)) = ((1st𝑌)‘𝑋))
6453, 63eqtrd 2770 . . . . . 6 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st𝑌)‘𝑋))
656, 12, 51, 25, 17, 39, 481stf1 18204 . . . . . . 7 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = (1st ‘⟨𝐹, 𝑋⟩))
66 op1stg 8000 . . . . . . . 8 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6746, 47, 66syl2anc 584 . . . . . . 7 (𝜑 → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6865, 67eqtrd 2770 . . . . . 6 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝐹)
6964, 68opeq12d 4857 . . . . 5 (𝜑 → ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩ = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7052, 69eqtrd 2770 . . . 4 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7170fveq2d 6880 . . 3 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩))
72 df-ov 7408 . . 3 (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩)
7371, 72eqtr4di 2788 . 2 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = (((1st𝑌)‘𝑋)(1st𝐻)𝐹))
74 eqid 2735 . . . 4 (𝑂 Nat 𝑆) = (𝑂 Nat 𝑆)
757, 74fuchom 17977 . . 3 (𝑂 Nat 𝑆) = (Hom ‘𝑄)
7630, 10, 15, 47, 9, 22, 21, 31yon1cl 18275 . . 3 (𝜑 → ((1st𝑌)‘𝑋) ∈ (𝑂 Func 𝑆))
7742, 25, 8, 75, 76, 46hof1 18266 . 2 (𝜑 → (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
7850, 73, 773eqtrd 2774 1 (𝜑 → (𝐹(1st𝑍)𝑋) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
Colors of variables: wff setvar class
Syntax hints:  wi 4   = wceq 1540  wcel 2108  Vcvv 3459  cun 3924  wss 3926  cop 4607   class class class wbr 5119   × cxp 5652  ran crn 5655  Rel wrel 5659  cfv 6531  (class class class)co 7405  1st c1st 7986  2nd c2nd 7987  tpos ctpos 8224  Basecbs 17228  Hom chom 17282  Catccat 17676  Idccid 17677  Homf chomf 17678  oppCatcoppc 17723   Func cfunc 17867  func ccofu 17869   Nat cnat 17957   FuncCat cfuc 17958  SetCatcsetc 18088   ×c cxpc 18180   1stF c1stf 18181   2ndF c2ndf 18182   ⟨,⟩F cprf 18183   evalF cevlf 18221  HomFchof 18260  Yoncyon 18261
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2157  ax-12 2177  ax-ext 2707  ax-rep 5249  ax-sep 5266  ax-nul 5276  ax-pow 5335  ax-pr 5402  ax-un 7729  ax-cnex 11185  ax-resscn 11186  ax-1cn 11187  ax-icn 11188  ax-addcl 11189  ax-addrcl 11190  ax-mulcl 11191  ax-mulrcl 11192  ax-mulcom 11193  ax-addass 11194  ax-mulass 11195  ax-distr 11196  ax-i2m1 11197  ax-1ne0 11198  ax-1rid 11199  ax-rnegex 11200  ax-rrecex 11201  ax-cnre 11202  ax-pre-lttri 11203  ax-pre-lttrn 11204  ax-pre-ltadd 11205  ax-pre-mulgt0 11206
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2065  df-mo 2539  df-eu 2568  df-clab 2714  df-cleq 2727  df-clel 2809  df-nfc 2885  df-ne 2933  df-nel 3037  df-ral 3052  df-rex 3061  df-rmo 3359  df-reu 3360  df-rab 3416  df-v 3461  df-sbc 3766  df-csb 3875  df-dif 3929  df-un 3931  df-in 3933  df-ss 3943  df-pss 3946  df-nul 4309  df-if 4501  df-pw 4577  df-sn 4602  df-pr 4604  df-tp 4606  df-op 4608  df-uni 4884  df-iun 4969  df-br 5120  df-opab 5182  df-mpt 5202  df-tr 5230  df-id 5548  df-eprel 5553  df-po 5561  df-so 5562  df-fr 5606  df-we 5608  df-xp 5660  df-rel 5661  df-cnv 5662  df-co 5663  df-dm 5664  df-rn 5665  df-res 5666  df-ima 5667  df-pred 6290  df-ord 6355  df-on 6356  df-lim 6357  df-suc 6358  df-iota 6484  df-fun 6533  df-fn 6534  df-f 6535  df-f1 6536  df-fo 6537  df-f1o 6538  df-fv 6539  df-riota 7362  df-ov 7408  df-oprab 7409  df-mpo 7410  df-om 7862  df-1st 7988  df-2nd 7989  df-tpos 8225  df-frecs 8280  df-wrecs 8311  df-recs 8385  df-rdg 8424  df-1o 8480  df-er 8719  df-map 8842  df-ixp 8912  df-en 8960  df-dom 8961  df-sdom 8962  df-fin 8963  df-pnf 11271  df-mnf 11272  df-xr 11273  df-ltxr 11274  df-le 11275  df-sub 11468  df-neg 11469  df-nn 12241  df-2 12303  df-3 12304  df-4 12305  df-5 12306  df-6 12307  df-7 12308  df-8 12309  df-9 12310  df-n0 12502  df-z 12589  df-dec 12709  df-uz 12853  df-fz 13525  df-struct 17166  df-sets 17183  df-slot 17201  df-ndx 17213  df-base 17229  df-hom 17295  df-cco 17296  df-cat 17680  df-cid 17681  df-homf 17682  df-comf 17683  df-oppc 17724  df-func 17871  df-cofu 17873  df-nat 17959  df-fuc 17960  df-setc 18089  df-xpc 18184  df-1stf 18185  df-2ndf 18186  df-prf 18187  df-curf 18226  df-hof 18262  df-yon 18263
This theorem is referenced by:  yonedalem3a  18286  yonedalem3b  18291  yonedainv  18293  yonffthlem  18294
  Copyright terms: Public domain W3C validator