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

Theorem yonedalem21 18408
Description: Lemma for yoneda 18418. (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 6876 . . . . 5 (1st𝑍) = (1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))
32oveqi 7421 . . . 4 (𝐹(1st𝑍)𝑋) = (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋)
4 df-ov 7411 . . . 4 (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
53, 4eqtri 2783 . . 3 (𝐹(1st𝑍)𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
6 eqid 2760 . . . . 5 (𝑄 ×c 𝑂) = (𝑄 ×c 𝑂)
7 yoneda.q . . . . . 6 𝑄 = (𝑂 FuncCat 𝑆)
87fucbas 18099 . . . . 5 (𝑂 Func 𝑆) = (Base‘𝑄)
9 yoneda.o . . . . . 6 𝑂 = (oppCat‘𝐶)
10 yoneda.b . . . . . 6 𝐵 = (Base‘𝐶)
119, 10oppcbas 17853 . . . . 5 𝐵 = (Base‘𝑂)
126, 8, 11xpcbas 18313 . . . 4 ((𝑂 Func 𝑆) × 𝐵) = (Base‘(𝑄 ×c 𝑂))
13 eqid 2760 . . . . 5 ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) = ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))
14 eqid 2760 . . . . 5 ((oppCat‘𝑄) ×c 𝑄) = ((oppCat‘𝑄) ×c 𝑄)
15 yoneda.c . . . . . . . . 9 (𝜑𝐶 ∈ Cat)
169oppccat 17857 . . . . . . . . 9 (𝐶 ∈ Cat → 𝑂 ∈ Cat)
1715, 16syl 18 . . . . . . . 8 (𝜑𝑂 ∈ Cat)
18 yoneda.w . . . . . . . . . 10 (𝜑𝑉𝑊)
19 yoneda.v . . . . . . . . . . 11 (𝜑 → (ran (Homf𝑄) ∪ 𝑈) ⊆ 𝑉)
2019unssbd 4139 . . . . . . . . . 10 (𝜑𝑈𝑉)
2118, 20ssexd 5285 . . . . . . . . 9 (𝜑𝑈 ∈ V)
22 yoneda.s . . . . . . . . . 10 𝑆 = (SetCat‘𝑈)
2322setccat 18221 . . . . . . . . 9 (𝑈 ∈ V → 𝑆 ∈ Cat)
2421, 23syl 18 . . . . . . . 8 (𝜑𝑆 ∈ Cat)
257, 17, 24fuccat 18109 . . . . . . 7 (𝜑𝑄 ∈ Cat)
26 eqid 2760 . . . . . . 7 (𝑄 2ndF 𝑂) = (𝑄 2ndF 𝑂)
276, 25, 17, 262ndfcl 18333 . . . . . 6 (𝜑 → (𝑄 2ndF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑂))
28 eqid 2760 . . . . . . . 8 (oppCat‘𝑄) = (oppCat‘𝑄)
29 relfunc 17998 . . . . . . . . 9 Rel (𝐶 Func 𝑄)
30 yoneda.y . . . . . . . . . 10 𝑌 = (Yon‘𝐶)
31 yoneda.u . . . . . . . . . 10 (𝜑 → ran (Homf𝐶) ⊆ 𝑈)
3230, 15, 9, 22, 7, 21, 31yoncl 18397 . . . . . . . . 9 (𝜑𝑌 ∈ (𝐶 Func 𝑄))
33 1st2ndbr 8036 . . . . . . . . 9 ((Rel (𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
3429, 32, 33sylancr 599 . . . . . . . 8 (𝜑 → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
359, 28, 34funcoppc 18011 . . . . . . 7 (𝜑 → (1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌))
36 df-br 5103 . . . . . . 7 ((1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌) ↔ ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3735, 36sylib 221 . . . . . 6 (𝜑 → ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3827, 37cofucl 18024 . . . . 5 (𝜑 → (⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func (oppCat‘𝑄)))
39 eqid 2760 . . . . . 6 (𝑄 1stF 𝑂) = (𝑄 1stF 𝑂)
406, 25, 17, 391stfcl 18332 . . . . 5 (𝜑 → (𝑄 1stF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑄))
4113, 14, 38, 40prfcl 18338 . . . 4 (𝜑 → ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func ((oppCat‘𝑄) ×c 𝑄)))
42 yoneda.h . . . . 5 𝐻 = (HomF𝑄)
43 yoneda.t . . . . 5 𝑇 = (SetCat‘𝑉)
4419unssad 4138 . . . . 5 (𝜑 → ran (Homf𝑄) ⊆ 𝑉)
4542, 28, 43, 25, 18, 44hofcl 18394 . . . 4 (𝜑𝐻 ∈ (((oppCat‘𝑄) ×c 𝑄) Func 𝑇))
46 yonedalem21.f . . . . 5 (𝜑𝐹 ∈ (𝑂 Func 𝑆))
47 yonedalem21.x . . . . 5 (𝜑𝑋𝐵)
4846, 47opelxpd 5686 . . . 4 (𝜑 → ⟨𝐹, 𝑋⟩ ∈ ((𝑂 Func 𝑆) × 𝐵))
4912, 41, 45, 48cofu1 18020 . . 3 (𝜑 → ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
505, 49eqtrid 2807 . 2 (𝜑 → (𝐹(1st𝑍)𝑋) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
51 eqid 2760 . . . . . 6 (Hom ‘(𝑄 ×c 𝑂)) = (Hom ‘(𝑄 ×c 𝑂))
5213, 12, 51, 38, 40, 48prf1 18335 . . . . 5 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩)
5312, 27, 37, 48cofu1 18020 . . . . . . 7 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)))
54 fvex 6886 . . . . . . . . . 10 (1st𝑌) ∈ V
55 fvex 6886 . . . . . . . . . . 11 (2nd𝑌) ∈ V
5655tposex 8255 . . . . . . . . . 10 tpos (2nd𝑌) ∈ V
5754, 56op1st 7992 . . . . . . . . 9 (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌)
5857a1i 11 . . . . . . . 8 (𝜑 → (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌))
596, 12, 51, 25, 17, 26, 482ndf1 18330 . . . . . . . . 9 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = (2nd ‘⟨𝐹, 𝑋⟩))
60 op2ndg 7997 . . . . . . . . . 10 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6146, 47, 60syl2anc 596 . . . . . . . . 9 (𝜑 → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6259, 61eqtrd 2795 . . . . . . . 8 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝑋)
6358, 62fveq12d 6880 . . . . . . 7 (𝜑 → ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)) = ((1st𝑌)‘𝑋))
6453, 63eqtrd 2795 . . . . . 6 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st𝑌)‘𝑋))
656, 12, 51, 25, 17, 39, 481stf1 18327 . . . . . . 7 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = (1st ‘⟨𝐹, 𝑋⟩))
66 op1stg 7996 . . . . . . . 8 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6746, 47, 66syl2anc 596 . . . . . . 7 (𝜑 → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6865, 67eqtrd 2795 . . . . . 6 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝐹)
6964, 68opeq12d 4840 . . . . 5 (𝜑 → ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩ = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7052, 69eqtrd 2795 . . . 4 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7170fveq2d 6877 . . 3 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩))
72 df-ov 7411 . . 3 (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩)
7371, 72eqtr4di 2813 . 2 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = (((1st𝑌)‘𝑋)(1st𝐻)𝐹))
74 eqid 2760 . . . 4 (𝑂 Nat 𝑆) = (𝑂 Nat 𝑆)
757, 74fuchom 18100 . . 3 (𝑂 Nat 𝑆) = (Hom ‘𝑄)
7630, 10, 15, 47, 9, 22, 21, 31yon1cl 18398 . . 3 (𝜑 → ((1st𝑌)‘𝑋) ∈ (𝑂 Func 𝑆))
7742, 25, 8, 75, 76, 46hof1 18389 . 2 (𝜑 → (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
7850, 73, 773eqtrd 2799 1 (𝜑 → (𝐹(1st𝑍)𝑋) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4   = wceq 1570  wcel 2145  Vcvv 3450  cun 3896  wss 3898  cop 4589   class class class wbr 5102   × cxp 5645  ran crn 5648  Rel wrel 5652  cfv 6527  (class class class)co 7408  1st c1st 7982  2nd c2nd 7983  tpos ctpos 8220  Basecbs 17348  Hom chom 17400  Catccat 17799  Idccid 17800  Homf chomf 17801  oppCatcoppc 17846   Func cfunc 17990  func ccofu 17992   Nat cnat 18080   FuncCat cfuc 18081  SetCatcsetc 18211   ×c cxpc 18303   1stF c1stf 18304   2ndF c2ndf 18305   ⟨,⟩F cprf 18306   evalF cevlf 18344  HomFchof 18383  Yoncyon 18384
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7734  ax-cnex 11227  ax-resscn 11228  ax-1cn 11229  ax-icn 11230  ax-addcl 11231  ax-addrcl 11232  ax-mulcl 11233  ax-mulrcl 11234  ax-mulcom 11235  ax-addass 11236  ax-mulass 11237  ax-distr 11238  ax-i2m1 11239  ax-1ne0 11240  ax-1rid 11241  ax-rnegex 11242  ax-rrecex 11243  ax-cnre 11244  ax-pre-lttri 11245  ax-pre-lttrn 11246  ax-pre-ltadd 11247  ax-pre-mulgt0 11248
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-tp 4588  df-op 4590  df-uni 4867  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6293  df-ord 6354  df-on 6355  df-lim 6356  df-suc 6357  df-iota 6483  df-fun 6529  df-fn 6530  df-f 6531  df-f1 6532  df-fo 6533  df-f1o 6534  df-fv 6535  df-riota 7365  df-ov 7411  df-oprab 7412  df-mpo 7413  df-om 7861  df-1st 7984  df-2nd 7985  df-tpos 8221  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-1o 8454  df-er 8695  df-map 8827  df-ixp 8904  df-en 8952  df-dom 8953  df-sdom 8954  df-fin 8955  df-pnf 11316  df-mnf 11317  df-xr 11318  df-ltxr 11319  df-le 11320  df-sub 11514  df-neg 11515  df-nn 12305  df-2 12374  df-3 12375  df-4 12376  df-5 12377  df-6 12378  df-7 12379  df-8 12380  df-9 12381  df-n0 12576  df-z 12663  df-dec 12784  df-uz 12935  df-fz 13609  df-struct 17286  df-sets 17303  df-slot 17321  df-ndx 17333  df-base 17349  df-hom 17413  df-cco 17414  df-cat 17803  df-cid 17804  df-homf 17805  df-comf 17806  df-oppc 17847  df-func 17994  df-cofu 17996  df-nat 18082  df-fuc 18083  df-setc 18212  df-xpc 18307  df-1stf 18308  df-2ndf 18309  df-prf 18310  df-curf 18349  df-hof 18385  df-yon 18386
This theorem is used by:  yonedalem3a  18409  yonedalem3b  18414  yonedainv  18416  yonffthlem  18417
  Copyright terms: Public domain W3C validator