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

Theorem yonedalem21 17991
Description: Lemma for yoneda 18001. (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 6777 . . . . 5 (1st𝑍) = (1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))
32oveqi 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 𝑂))))‘⟨𝐹, 𝑋⟩)
53, 4eqtri 2766 . . 3 (𝐹(1st𝑍)𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
6 eqid 2738 . . . . 5 (𝑄 ×c 𝑂) = (𝑄 ×c 𝑂)
7 yoneda.q . . . . . 6 𝑄 = (𝑂 FuncCat 𝑆)
87fucbas 17677 . . . . 5 (𝑂 Func 𝑆) = (Base‘𝑄)
9 yoneda.o . . . . . 6 𝑂 = (oppCat‘𝐶)
10 yoneda.b . . . . . 6 𝐵 = (Base‘𝐶)
119, 10oppcbas 17428 . . . . 5 𝐵 = (Base‘𝑂)
126, 8, 11xpcbas 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)
169oppccat 17433 . . . . . . . . 9 (𝐶 ∈ Cat → 𝑂 ∈ Cat)
1715, 16syl 17 . . . . . . . 8 (𝜑𝑂 ∈ Cat)
18 yoneda.w . . . . . . . . . 10 (𝜑𝑉𝑊)
19 yoneda.v . . . . . . . . . . 11 (𝜑 → (ran (Homf𝑄) ∪ 𝑈) ⊆ 𝑉)
2019unssbd 4122 . . . . . . . . . 10 (𝜑𝑈𝑉)
2118, 20ssexd 5248 . . . . . . . . 9 (𝜑𝑈 ∈ V)
22 yoneda.s . . . . . . . . . 10 𝑆 = (SetCat‘𝑈)
2322setccat 17800 . . . . . . . . 9 (𝑈 ∈ V → 𝑆 ∈ Cat)
2421, 23syl 17 . . . . . . . 8 (𝜑𝑆 ∈ Cat)
257, 17, 24fuccat 17688 . . . . . . 7 (𝜑𝑄 ∈ Cat)
26 eqid 2738 . . . . . . 7 (𝑄 2ndF 𝑂) = (𝑄 2ndF 𝑂)
276, 25, 17, 262ndfcl 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𝐶) ⊆ 𝑈)
3230, 15, 9, 22, 7, 21, 31yoncl 17980 . . . . . . . . 9 (𝜑𝑌 ∈ (𝐶 Func 𝑄))
33 1st2ndbr 7883 . . . . . . . . 9 ((Rel (𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
3429, 32, 33sylancr 587 . . . . . . . 8 (𝜑 → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
359, 28, 34funcoppc 17590 . . . . . . 7 (𝜑 → (1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌))
36 df-br 5075 . . . . . . 7 ((1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌) ↔ ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3735, 36sylib 217 . . . . . 6 (𝜑 → ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3827, 37cofucl 17603 . . . . 5 (𝜑 → (⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func (oppCat‘𝑄)))
39 eqid 2738 . . . . . 6 (𝑄 1stF 𝑂) = (𝑄 1stF 𝑂)
406, 25, 17, 391stfcl 17914 . . . . 5 (𝜑 → (𝑄 1stF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑄))
4113, 14, 38, 40prfcl 17920 . . . 4 (𝜑 → ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func ((oppCat‘𝑄) ×c 𝑄)))
42 yoneda.h . . . . 5 𝐻 = (HomF𝑄)
43 yoneda.t . . . . 5 𝑇 = (SetCat‘𝑉)
4419unssad 4121 . . . . 5 (𝜑 → ran (Homf𝑄) ⊆ 𝑉)
4542, 28, 43, 25, 18, 44hofcl 17977 . . . 4 (𝜑𝐻 ∈ (((oppCat‘𝑄) ×c 𝑄) Func 𝑇))
46 yonedalem21.f . . . . 5 (𝜑𝐹 ∈ (𝑂 Func 𝑆))
47 yonedalem21.x . . . . 5 (𝜑𝑋𝐵)
4846, 47opelxpd 5627 . . . 4 (𝜑 → ⟨𝐹, 𝑋⟩ ∈ ((𝑂 Func 𝑆) × 𝐵))
4912, 41, 45, 48cofu1 17599 . . 3 (𝜑 → ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
505, 49eqtrid 2790 . 2 (𝜑 → (𝐹(1st𝑍)𝑋) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
51 eqid 2738 . . . . . 6 (Hom ‘(𝑄 ×c 𝑂)) = (Hom ‘(𝑄 ×c 𝑂))
5213, 12, 51, 38, 40, 48prf1 17917 . . . . 5 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩)
5312, 27, 37, 48cofu1 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
5655tposex 8076 . . . . . . . . . 10 tpos (2nd𝑌) ∈ V
5754, 56op1st 7839 . . . . . . . . 9 (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌)
5857a1i 11 . . . . . . . 8 (𝜑 → (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌))
596, 12, 51, 25, 17, 26, 482ndf1 17912 . . . . . . . . 9 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = (2nd ‘⟨𝐹, 𝑋⟩))
60 op2ndg 7844 . . . . . . . . . 10 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6146, 47, 60syl2anc 584 . . . . . . . . 9 (𝜑 → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6259, 61eqtrd 2778 . . . . . . . 8 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝑋)
6358, 62fveq12d 6781 . . . . . . 7 (𝜑 → ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)) = ((1st𝑌)‘𝑋))
6453, 63eqtrd 2778 . . . . . 6 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st𝑌)‘𝑋))
656, 12, 51, 25, 17, 39, 481stf1 17909 . . . . . . 7 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = (1st ‘⟨𝐹, 𝑋⟩))
66 op1stg 7843 . . . . . . . 8 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6746, 47, 66syl2anc 584 . . . . . . 7 (𝜑 → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6865, 67eqtrd 2778 . . . . . 6 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝐹)
6964, 68opeq12d 4812 . . . . 5 (𝜑 → ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩ = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7052, 69eqtrd 2778 . . . 4 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7170fveq2d 6778 . . 3 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩))
72 df-ov 7278 . . 3 (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩)
7371, 72eqtr4di 2796 . 2 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = (((1st𝑌)‘𝑋)(1st𝐻)𝐹))
74 eqid 2738 . . . 4 (𝑂 Nat 𝑆) = (𝑂 Nat 𝑆)
757, 74fuchom 17678 . . 3 (𝑂 Nat 𝑆) = (Hom ‘𝑄)
7630, 10, 15, 47, 9, 22, 21, 31yon1cl 17981 . . 3 (𝜑 → ((1st𝑌)‘𝑋) ∈ (𝑂 Func 𝑆))
7742, 25, 8, 75, 76, 46hof1 17972 . 2 (𝜑 → (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
7850, 73, 773eqtrd 2782 1 (𝜑 → (𝐹(1st𝑍)𝑋) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
Colors of variables: wff setvar class
Syntax hints:  wi 4   = wceq 1539  wcel 2106  Vcvv 3432  cun 3885  wss 3887  cop 4567   class class class wbr 5074   × cxp 5587  ran crn 5590  Rel wrel 5594  cfv 6433  (class class class)co 7275  1st c1st 7829  2nd c2nd 7830  tpos ctpos 8041  Basecbs 16912  Hom chom 16973  Catccat 17373  Idccid 17374  Homf chomf 17375  oppCatcoppc 17420   Func cfunc 17569  func ccofu 17571   Nat cnat 17657   FuncCat cfuc 17658  SetCatcsetc 17790   ×c cxpc 17885   1stF c1stf 17886   2ndF c2ndf 17887   ⟨,⟩F cprf 17888   evalF cevlf 17927  HomFchof 17966  Yoncyon 17967
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2709  ax-rep 5209  ax-sep 5223  ax-nul 5230  ax-pow 5288  ax-pr 5352  ax-un 7588  ax-cnex 10927  ax-resscn 10928  ax-1cn 10929  ax-icn 10930  ax-addcl 10931  ax-addrcl 10932  ax-mulcl 10933  ax-mulrcl 10934  ax-mulcom 10935  ax-addass 10936  ax-mulass 10937  ax-distr 10938  ax-i2m1 10939  ax-1ne0 10940  ax-1rid 10941  ax-rnegex 10942  ax-rrecex 10943  ax-cnre 10944  ax-pre-lttri 10945  ax-pre-lttrn 10946  ax-pre-ltadd 10947  ax-pre-mulgt0 10948
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3or 1087  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2068  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2816  df-nfc 2889  df-ne 2944  df-nel 3050  df-ral 3069  df-rex 3070  df-rmo 3071  df-reu 3072  df-rab 3073  df-v 3434  df-sbc 3717  df-csb 3833  df-dif 3890  df-un 3892  df-in 3894  df-ss 3904  df-pss 3906  df-nul 4257  df-if 4460  df-pw 4535  df-sn 4562  df-pr 4564  df-tp 4566  df-op 4568  df-uni 4840  df-iun 4926  df-br 5075  df-opab 5137  df-mpt 5158  df-tr 5192  df-id 5489  df-eprel 5495  df-po 5503  df-so 5504  df-fr 5544  df-we 5546  df-xp 5595  df-rel 5596  df-cnv 5597  df-co 5598  df-dm 5599  df-rn 5600  df-res 5601  df-ima 5602  df-pred 6202  df-ord 6269  df-on 6270  df-lim 6271  df-suc 6272  df-iota 6391  df-fun 6435  df-fn 6436  df-f 6437  df-f1 6438  df-fo 6439  df-f1o 6440  df-fv 6441  df-riota 7232  df-ov 7278  df-oprab 7279  df-mpo 7280  df-om 7713  df-1st 7831  df-2nd 7832  df-tpos 8042  df-frecs 8097  df-wrecs 8128  df-recs 8202  df-rdg 8241  df-1o 8297  df-er 8498  df-map 8617  df-ixp 8686  df-en 8734  df-dom 8735  df-sdom 8736  df-fin 8737  df-pnf 11011  df-mnf 11012  df-xr 11013  df-ltxr 11014  df-le 11015  df-sub 11207  df-neg 11208  df-nn 11974  df-2 12036  df-3 12037  df-4 12038  df-5 12039  df-6 12040  df-7 12041  df-8 12042  df-9 12043  df-n0 12234  df-z 12320  df-dec 12438  df-uz 12583  df-fz 13240  df-struct 16848  df-sets 16865  df-slot 16883  df-ndx 16895  df-base 16913  df-hom 16986  df-cco 16987  df-cat 17377  df-cid 17378  df-homf 17379  df-comf 17380  df-oppc 17421  df-func 17573  df-cofu 17575  df-nat 17659  df-fuc 17660  df-setc 17791  df-xpc 17889  df-1stf 17890  df-2ndf 17891  df-prf 17892  df-curf 17932  df-hof 17968  df-yon 17969
This theorem is referenced by:  yonedalem3a  17992  yonedalem3b  17997  yonedainv  17999  yonffthlem  18000
  Copyright terms: Public domain W3C validator