Zulip Chat Archive
Stream: maths
Topic: does CCC preserve category equivalence
Kenny Lau (Jun 16 2020 at 04:10):
if C and D are equivalent categories and C is CCC, does it follow that D is also CCC?
Kenny Lau (Jun 16 2020 at 04:10):
(CCC = Cartesian Closed Category)
Bhavik Mehta (Jun 16 2020 at 04:11):
Yup, this is in mathlib already :)
Bhavik Mehta (Jun 16 2020 at 04:11):
Kenny Lau (Jun 16 2020 at 04:11):
then your goal that Type u is CCC follows from a more general theorem that if C is CCC then C => Type u (the category of functors) is CCC
Bhavik Mehta (Jun 16 2020 at 04:11):
Sure, but I don't have the latter yet
Bhavik Mehta (Jun 16 2020 at 04:12):
And I've done the former
Bhavik Mehta (Jun 16 2020 at 04:12):
(Largely to make sure my definition of CCC made sense)
Kenny Lau (Jun 16 2020 at 04:12):
well but I think in mathlib we prove the most general things first
Bhavik Mehta (Jun 16 2020 at 04:12):
Also, C => Type u being CCC doesn't need C to be CCC
Kenny Lau (Jun 16 2020 at 04:12):
oops
Bhavik Mehta (Jun 16 2020 at 04:13):
Yeah and that's why I haven't made a PR yet :)
Bhavik Mehta (Jun 16 2020 at 04:13):
Oh actually I already have done that C^op => Type u is CCC
Kenny Lau (Jun 16 2020 at 04:14):
then you can deduce that C => Type u is CCC :P
Bhavik Mehta (Jun 16 2020 at 04:15):
it's a pretty horrible proof though - if we're going for the most general thing then really we should show C^op => Type u is comonadic over Type u, and the category of coalgebras over a CCC is CCC
Kenny Lau (Jun 16 2020 at 04:15):
do we know that empty and 1 are CCCs?
Bhavik Mehta (Jun 16 2020 at 04:15):
We don't have any CCCs in mathlib right now
Kenny Lau (Jun 16 2020 at 04:15):
then maybe I can PR the empty case
Kenny Lau (Jun 16 2020 at 04:15):
(is empty a category?)
Bhavik Mehta (Jun 16 2020 at 04:16):
Yeah, it's called pempty
Kenny Lau (Jun 16 2020 at 04:16):
ok I'll work on the pempty case
Bhavik Mehta (Jun 16 2020 at 04:18):
If you desperately want more examples I can post my presheaf category version for now
Kenny Lau (Jun 16 2020 at 04:22):
failed to synthesize type class instance for
⊢ category pempty
Kenny Lau (Jun 16 2020 at 04:22):
which file should I import?
Bhavik Mehta (Jun 16 2020 at 04:24):
category_theory.pempty, I think
Kenny Lau (Jun 16 2020 at 04:28):
oh no pempty is not CCC
Kenny Lau (Jun 16 2020 at 04:28):
guess why
Bhavik Mehta (Jun 16 2020 at 04:29):
oh terminal doesn't exist
Kenny Lau (Jun 16 2020 at 04:30):
bingo
Kenny Lau (Jun 16 2020 at 04:34):
import category_theory.closed.cartesian
import category_theory.punit
universe u
namespace category_theory
instance : limits.has_finite_products.{u u} punit :=
{ has_limits_of_shape := λ J _ _,
{ has_limit := λ F,
{ cone := { X := punit.star,
π := { app := λ X, punit.star } },
is_limit := { lift := λ s, punit.star } } } }
instance : cartesian_closed.{u u} punit :=
{ closed := λ X,
{ is_adj :=
{ right := { obj := id, map := λ _ _, id },
adj :=
{ hom_equiv := λ _ _, equiv.refl punit,
unit := { app := id },
counit := { app := id } } } } }
end category_theory
Kenny Lau (Jun 16 2020 at 04:34):
yay
Bhavik Mehta (Jun 16 2020 at 04:35):
But doesn't this follow from C => Type u being CCC? ;)
Kenny Lau (Jun 16 2020 at 04:35):
:octopus:
Last updated: Dec 20 2023 at 11:08 UTC