Separating and detecting sets #
There are several non-equivalent notions of a generator of a category. Here, we consider two of them:
- We say that
๐ขis a separating set if the functorsC(G, -)forG โ ๐ขare collectively faithful, i.e., ifh โซ f = h โซ gfor allhwith domain in๐ขimpliesf = g. - We say that
๐ขis a detecting set if the functorsC(G, -)collectively reflect isomorphisms, i.e., if anyhwith domain in๐ขuniquely factors throughf, thenfis an isomorphism.
There are, of course, also the dual notions of coseparating and codetecting sets.
Main results #
We
- define predicates
IsSeparating,IsCoseparating,IsDetectingandIsCodetectingon sets of objects; - show that equivalences of categories preserves these notions;
- show that separating and coseparating are dual notions;
- show that detecting and codetecting are dual notions;
- show that if
Chas equalizers, then detecting implies separating; - show that if
Chas coequalizers, then codetecting implies coseparating; - show that if
Cis balanced, then separating implies detecting and coseparating implies codetecting; - show that
โis separating if and only ifโis coseparating if and only ifCis thin; - show that
โis detecting if and only ifโis codetecting if and only ifCis a groupoid; - define predicates
IsSeparator,IsCoseparator,IsDetectorandIsCodetectoras the singleton counterparts to the definitions for sets above and restate the above results in this situation; - show that
Gis a separator if and only ifcoyoneda.obj (op G)is faithful (and the dual); - show that
Gis a detector if and only ifcoyoneda.obj (op G)reflects isomorphisms (and the dual); - show that
CisWellPoweredif it admits small pullbacks and a detector; - define corresponding typeclasses
HasSeparator,HasCoseparator,HasDetectorandHasCodetectoron categories and prove analogous results for these.
Future work #
- We currently don't have any examples yet.
We say that ๐ข is a separating set if the functors C(G, -) for G โ ๐ข are collectively
faithful, i.e., if h โซ f = h โซ g for all h with domain in ๐ข implies f = g.
Equations
- CategoryTheory.IsSeparating ๐ข = โ โฆX Y : Cโฆ (f g : X โถ Y), (โ G โ ๐ข, โ (h : G โถ X), CategoryTheory.CategoryStruct.comp h f = CategoryTheory.CategoryStruct.comp h g) โ f = g
Instances For
We say that ๐ข is a coseparating set if the functors C(-, G) for G โ ๐ข are collectively
faithful, i.e., if f โซ h = g โซ h for all h with codomain in ๐ข implies f = g.
Equations
- CategoryTheory.IsCoseparating ๐ข = โ โฆX Y : Cโฆ (f g : X โถ Y), (โ G โ ๐ข, โ (h : Y โถ G), CategoryTheory.CategoryStruct.comp f h = CategoryTheory.CategoryStruct.comp g h) โ f = g
Instances For
We say that ๐ข is a detecting set if the functors C(G, -) collectively reflect isomorphisms,
i.e., if any h with domain in ๐ข uniquely factors through f, then f is an isomorphism.
Equations
- CategoryTheory.IsDetecting ๐ข = โ โฆX Y : Cโฆ (f : X โถ Y), (โ G โ ๐ข, โ (h : G โถ Y), โ! h' : G โถ X, CategoryTheory.CategoryStruct.comp h' f = h) โ CategoryTheory.IsIso f
Instances For
We say that ๐ข is a codetecting set if the functors C(-, G) collectively reflect
isomorphisms, i.e., if any h with codomain in G uniquely factors through f, then f is
an isomorphism.
Equations
- CategoryTheory.IsCodetecting ๐ข = โ โฆX Y : Cโฆ (f : X โถ Y), (โ G โ ๐ข, โ (h : X โถ G), โ! h' : Y โถ G, CategoryTheory.CategoryStruct.comp f h' = h) โ CategoryTheory.IsIso f
Instances For
An ingredient of the proof of the Special Adjoint Functor Theorem: a complete well-powered category with a small coseparating set has an initial object.
In fact, it follows from the Special Adjoint Functor Theorem that C is already cocomplete,
see hasColimits_of_hasLimits_of_isCoseparating.
An ingredient of the proof of the Special Adjoint Functor Theorem: a cocomplete well-copowered category with a small separating set has a terminal object.
In fact, it follows from the Special Adjoint Functor Theorem that C is already complete, see
hasLimits_of_hasColimits_of_isSeparating.
A category with pullbacks and a small detecting set is well-powered.
We say that G is a separator if the functor C(G, -) is faithful.
Equations
Instances For
We say that G is a coseparator if the functor C(-, G) is faithful.
Equations
Instances For
We say that G is a detector if the functor C(G, -) reflects isomorphisms.
Equations
Instances For
We say that G is a codetector if the functor C(-, G) reflects isomorphisms.
Equations
Instances For
For a category C and an object G : C, G is a separator of C if
the functor C(G, -) is faithful.
While IsSeparator G : Prop is the proposition that G is a separator of C,
an HasSeparator C : Prop is the proposition that such a separator exists.
Note that HasSeparator C is a proposition. It does not designate a favored separator
and merely asserts the existence of one.
- hasSeparator : โ (G : C), IsSeparator G
Instances
For a category C and an object G : C, G is a coseparator of C if
the functor C(-, G) is faithful.
While IsCoseparator G : Prop is the proposition that G is a coseparator of C,
an HasCoseparator C : Prop is the proposition that such a coseparator exists.
Note that HasCoseparator C is a proposition. It does not designate a favored coseparator
and merely asserts the existence of one.
- hasCoseparator : โ (G : C), IsCoseparator G
Instances
For a category C and an object G : C, G is a detector of C if
the functor C(G, -) reflects isomorphisms.
While IsDetector G : Prop is the proposition that G is a detector of C,
an HasDetector C : Prop is the proposition that such a detector exists.
Note that HasDetector C is a proposition. It does not designate a favored detector
and merely asserts the existence of one.
- hasDetector : โ (G : C), IsDetector G
Instances
For a category C and an object G : C, G is a codetector of C if
the functor C(-, G) reflects isomorphisms.
While IsCodetector G : Prop is the proposition that G is a codetector of C,
an HasCodetector C : Prop is the proposition that such a codetector exists.
Note that HasCodetector C is a proposition. It does not designate a favored codetector
and merely asserts the existence of one.
- hasCodetector : โ (G : C), IsCodetector G
Instances
Given a category C that has a separator (HasSeparator C), separator C is an arbitrarily
chosen separator of C.
Equations
- CategoryTheory.separator C = โฏ.choose
Instances For
Given a category C that has a coseparator (HasCoseparator C), coseparator C is an arbitrarily
chosen coseparator of C.
Equations
Instances For
Given a category C that has a detector (HasDetector C), detector C is an arbitrarily
chosen detector of C.
Equations
- CategoryTheory.detector C = โฏ.choose
Instances For
Given a category C that has a codetector (HasCodetector C), codetector C is an arbitrarily
chosen codetector of C.
Equations
- CategoryTheory.codetector C = โฏ.choose