Users' Mathboxes Mathbox for Zhi Wang < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  cmddu Structured version   Visualization version   GIF version

Theorem cmddu 50745
Description: The duality of limits and colimits: colimits of a diagram are limits of an opposite diagram in opposite categories. (Contributed by Zhi Wang, 20-Nov-2025.)
Hypotheses
Ref Expression
lmddu.o 𝑂 = (oppCat‘𝐶)
lmddu.p 𝑃 = (oppCat‘𝐷)
lmddu.g 𝐺 = ( oppFunc ‘𝐹)
lmddu.c (𝜑 → 𝐶 ∈ 𝑉)
lmddu.d (𝜑 → 𝐷 ∈ 𝑊)
Assertion
Ref Expression
cmddu (𝜑 → ((𝐶 Colimit 𝐷)‘𝐹) = ((𝑂 Limit 𝑃)‘𝐺))

Proof of Theorem cmddu
Dummy variables 𝑚 𝑥 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 relup 50260 . . . 4 Rel ((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)
2 relup 50260 . . . 4 Rel (((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))
3 simpr 490 . . . . . . 7 ((𝜑 ∧ 𝑥((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)𝑚) → 𝑥((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)𝑚)
43up1st2nd 50262 . . . . . 6 ((𝜑 ∧ 𝑥((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)𝑚) → 𝑥(⟨(1st ‘(𝐶Δfunc𝐷)), (2nd ‘(𝐶Δfunc𝐷))⟩(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)𝑚)
5 eqid 2761 . . . . . . 7 (𝐷 FuncCat 𝐶) = (𝐷 FuncCat 𝐶)
65fucbas 18131 . . . . . 6 (𝐷 Func 𝐶) = (Base‘(𝐷 FuncCat 𝐶))
74, 6uprcl3 50267 . . . . 5 ((𝜑 ∧ 𝑥((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)𝑚) → 𝐹 ∈ (𝐷 Func 𝐶))
8 lmddu.p . . . . . 6 𝑃 = (oppCat‘𝐷)
9 lmddu.o . . . . . 6 𝑂 = (oppCat‘𝐶)
10 lmddu.d . . . . . . 7 (𝜑 → 𝐷 ∈ 𝑊)
1110adantr 486 . . . . . 6 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝐷 ∈ 𝑊)
12 lmddu.c . . . . . . 7 (𝜑 → 𝐶 ∈ 𝑉)
1312adantr 486 . . . . . 6 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝐶 ∈ 𝑉)
14 lmddu.g . . . . . . 7 𝐺 = ( oppFunc ‘𝐹)
15 eqid 2761 . . . . . . . 8 (oppCat‘𝑃) = (oppCat‘𝑃)
16 eqid 2761 . . . . . . . 8 (oppCat‘𝑂) = (oppCat‘𝑂)
178fvexi 6897 . . . . . . . . 9 𝑃 ∈ V
1817a1i 11 . . . . . . . 8 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝑃 ∈ V)
199fvexi 6897 . . . . . . . . 9 𝑂 ∈ V
2019a1i 11 . . . . . . . 8 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝑂 ∈ V)
21 simpr 490 . . . . . . . . . 10 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚)
2221up1st2nd 50262 . . . . . . . . 9 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝑥(⟨(1st ‘((oppCat‘𝑂)Δfunc(oppCat‘𝑃))), (2nd ‘((oppCat‘𝑂)Δfunc(oppCat‘𝑃)))⟩((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚)
23 eqid 2761 . . . . . . . . . 10 ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)) = ((oppCat‘𝑃) FuncCat (oppCat‘𝑂))
2423fucbas 18131 . . . . . . . . 9 ((oppCat‘𝑃) Func (oppCat‘𝑂)) = (Base‘((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))
2522, 24uprcl3 50267 . . . . . . . 8 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → ( oppFunc ‘𝐺) ∈ ((oppCat‘𝑃) Func (oppCat‘𝑂)))
2615, 16, 18, 20, 25funcoppc5 50222 . . . . . . 7 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝐺 ∈ (𝑃 Func 𝑂))
2714, 26eqeltrrid 2866 . . . . . 6 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → ( oppFunc ‘𝐹) ∈ (𝑃 Func 𝑂))
288, 9, 11, 13, 27funcoppc5 50222 . . . . 5 ((𝜑 ∧ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚) → 𝐹 ∈ (𝐷 Func 𝐶))
2992oppchomf 17891 . . . . . . . . 9 (Homf ‘𝐶) = (Homf ‘(oppCat‘𝑂))
3029a1i 11 . . . . . . . 8 (𝐹 ∈ (𝐷 Func 𝐶) → (Homf ‘𝐶) = (Homf ‘(oppCat‘𝑂)))
3192oppccomf 17892 . . . . . . . . 9 (compf‘𝐶) = (compf‘(oppCat‘𝑂))
3231a1i 11 . . . . . . . 8 (𝐹 ∈ (𝐷 Func 𝐶) → (compf‘𝐶) = (compf‘(oppCat‘𝑂)))
3382oppchomf 17891 . . . . . . . . . . 11 (Homf ‘𝐷) = (Homf ‘(oppCat‘𝑃))
3433a1i 11 . . . . . . . . . 10 (𝐹 ∈ (𝐷 Func 𝐶) → (Homf ‘𝐷) = (Homf ‘(oppCat‘𝑃)))
3582oppccomf 17892 . . . . . . . . . . 11 (compf‘𝐷) = (compf‘(oppCat‘𝑃))
3635a1i 11 . . . . . . . . . 10 (𝐹 ∈ (𝐷 Func 𝐶) → (compf‘𝐷) = (compf‘(oppCat‘𝑃)))
37 funcrcl 18031 . . . . . . . . . . 11 (𝐹 ∈ (𝐷 Func 𝐶) → (𝐷 ∈ Cat ∧ 𝐶 ∈ Cat))
3837simpld 500 . . . . . . . . . 10 (𝐹 ∈ (𝐷 Func 𝐶) → 𝐷 ∈ Cat)
398oppccat 17889 . . . . . . . . . . 11 (𝐷 ∈ Cat → 𝑃 ∈ Cat)
4015oppccat 17889 . . . . . . . . . . 11 (𝑃 ∈ Cat → (oppCat‘𝑃) ∈ Cat)
4138, 39, 403syl 19 . . . . . . . . . 10 (𝐹 ∈ (𝐷 Func 𝐶) → (oppCat‘𝑃) ∈ Cat)
4237simprd 501 . . . . . . . . . 10 (𝐹 ∈ (𝐷 Func 𝐶) → 𝐶 ∈ Cat)
439oppccat 17889 . . . . . . . . . . 11 (𝐶 ∈ Cat → 𝑂 ∈ Cat)
4416oppccat 17889 . . . . . . . . . . 11 (𝑂 ∈ Cat → (oppCat‘𝑂) ∈ Cat)
4542, 43, 443syl 19 . . . . . . . . . 10 (𝐹 ∈ (𝐷 Func 𝐶) → (oppCat‘𝑂) ∈ Cat)
4634, 36, 30, 32, 38, 41, 42, 45fucpropd 18148 . . . . . . . . 9 (𝐹 ∈ (𝐷 Func 𝐶) → (𝐷 FuncCat 𝐶) = ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))
4746fveq2d 6887 . . . . . . . 8 (𝐹 ∈ (𝐷 Func 𝐶) → (Homf ‘(𝐷 FuncCat 𝐶)) = (Homf ‘((oppCat‘𝑃) FuncCat (oppCat‘𝑂))))
4846fveq2d 6887 . . . . . . . 8 (𝐹 ∈ (𝐷 Func 𝐶) → (compf‘(𝐷 FuncCat 𝐶)) = (compf‘((oppCat‘𝑃) FuncCat (oppCat‘𝑂))))
495, 38, 42fuccat 18141 . . . . . . . 8 (𝐹 ∈ (𝐷 Func 𝐶) → (𝐷 FuncCat 𝐶) ∈ Cat)
5046, 49eqeltrrd 2862 . . . . . . . 8 (𝐹 ∈ (𝐷 Func 𝐶) → ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)) ∈ Cat)
5130, 32, 47, 48, 42, 45, 49, 50uppropd 50258 . . . . . . 7 (𝐹 ∈ (𝐷 Func 𝐶) → (𝐶 UP (𝐷 FuncCat 𝐶)) = ((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂))))
5230, 32, 34, 36, 42, 45, 38, 41diagpropd 50369 . . . . . . 7 (𝐹 ∈ (𝐷 Func 𝐶) → (𝐶Δfunc𝐷) = ((oppCat‘𝑂)Δfunc(oppCat‘𝑃)))
53 id 23 . . . . . . . . . . 11 (𝐹 ∈ (𝐷 Func 𝐶) → 𝐹 ∈ (𝐷 Func 𝐶))
548, 9, 53oppfoppc2 50219 . . . . . . . . . 10 (𝐹 ∈ (𝐷 Func 𝐶) → ( oppFunc ‘𝐹) ∈ (𝑃 Func 𝑂))
5514, 54eqeltrid 2865 . . . . . . . . 9 (𝐹 ∈ (𝐷 Func 𝐶) → 𝐺 ∈ (𝑃 Func 𝑂))
56 relfunc 18030 . . . . . . . . 9 Rel (𝑃 Func 𝑂)
5755, 56, 142oppf 50209 . . . . . . . 8 (𝐹 ∈ (𝐷 Func 𝐶) → ( oppFunc ‘𝐺) = 𝐹)
5857eqcomd 2767 . . . . . . 7 (𝐹 ∈ (𝐷 Func 𝐶) → 𝐹 = ( oppFunc ‘𝐺))
5951, 52, 58oveq123d 7439 . . . . . 6 (𝐹 ∈ (𝐷 Func 𝐶) → ((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹) = (((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺)))
6059breqd 5114 . . . . 5 (𝐹 ∈ (𝐷 Func 𝐶) → (𝑥((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)𝑚 ↔ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚))
617, 28, 60pm5.21nd 814 . . . 4 (𝜑 → (𝑥((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)𝑚 ↔ 𝑥(((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))𝑚))
621, 2, 61eqbrrdiv 5770 . . 3 (𝜑 → ((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹) = (((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺)))
63 cmdfval2 50733 . . 3 ((𝐶 Colimit 𝐷)‘𝐹) = ((𝐶Δfunc𝐷)(𝐶 UP (𝐷 FuncCat 𝐶))𝐹)
64 cmdfval2 50733 . . 3 (((oppCat‘𝑂) Colimit (oppCat‘𝑃))‘( oppFunc ‘𝐺)) = (((oppCat‘𝑂)Δfunc(oppCat‘𝑃))((oppCat‘𝑂) UP ((oppCat‘𝑃) FuncCat (oppCat‘𝑂)))( oppFunc ‘𝐺))
6562, 63, 643eqtr4g 2821 . 2 (𝜑 → ((𝐶 Colimit 𝐷)‘𝐹) = (((oppCat‘𝑂) Colimit (oppCat‘𝑃))‘( oppFunc ‘𝐺)))
66 eqid 2761 . . 3 ( oppFunc ‘𝐺) = ( oppFunc ‘𝐺)
6719a1i 11 . . 3 (𝜑 → 𝑂 ∈ V)
6817a1i 11 . . 3 (𝜑 → 𝑃 ∈ V)
6916, 15, 66, 67, 68lmddu 50744 . 2 (𝜑 → ((𝑂 Limit 𝑃)‘𝐺) = (((oppCat‘𝑂) Colimit (oppCat‘𝑃))‘( oppFunc ‘𝐺)))
7065, 69eqtr4d 2799 1 (𝜑 → ((𝐶 Colimit 𝐷)‘𝐹) = ((𝑂 Limit 𝑃)‘𝐺))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   = wceq 1570   ∈ wcel 2145  Vcvv 3451   class class class wbr 5103  ‘cfv 6537  (class class class)co 7418  1st c1st 7997  2nd c2nd 7998  Catccat 17831  Homf chomf 17833  compfccomf 17834  oppCatcoppc 17878   Func cfunc 18022   FuncCat cfuc 18113  Δfunccdiag 18379   oppFunc coppf 50199   UP cup 50250   Limit clmd 50720   Colimit ccmd 50721
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 2733  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7749  ax-cnex 11249  ax-resscn 11250  ax-1cn 11251  ax-icn 11252  ax-addcl 11253  ax-addrcl 11254  ax-mulcl 11255  ax-mulrcl 11256  ax-mulcom 11257  ax-addass 11258  ax-mulass 11259  ax-distr 11260  ax-i2m1 11261  ax-1ne0 11262  ax-1rid 11263  ax-rnegex 11264  ax-rrecex 11265  ax-cnre 11266  ax-pre-lttri 11267  ax-pre-lttrn 11268  ax-pre-ltadd 11269  ax-pre-mulgt0 11270
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 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-rmo 3366  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-tp 4589  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7375  df-ov 7421  df-oprab 7422  df-mpo 7423  df-om 7876  df-1st 7999  df-2nd 8000  df-tpos 8236  df-frecs 8292  df-wrecs 8323  df-recs 8372  df-rdg 8411  df-1o 8469  df-er 8710  df-map 8842  df-ixp 8919  df-en 8967  df-dom 8968  df-sdom 8969  df-fin 8970  df-pnf 11338  df-mnf 11339  df-xr 11340  df-ltxr 11341  df-le 11342  df-sub 11536  df-neg 11537  df-nn 12329  df-2 12398  df-3 12399  df-4 12400  df-5 12401  df-6 12402  df-7 12403  df-8 12404  df-9 12405  df-n0 12600  df-z 12687  df-dec 12808  df-uz 12959  df-fz 13633  df-struct 17318  df-sets 17335  df-slot 17353  df-ndx 17365  df-base 17381  df-hom 17445  df-cco 17446  df-cat 17835  df-cid 17836  df-homf 17837  df-comf 17838  df-oppc 17879  df-sect 17915  df-inv 17916  df-iso 17917  df-func 18026  df-idfu 18027  df-cofu 18028  df-full 18074  df-fth 18075  df-nat 18114  df-fuc 18115  df-catc 18267  df-xpc 18339  df-1stf 18340  df-curf 18381  df-diag 18383  df-oppf 50200  df-up 50251  df-lmd 50722  df-cmd 50723
This theorem is used by:  termolmd  50747
  Copyright terms: Public domain W3C validator