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

Theorem yonedalem21 17781
Description: Lemma for yoneda 17791. (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 6720 . . . . 5 (1st𝑍) = (1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))
32oveqi 7226 . . . 4 (𝐹(1st𝑍)𝑋) = (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋)
4 df-ov 7216 . . . 4 (𝐹(1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
53, 4eqtri 2765 . . 3 (𝐹(1st𝑍)𝑋) = ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩)
6 eqid 2737 . . . . 5 (𝑄 ×c 𝑂) = (𝑄 ×c 𝑂)
7 yoneda.q . . . . . 6 𝑄 = (𝑂 FuncCat 𝑆)
87fucbas 17468 . . . . 5 (𝑂 Func 𝑆) = (Base‘𝑄)
9 yoneda.o . . . . . 6 𝑂 = (oppCat‘𝐶)
10 yoneda.b . . . . . 6 𝐵 = (Base‘𝐶)
119, 10oppcbas 17222 . . . . 5 𝐵 = (Base‘𝑂)
126, 8, 11xpcbas 17685 . . . 4 ((𝑂 Func 𝑆) × 𝐵) = (Base‘(𝑄 ×c 𝑂))
13 eqid 2737 . . . . 5 ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) = ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))
14 eqid 2737 . . . . 5 ((oppCat‘𝑄) ×c 𝑄) = ((oppCat‘𝑄) ×c 𝑄)
15 yoneda.c . . . . . . . . 9 (𝜑𝐶 ∈ Cat)
169oppccat 17226 . . . . . . . . 9 (𝐶 ∈ Cat → 𝑂 ∈ Cat)
1715, 16syl 17 . . . . . . . 8 (𝜑𝑂 ∈ Cat)
18 yoneda.w . . . . . . . . . 10 (𝜑𝑉𝑊)
19 yoneda.v . . . . . . . . . . 11 (𝜑 → (ran (Homf𝑄) ∪ 𝑈) ⊆ 𝑉)
2019unssbd 4102 . . . . . . . . . 10 (𝜑𝑈𝑉)
2118, 20ssexd 5217 . . . . . . . . 9 (𝜑𝑈 ∈ V)
22 yoneda.s . . . . . . . . . 10 𝑆 = (SetCat‘𝑈)
2322setccat 17591 . . . . . . . . 9 (𝑈 ∈ V → 𝑆 ∈ Cat)
2421, 23syl 17 . . . . . . . 8 (𝜑𝑆 ∈ Cat)
257, 17, 24fuccat 17479 . . . . . . 7 (𝜑𝑄 ∈ Cat)
26 eqid 2737 . . . . . . 7 (𝑄 2ndF 𝑂) = (𝑄 2ndF 𝑂)
276, 25, 17, 262ndfcl 17705 . . . . . 6 (𝜑 → (𝑄 2ndF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑂))
28 eqid 2737 . . . . . . . 8 (oppCat‘𝑄) = (oppCat‘𝑄)
29 relfunc 17368 . . . . . . . . 9 Rel (𝐶 Func 𝑄)
30 yoneda.y . . . . . . . . . 10 𝑌 = (Yon‘𝐶)
31 yoneda.u . . . . . . . . . 10 (𝜑 → ran (Homf𝐶) ⊆ 𝑈)
3230, 15, 9, 22, 7, 21, 31yoncl 17770 . . . . . . . . 9 (𝜑𝑌 ∈ (𝐶 Func 𝑄))
33 1st2ndbr 7813 . . . . . . . . 9 ((Rel (𝐶 Func 𝑄) ∧ 𝑌 ∈ (𝐶 Func 𝑄)) → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
3429, 32, 33sylancr 590 . . . . . . . 8 (𝜑 → (1st𝑌)(𝐶 Func 𝑄)(2nd𝑌))
359, 28, 34funcoppc 17381 . . . . . . 7 (𝜑 → (1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌))
36 df-br 5054 . . . . . . 7 ((1st𝑌)(𝑂 Func (oppCat‘𝑄))tpos (2nd𝑌) ↔ ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3735, 36sylib 221 . . . . . 6 (𝜑 → ⟨(1st𝑌), tpos (2nd𝑌)⟩ ∈ (𝑂 Func (oppCat‘𝑄)))
3827, 37cofucl 17394 . . . . 5 (𝜑 → (⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func (oppCat‘𝑄)))
39 eqid 2737 . . . . . 6 (𝑄 1stF 𝑂) = (𝑄 1stF 𝑂)
406, 25, 17, 391stfcl 17704 . . . . 5 (𝜑 → (𝑄 1stF 𝑂) ∈ ((𝑄 ×c 𝑂) Func 𝑄))
4113, 14, 38, 40prfcl 17710 . . . 4 (𝜑 → ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)) ∈ ((𝑄 ×c 𝑂) Func ((oppCat‘𝑄) ×c 𝑄)))
42 yoneda.h . . . . 5 𝐻 = (HomF𝑄)
43 yoneda.t . . . . 5 𝑇 = (SetCat‘𝑉)
4419unssad 4101 . . . . 5 (𝜑 → ran (Homf𝑄) ⊆ 𝑉)
4542, 28, 43, 25, 18, 44hofcl 17767 . . . 4 (𝜑𝐻 ∈ (((oppCat‘𝑄) ×c 𝑄) Func 𝑇))
46 yonedalem21.f . . . . 5 (𝜑𝐹 ∈ (𝑂 Func 𝑆))
47 yonedalem21.x . . . . 5 (𝜑𝑋𝐵)
4846, 47opelxpd 5589 . . . 4 (𝜑 → ⟨𝐹, 𝑋⟩ ∈ ((𝑂 Func 𝑆) × 𝐵))
4912, 41, 45, 48cofu1 17390 . . 3 (𝜑 → ((1st ‘(𝐻func ((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂))))‘⟨𝐹, 𝑋⟩) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
505, 49syl5eq 2790 . 2 (𝜑 → (𝐹(1st𝑍)𝑋) = ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)))
51 eqid 2737 . . . . . 6 (Hom ‘(𝑄 ×c 𝑂)) = (Hom ‘(𝑄 ×c 𝑂))
5213, 12, 51, 38, 40, 48prf1 17707 . . . . 5 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩)
5312, 27, 37, 48cofu1 17390 . . . . . . 7 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)))
54 fvex 6730 . . . . . . . . . 10 (1st𝑌) ∈ V
55 fvex 6730 . . . . . . . . . . 11 (2nd𝑌) ∈ V
5655tposex 8002 . . . . . . . . . 10 tpos (2nd𝑌) ∈ V
5754, 56op1st 7769 . . . . . . . . 9 (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌)
5857a1i 11 . . . . . . . 8 (𝜑 → (1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩) = (1st𝑌))
596, 12, 51, 25, 17, 26, 482ndf1 17702 . . . . . . . . 9 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = (2nd ‘⟨𝐹, 𝑋⟩))
60 op2ndg 7774 . . . . . . . . . 10 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6146, 47, 60syl2anc 587 . . . . . . . . 9 (𝜑 → (2nd ‘⟨𝐹, 𝑋⟩) = 𝑋)
6259, 61eqtrd 2777 . . . . . . . 8 (𝜑 → ((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝑋)
6358, 62fveq12d 6724 . . . . . . 7 (𝜑 → ((1st ‘⟨(1st𝑌), tpos (2nd𝑌)⟩)‘((1st ‘(𝑄 2ndF 𝑂))‘⟨𝐹, 𝑋⟩)) = ((1st𝑌)‘𝑋))
6453, 63eqtrd 2777 . . . . . 6 (𝜑 → ((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩) = ((1st𝑌)‘𝑋))
656, 12, 51, 25, 17, 39, 481stf1 17699 . . . . . . 7 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = (1st ‘⟨𝐹, 𝑋⟩))
66 op1stg 7773 . . . . . . . 8 ((𝐹 ∈ (𝑂 Func 𝑆) ∧ 𝑋𝐵) → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6746, 47, 66syl2anc 587 . . . . . . 7 (𝜑 → (1st ‘⟨𝐹, 𝑋⟩) = 𝐹)
6865, 67eqtrd 2777 . . . . . 6 (𝜑 → ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩) = 𝐹)
6964, 68opeq12d 4792 . . . . 5 (𝜑 → ⟨((1st ‘(⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)))‘⟨𝐹, 𝑋⟩), ((1st ‘(𝑄 1stF 𝑂))‘⟨𝐹, 𝑋⟩)⟩ = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7052, 69eqtrd 2777 . . . 4 (𝜑 → ((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩) = ⟨((1st𝑌)‘𝑋), 𝐹⟩)
7170fveq2d 6721 . . 3 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩))
72 df-ov 7216 . . 3 (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = ((1st𝐻)‘⟨((1st𝑌)‘𝑋), 𝐹⟩)
7371, 72eqtr4di 2796 . 2 (𝜑 → ((1st𝐻)‘((1st ‘((⟨(1st𝑌), tpos (2nd𝑌)⟩ ∘func (𝑄 2ndF 𝑂)) ⟨,⟩F (𝑄 1stF 𝑂)))‘⟨𝐹, 𝑋⟩)) = (((1st𝑌)‘𝑋)(1st𝐻)𝐹))
74 eqid 2737 . . . 4 (𝑂 Nat 𝑆) = (𝑂 Nat 𝑆)
757, 74fuchom 17469 . . 3 (𝑂 Nat 𝑆) = (Hom ‘𝑄)
7630, 10, 15, 47, 9, 22, 21, 31yon1cl 17771 . . 3 (𝜑 → ((1st𝑌)‘𝑋) ∈ (𝑂 Func 𝑆))
7742, 25, 8, 75, 76, 46hof1 17762 . 2 (𝜑 → (((1st𝑌)‘𝑋)(1st𝐻)𝐹) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
7850, 73, 773eqtrd 2781 1 (𝜑 → (𝐹(1st𝑍)𝑋) = (((1st𝑌)‘𝑋)(𝑂 Nat 𝑆)𝐹))
Colors of variables: wff setvar class
Syntax hints:  wi 4   = wceq 1543  wcel 2110  Vcvv 3408  cun 3864  wss 3866  cop 4547   class class class wbr 5053   × cxp 5549  ran crn 5552  Rel wrel 5556  cfv 6380  (class class class)co 7213  1st c1st 7759  2nd c2nd 7760  tpos ctpos 7967  Basecbs 16760  Hom chom 16813  Catccat 17167  Idccid 17168  Homf chomf 17169  oppCatcoppc 17214   Func cfunc 17360  func ccofu 17362   Nat cnat 17448   FuncCat cfuc 17449  SetCatcsetc 17581   ×c cxpc 17675   1stF c1stf 17676   2ndF c2ndf 17677   ⟨,⟩F cprf 17678   evalF cevlf 17717  HomFchof 17756  Yoncyon 17757
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1817  ax-5 1918  ax-6 1976  ax-7 2016  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2158  ax-12 2175  ax-ext 2708  ax-rep 5179  ax-sep 5192  ax-nul 5199  ax-pow 5258  ax-pr 5322  ax-un 7523  ax-cnex 10785  ax-resscn 10786  ax-1cn 10787  ax-icn 10788  ax-addcl 10789  ax-addrcl 10790  ax-mulcl 10791  ax-mulrcl 10792  ax-mulcom 10793  ax-addass 10794  ax-mulass 10795  ax-distr 10796  ax-i2m1 10797  ax-1ne0 10798  ax-1rid 10799  ax-rnegex 10800  ax-rrecex 10801  ax-cnre 10802  ax-pre-lttri 10803  ax-pre-lttrn 10804  ax-pre-ltadd 10805  ax-pre-mulgt0 10806
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 848  df-3or 1090  df-3an 1091  df-tru 1546  df-fal 1556  df-ex 1788  df-nf 1792  df-sb 2071  df-mo 2539  df-eu 2568  df-clab 2715  df-cleq 2729  df-clel 2816  df-nfc 2886  df-ne 2941  df-nel 3047  df-ral 3066  df-rex 3067  df-reu 3068  df-rmo 3069  df-rab 3070  df-v 3410  df-sbc 3695  df-csb 3812  df-dif 3869  df-un 3871  df-in 3873  df-ss 3883  df-pss 3885  df-nul 4238  df-if 4440  df-pw 4515  df-sn 4542  df-pr 4544  df-tp 4546  df-op 4548  df-uni 4820  df-iun 4906  df-br 5054  df-opab 5116  df-mpt 5136  df-tr 5162  df-id 5455  df-eprel 5460  df-po 5468  df-so 5469  df-fr 5509  df-we 5511  df-xp 5557  df-rel 5558  df-cnv 5559  df-co 5560  df-dm 5561  df-rn 5562  df-res 5563  df-ima 5564  df-pred 6160  df-ord 6216  df-on 6217  df-lim 6218  df-suc 6219  df-iota 6338  df-fun 6382  df-fn 6383  df-f 6384  df-f1 6385  df-fo 6386  df-f1o 6387  df-fv 6388  df-riota 7170  df-ov 7216  df-oprab 7217  df-mpo 7218  df-om 7645  df-1st 7761  df-2nd 7762  df-tpos 7968  df-wrecs 8047  df-recs 8108  df-rdg 8146  df-1o 8202  df-er 8391  df-map 8510  df-ixp 8579  df-en 8627  df-dom 8628  df-sdom 8629  df-fin 8630  df-pnf 10869  df-mnf 10870  df-xr 10871  df-ltxr 10872  df-le 10873  df-sub 11064  df-neg 11065  df-nn 11831  df-2 11893  df-3 11894  df-4 11895  df-5 11896  df-6 11897  df-7 11898  df-8 11899  df-9 11900  df-n0 12091  df-z 12177  df-dec 12294  df-uz 12439  df-fz 13096  df-struct 16700  df-sets 16717  df-slot 16735  df-ndx 16745  df-base 16761  df-hom 16826  df-cco 16827  df-cat 17171  df-cid 17172  df-homf 17173  df-comf 17174  df-oppc 17215  df-func 17364  df-cofu 17366  df-nat 17450  df-fuc 17451  df-setc 17582  df-xpc 17679  df-1stf 17680  df-2ndf 17681  df-prf 17682  df-curf 17722  df-hof 17758  df-yon 17759
This theorem is referenced by:  yonedalem3a  17782  yonedalem3b  17787  yonedainv  17789  yonffthlem  17790
  Copyright terms: Public domain W3C validator