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

Theorem yonedalem21 17525
Description: Lemma for yoneda 17535. (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 6675 . . . . 5 (1st𝑍) = (1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))
32oveqi 7171 . . . 4 (𝐹(1st𝑍)𝑋) = (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋)
4 df-ov 7161 . . . 4 (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
53, 4eqtri 2846 . . 3 (𝐹(1st𝑍)𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
6 eqid 2823 . . . . 5 (𝑄 ×c 𝑂) = (𝑄 ×c 𝑂)
7 yoneda.q . . . . . 6 𝑄 = (𝑂 FuncCat 𝑆)
87fucbas 17232 . . . . 5 (𝑂 Func 𝑆) = (Base‘𝑄)
9 yoneda.o . . . . . 6 𝑂 = (oppCat‘𝐶)
10 yoneda.b . . . . . 6 𝐵 = (Base‘𝐶)
119, 10oppcbas 16990 . . . . 5 𝐵 = (Base‘𝑂)
126, 8, 11xpcbas 17430 . . . 4 ((𝑂 Func 𝑆) × 𝐵) = (Base‘(𝑄 ×c 𝑂))
13 eqid 2823 . . . . 5 ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) = ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))
14 eqid 2823 . . . . 5 ((oppCat‘𝑄) ×c 𝑄) = ((oppCat‘𝑄) ×c 𝑄)
15 yoneda.c . . . . . . . . 9 (𝜑𝐶 ∈ Cat)
169oppccat 16994 . . . . . . . . 9 (𝐶 ∈ Cat → 𝑂 ∈ Cat)
1715, 16syl 17 . . . . . . . 8 (𝜑𝑂 ∈ Cat)
18 yoneda.w . . . . . . . . . 10 (𝜑𝑉𝑊)
19 yoneda.v . . . . . . . . . . 11 (𝜑 → (ran (Homf𝑄) ∪ 𝑈) ⊆ 𝑉)
2019unssbd 4166 . . . . . . . . . 10 (𝜑𝑈𝑉)
2118, 20ssexd 5230 . . . . . . . . 9 (𝜑𝑈 ∈ V)
22 yoneda.s . . . . . . . . . 10 𝑆 = (SetCat‘𝑈)
2322setccat 17347 . . . . . . . . 9 (𝑈 ∈ V → 𝑆 ∈ Cat)
2421, 23syl 17 . . . . . . . 8 (𝜑𝑆 ∈ Cat)
257, 17, 24fuccat 17242 . . . . . . 7 (𝜑𝑄 ∈ Cat)
26 eqid 2823 . . . . . . 7 (𝑄 2ndF 𝑂) = (𝑄 2ndF 𝑂)
276, 25, 17, 262ndfcl 17450 . . . . . 6 (𝜑 → (𝑄 2ndF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑂))
28 eqid 2823 . . . . . . . 8 (oppCat‘𝑄) = (oppCat‘𝑄)
29 relfunc 17134 . . . . . . . . 9 Rel (𝐶 Func 𝑄)
30 yoneda.y . . . . . . . . . 10 𝑌 = (Yon‘𝐶)
31 yoneda.u . . . . . . . . . 10 (𝜑 → ran (Homf𝐶) ⊆ 𝑈)
3230, 15, 9, 22, 7, 21, 31yoncl 17514 . . . . . . . . 9 (𝜑𝑌 ∈ (𝐶 Func 𝑄))
33 1st2ndbr 7743 . . . . . . . . 9 ((Rel (𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
3429, 32, 33sylancr 589 . . . . . . . 8 (𝜑 → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
359, 28, 34funcoppc 17147 . . . . . . 7 (𝜑 → (1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌))
36 df-br 5069 . . . . . . 7 ((1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌) ↔ ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3735, 36sylib 220 . . . . . 6 (𝜑 → ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3827, 37cofucl 17160 . . . . 5 (𝜑 → (⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func (oppCat‘𝑄)))
39 eqid 2823 . . . . . 6 (𝑄 1stF 𝑂) = (𝑄 1stF 𝑂)
406, 25, 17, 391stfcl 17449 . . . . 5 (𝜑 → (𝑄 1stF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑄))
4113, 14, 38, 40prfcl 17455 . . . 4 (𝜑 → ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func ((oppCat‘𝑄) ×c 𝑄)))
42 yoneda.h . . . . 5 𝐻 = (HomF𝑄)
43 yoneda.t . . . . 5 𝑇 = (SetCat‘𝑉)
4419unssad 4165 . . . . 5 (𝜑 → ran (Homf𝑄) ⊆ 𝑉)
4542, 28, 43, 25, 18, 44hofcl 17511 . . . 4 (𝜑𝐻 ∈ (((oppCat‘𝑄) ×c 𝑄) Func 𝑇))
46 yonedalem21.f . . . . 5 (𝜑𝐹 ∈ (𝑂 Func 𝑆))
47 yonedalem21.x . . . . 5 (𝜑𝑋𝐵)
4846, 47opelxpd 5595 . . . 4 (𝜑 → ⟨𝐹, 𝑋⟩ ∈ ((𝑂 Func 𝑆) × 𝐵))
4912, 41, 45, 48cofu1 17156 . . 3 (𝜑 → ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
505, 49syl5eq 2870 . 2 (𝜑 → (𝐹(1st𝑍)𝑋) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
51 eqid 2823 . . . . . 6 (Hom ‘(𝑄 ×c 𝑂)) = (Hom ‘(𝑄 ×c 𝑂))
5213, 12, 51, 38, 40, 48prf1 17452 . . . . 5 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩)
5312, 27, 37, 48cofu1 17156 . . . . . . 7 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)))
54 fvex 6685 . . . . . . . . . 10 (1st𝑌) ∈ V
55 fvex 6685 . . . . . . . . . . 11 (2nd𝑌) ∈ V
5655tposex 7928 . . . . . . . . . 10 tpos (2nd𝑌) ∈ V
5754, 56op1st 7699 . . . . . . . . 9 (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌)
5857a1i 11 . . . . . . . 8 (𝜑 → (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌))
596, 12, 51, 25, 17, 26, 482ndf1 17447 . . . . . . . . 9 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = (2nd ‘⟨𝐹, 𝑋⟩))
60 op2ndg 7704 . . . . . . . . . 10 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6146, 47, 60syl2anc 586 . . . . . . . . 9 (𝜑 → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6259, 61eqtrd 2858 . . . . . . . 8 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝑋)
6358, 62fveq12d 6679 . . . . . . 7 (𝜑 → ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)) = ((1st𝑌)‘𝑋))
6453, 63eqtrd 2858 . . . . . 6 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st𝑌)‘𝑋))
656, 12, 51, 25, 17, 39, 481stf1 17444 . . . . . . 7 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = (1st ‘⟨𝐹, 𝑋⟩))
66 op1stg 7703 . . . . . . . 8 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6746, 47, 66syl2anc 586 . . . . . . 7 (𝜑 → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6865, 67eqtrd 2858 . . . . . 6 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝐹)
6964, 68opeq12d 4813 . . . . 5 (𝜑 → ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩ = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7052, 69eqtrd 2858 . . . 4 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7170fveq2d 6676 . . 3 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩))
72 df-ov 7161 . . 3 (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩)
7371, 72syl6eqr 2876 . 2 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = (((1st𝑌)‘𝑋)(1st𝐻)𝐹))
74 eqid 2823 . . . 4 (𝑂 Nat 𝑆) = (𝑂 Nat 𝑆)
757, 74fuchom 17233 . . 3 (𝑂 Nat 𝑆) = (Hom ‘𝑄)
7630, 10, 15, 47, 9, 22, 21, 31yon1cl 17515 . . 3 (𝜑 → ((1st𝑌)‘𝑋) ∈ (𝑂 Func 𝑆))
7742, 25, 8, 75, 76, 46hof1 17506 . 2 (𝜑 → (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
7850, 73, 773eqtrd 2862 1 (𝜑 → (𝐹(1st𝑍)𝑋) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
Colors of variables: wff setvar class
Syntax hints:  wi 4   = wceq 1537  wcel 2114  Vcvv 3496  cun 3936  wss 3938  cop 4575   class class class wbr 5068   × cxp 5555  ran crn 5558  Rel wrel 5562  cfv 6357  (class class class)co 7158  1st c1st 7689  2nd c2nd 7690  tpos ctpos 7893  Basecbs 16485  Hom chom 16578  Catccat 16937  Idccid 16938  Homf chomf 16939  oppCatcoppc 16983   Func cfunc 17126  func ccofu 17128   Nat cnat 17213   FuncCat cfuc 17214  SetCatcsetc 17337   ×c cxpc 17420   1stF c1stf 17421   2ndF c2ndf 17422   ⟨,⟩F cprf 17423   evalF cevlf 17461  HomFchof 17500  Yoncyon 17501
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2177  ax-ext 2795  ax-rep 5192  ax-sep 5205  ax-nul 5212  ax-pow 5268  ax-pr 5332  ax-un 7463  ax-cnex 10595  ax-resscn 10596  ax-1cn 10597  ax-icn 10598  ax-addcl 10599  ax-addrcl 10600  ax-mulcl 10601  ax-mulrcl 10602  ax-mulcom 10603  ax-addass 10604  ax-mulass 10605  ax-distr 10606  ax-i2m1 10607  ax-1ne0 10608  ax-1rid 10609  ax-rnegex 10610  ax-rrecex 10611  ax-cnre 10612  ax-pre-lttri 10613  ax-pre-lttrn 10614  ax-pre-ltadd 10615  ax-pre-mulgt0 10616
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1084  df-3an 1085  df-tru 1540  df-fal 1550  df-ex 1781  df-nf 1785  df-sb 2070  df-mo 2622  df-eu 2654  df-clab 2802  df-cleq 2816  df-clel 2895  df-nfc 2965  df-ne 3019  df-nel 3126  df-ral 3145  df-rex 3146  df-reu 3147  df-rmo 3148  df-rab 3149  df-v 3498  df-sbc 3775  df-csb 3886  df-dif 3941  df-un 3943  df-in 3945  df-ss 3954  df-pss 3956  df-nul 4294  df-if 4470  df-pw 4543  df-sn 4570  df-pr 4572  df-tp 4574  df-op 4576  df-uni 4841  df-int 4879  df-iun 4923  df-br 5069  df-opab 5131  df-mpt 5149  df-tr 5175  df-id 5462  df-eprel 5467  df-po 5476  df-so 5477  df-fr 5516  df-we 5518  df-xp 5563  df-rel 5564  df-cnv 5565  df-co 5566  df-dm 5567  df-rn 5568  df-res 5569  df-ima 5570  df-pred 6150  df-ord 6196  df-on 6197  df-lim 6198  df-suc 6199  df-iota 6316  df-fun 6359  df-fn 6360  df-f 6361  df-f1 6362  df-fo 6363  df-f1o 6364  df-fv 6365  df-riota 7116  df-ov 7161  df-oprab 7162  df-mpo 7163  df-om 7583  df-1st 7691  df-2nd 7692  df-tpos 7894  df-wrecs 7949  df-recs 8010  df-rdg 8048  df-1o 8104  df-oadd 8108  df-er 8291  df-map 8410  df-ixp 8464  df-en 8512  df-dom 8513  df-sdom 8514  df-fin 8515  df-pnf 10679  df-mnf 10680  df-xr 10681  df-ltxr 10682  df-le 10683  df-sub 10874  df-neg 10875  df-nn 11641  df-2 11703  df-3 11704  df-4 11705  df-5 11706  df-6 11707  df-7 11708  df-8 11709  df-9 11710  df-n0 11901  df-z 11985  df-dec 12102  df-uz 12247  df-fz 12896  df-struct 16487  df-ndx 16488  df-slot 16489  df-base 16491  df-sets 16492  df-hom 16591  df-cco 16592  df-cat 16941  df-cid 16942  df-homf 16943  df-comf 16944  df-oppc 16984  df-func 17130  df-cofu 17132  df-nat 17215  df-fuc 17216  df-setc 17338  df-xpc 17424  df-1stf 17425  df-2ndf 17426  df-prf 17427  df-curf 17466  df-hof 17502  df-yon 17503
This theorem is referenced by:  yonedalem3a  17526  yonedalem3b  17531  yonedainv  17533  yonffthlem  17534
  Copyright terms: Public domain W3C validator