Local blog presents: local presentability

The notion of local presentability is quite a convenient one. In particular, they come with a pretty nice adjoint functor theorem: all cocontinuous functors have right adjoints, and every accessible continuous functor has a left adjoint. They also have several equivalent characterisations, which makes them easier to recognise and to construct (depending on your goals). Here, I just want to summarise these definitions and sketch why they are equivalent. My main reference will be [AR94].

Definition 1. An object X of a category is called \kappasmall (where \kappa is a regular cardinal) if the corepresentable functor \mathrm{Hom}(X,-) preserves \kappa-filtered colimits (it is sufficient to check that it preserves \kappadirected colimits, which are indexed by posets wherein sets of size <\kappa have upper bounds).

For example, a set is \kappa-small iff it has cardinality <\kappa; a group (or more generally, any finitary algebra, which also includes sets) is \kappa-small iff it can be generated by <\kappa-many elements modulo <\kappa-many relations. Similarly, given a (commutative, unital) ring R, an R-module M is \kappa-small iff it is <\kappa-generated modulo <\kappa-many relations in the sense that it fits in an exact sequence R^\lambda\to R^\mu\to M\to0 with \lambda,\mu<\kappa[MO]. This is also why such objects are also called \kappapresentable. Note that such objects are also called \kappa-compact (this is because an object in the category \mathbf{Op}(X) of open subsets of a topological space X is \omega-compact iff it is compact as a topological space), though note that compact topological spaces need not be small in \mathbf{Top} in the sense of Definition 1.

Definition 2. A category \mathcal{C} is called locally \kappa-presentable if:

  • it is locally small and cocomplete
  • it is generated under \kappa-filtered colimits by a set of \kappa-small objects

For instance, the category of sets is locally finitely presentable: every set is the directed colimit of its finite subsets, and there is a set of isomorphism classes of finite sets. More generally, any variety of finitary algebras is locally finitely presentable (varieties of \kappa-ary algebras are locally \kappa-presentable). Similarly, the category of R-modules is locally finitely presentable as well, as any R-module is a directed colimit of its finitely-generated submodules, and finitely-generated submodules are cokernels of maps R^n\to R^m, so there is only a set of finitely-generated R-modules.

This also provides a sort of explanation or intuition behind the terminology. Although “local” in category theory typically refers to hom-sets, the “local” here refers to the objects (in an internal sense): if you look closely inside an object in a locally \kappa-presentable category, then you will only see a <\kappa amount of data (e.g., relations in an R-module involve finitely many elements of the module). Perhaps it would be more correct to call these “categories of locally \kappa-presentable objects.”

It’s important to note that these conditions imply that, in fact, there is only a set of \kappa-small objects in a locally \kappa-presentable category (up to isomorphism): indeed, if S is the generating set, then every \kappa-small object will be a (split!) subobject of one in S. To see this, let A be \kappa-small, then A = \varinjlim_{i\in I}S_i with all S_i\in S and I a \kappa-filtered category. Since A is small, \mathrm{Hom}(A,A) = \varinjlim_{i\in I}\mathrm{Hom}(A,S_i) and so the identity of A factors through some A\to S_i. Locally presentable categories are well-powered, so any object necessarily has a set of subobjects, and so the claim follows.

Therefore, instead of trying to be clever in finding a generating set of subobjects, it’s enough to prove that (1) every object is a \kappa-filtered colimit of \kappa-small objects, and (2) the \kappa-small objects form a set up to isomorphism. Since \kappa-small colimits of \kappa-small objects are \kappa-small, the (essentially small) full subcategory \mathrm{Pres}_\kappa of all \kappa-small objects is \kappa-filtered (and likewise so are its slice categories) In fact, for any locally \kappa-presentable category \mathcal{C}, we have \varinjlim\big((\mathrm{Pres}_\kappa\downarrow A)\to\mathcal C\big) \cong A for any object A [AR94, Proposition 1.22]. This means not only that we don’t need to be clever about picking a generating set, but we don’t even need to be clever about how to generate the rest of the objects either.

To give this phenomenon a name: an object A of \mathcal C is called a canonical colimit of objects of a full subcategory \mathcal S if the canonical cocone from (\mathcal S\downarrow A)\to\mathcal C to A is universal. Moreover, the subcategory \mathcal S is called dense if every object of \mathcal C is a canonical colimit of objects in \mathcal S [AR94, §0.4 and Definition 1.23]. Therefore, the previous paragraph tells us that \mathrm{Pres}_\kappa is dense in a locally \kappa-presentable category.

Subcategories of Presheaves

Density of \mathcal S\subset\mathcal C can also be described more briefly: it is dense iff the canonical functor \mathcal C\to\mathbf{PSh}(\mathcal S), X\mapsto \mathrm{Hom}(-,X)|_{\mathcal S^{\mathrm{op}}} is fully faithful [AR94, Proposition 1.26(i)]. Indeed, this follows from the fact that morphisms of presheaves h_X\Rightarrow h_Y over \mathcal S correspond to cocones from (\mathcal S\downarrow X)\to\mathcal C to Y: every h_XS\to h_YS describes how to how to map every S/X to Y, while naturality ensures this mapping is compatible with the morphisms in \mathcal S.

If every object of \mathcal S\subset\mathcal C is \kappa-small, then by definition the canonical functor \mathcal C\to\mathbf{PSh}(\mathcal S), X\mapsto \mathrm{Hom}(-,X)|_{\mathcal S^{\mathrm{op}}} will preserve \kappa-filtered colimits, since all colimits are computed pointwise in \mathbf{PSh}(\mathcal S). In fact, the converse is true as well.

These combine to show that every locally \kappa-presentable category \mathcal C embeds fully faithfully into a category of presheaves—namely \mathbf{PSh}(\mathrm{Pres}_\kappa\mathcal C)—and this embedding preserves \kappa-filtered colimits. By general abstract nonsense (namely the nerve-realisation adjunction described in my adjunct to adjunctions), the cocompleteness of \mathcal C implies that this embedding has a left adjoint (defined by cocontinuously extending the inclusion \mathrm{Pres}_\kappa\hookrightarrow\mathcal C), realising \mathcal C as a reflective subcategory of \mathbf{PSh}(\mathrm{Pres}_\kappa\mathcal C), which is moreover closed under \kappa-filtered colimits.

Note that presheaf categories (out of small categories) are always locally finitely presentable. Indeed, the Yoneda Lemma implies that representable functors are tiny (in the sense that their corepresentable functors preserve all colimits):

\mathrm{Hom}(h_X,\varinjlim_iF_i) \cong \left(\varinjlim_iF_i\right)(X) := \varinjlim_iF_i(X) \cong \varinjlim_i\mathrm{Hom}(h_X,F_i)

On the other hand, the co-Yoneda Lemma shows that F \cong \varinjlim\big((\mathcal C\downarrow F)\to\mathbf{PSh}\mathcal C\big), so as to ensure that every presheaf is a canonical directed colimit. Moreover, since \kappa-small objects are closed under \kappa-small colimits, it follows that \kappa-small colimits of representables are precisely the \kappa-small presheaves.

Theorem 3. (Representation Theorem) A category is locally \kappa-presentable iff it is a full reflective subcategory of a category of presheaves that is closed under \kappa-directed colimits.


Proof. We have already seen one direction. In the other direction, we can actually prove the more general result that a full reflective subcategory of a locally \kappa-presentable category that is closed under \kappa-directed colimits is also locally \kappa-presentable. Indeed, suppose \mathcal C\hookrightarrow\mathcal P be a reflective inclusion into a locally \kappa-presentable category, and denote the reflector by T. Then, set \mathcal S := \{TA \mid A \in \mathrm{Pres}_\kappa\mathcal P\}, which is an essentially small full subcategory of \mathcal C consisting of \kappa-small objects (since \mathrm{Hom}_{\mathcal C}(TA,-) = \mathrm{Hom}_{\mathcal P}(A,i(-)) will preserve \kappa-directed colimits so long as the same is true for the inclusion i). Moreover, for every object X\in\mathcal C, we get that \varinjlim_{TA\to X}TA = T\varinjlim_{TA\to X}A = T\varinjlim_{A\to i(X)}A = T(i(X)) \cong X, using that i is fully faithful (as this implies that the adjunction counit Ti\Rightarrow(-) is a natural isomorphism.) \blacksquare

A nice corollary of this is that if \mathcal C is locally \kappa-presentable, and \mathcal A is an essentially small category, then \mathrm{Func}(\mathcal A,\mathcal C) is locally \kappa-presentable. Indeed, embed \mathcal C into its presheaf category \mathbf{PSh}(\mathrm{Pres}_\kappa\mathcal C), then this functor category embeds into \mathbf{PSh}(\mathcal A^{\mathrm{op}}\times\mathrm{Pres}_\kappa\mathcal C), and is reflective and closed under \kappa-directed colimits (both determined objectwise on \mathcal A).

Models of Limit Sketches

Let \mathcal C be locally \kappa-presentable, so that it embeds \mathcal C\hookrightarrow\mathbf{PSh}(\mathrm{Pres}_\kappa) as a reflective subcategory. It turns out that the essential image of this embedding is then precisely the subcategory \mathbf{Cont}_\kappa(\mathrm{Pres}_\kappa^{\mathrm{op}}) of \kappa-continuous functors \mathrm{Pres}_\kappa^{\mathrm{op}}\to\mathbf{Set} (i.e., those functors that preserve \kappa-small limits).

That h_X|_{\mathrm{Pres}_\kappa} preserves \kappa-small limits comes from the fact that h_X preserves all limits of \mathcal C^{\mathrm{op}} (i.e., sends colimits in \mathcal C to limits in \mathbf{Set}), and \kappa-small colimits in \mathrm{Pres}_\kappa can just be computed in the ambient category \mathcal C. Other colimits may also exist in this subcategory, but they will generally differ from those of \mathcal C. For the converse, just consult [AR94, Theorem 1.46]: ultimately, any \kappa-continuous functor F: \mathrm{Pres}_\kappa^{\mathrm{op}} \to \mathbf{Set} can be written as F\cong\varinjlim\big(( \mathrm{Pres}_\kappa^{\mathrm{op}} \downarrow F)\to\mathbf{PSh}\mathcal C\big), and this colimit turns out to be \kappa-filtered.

The category \mathbf{Cont}_\kappa\mathcal A is actually the category of models for the following limit sketch: take \mathcal A as the underlying category, and the cone sketches are precisely the limit cones in \mathcal A. (This follows by the very definition of being a model: i.e., it is a functor to \mathbf{Set} that sends cone sketches to limit cones.) Therefore, all locally \kappa-presentable categories are categories of models for \kappa-small limit sketches.

The converse is also true [AR94, Proposition 1.51]. Let S be a \kappa-small limit sketch, then the category of models for S clearly embeds into \mathrm{Func}(S,\mathbf{Set}) and is closed under \kappa-filtered colimits (since such colimits commute with \kappa-finite limits), but it actually turns out that this inclusion admits a left adjoint [AR94, Theorem 1.39] (essentially, the left adjoint performs transfinite “corrections” to a functor so that limit sketches do ultimately get mapped to limits). Therefore, \mathbf{Models}(S) is locally \kappa-presentable, generated by the “corrections” of the corepresentable functors S\to\mathbf{Set}.

To summarise: a category is locally \kappa-presentable iff it is locally small, cocomplete, and admits a set of \kappa-small objects that generate the category under \kappa-filtered colimits, iff it is equivalent to a full reflective subcategory of some category of presheaves that is closed under \kappa-directed colimits, iff it is equivalent to the category of models for a \kappa-small limit sketch.

Essentially Algebraic Theories

Realising every locally presentable category as a category of models of a small limit sketches sounds almost like it transforms the possibly abstract category into something way more concrete: models of limit sketches are concrete realisations of objects of the sketch as sets so that certain cones are limit cones. However, this makes us identify the objects of our locally presentable category with models, so it’s still one step more abstract than a first impression may suggest: this is no less abstract than being realised as a full reflective subcategory of presheaves.

On the other hand, perhaps we should expect that objects of a locally presentable category are somehow intrinsically “concrete” as sets with structure (in a much more honest way than I suggested here). What I’m referring to here are the following:

Definition 4. A \kappa-ary essentially algebraic theory \Gamma = (\Sigma, E, \Sigma_{\mathrm{tot}}, \mathrm{Def}) consists of

  • a \kappa-ary signature \Sigma, meaning we have a set S of sorts (i.e., types), a set of function symbols \sigma with arities \mathrm{arity}(\sigma) \in S^{<\kappa} = \coprod_{0\leq n<\kappa}S^n.
  • a set E of \Sigma-equations using <\kappa free variables. These describe the kinds of “algebraic equations” an algebra in this theory must satisfy.
  • a subsignature \Sigma_{\mathrm{tot}}\subset\Sigma of those functions in \Sigma that get coined “total” (the remaining functions being called “partial”)
  • a function \mathrm{Def} sending partial functions \sigma:(s_i)_i\to t to a set \mathrm{Def}(\sigma) of \Sigma_{\mathrm{tot}}-equations using <\kappa free variables. These equations describe exactly what the true domain of \sigma is

In accordance with the specified interpretation, a model of \Gamma is an S-sorted set A = (A_s)_{s\in S} equipped with an assignment of every function \sigma:(s_i)_i\to t with a partial function \sigma_A:\prod_iA_{s_i}\to A_t such that

  • A satisfies every \Sigma-equation in E
  • if \sigma is a total function, then so is \sigma_A
  • if \sigma is not a total function, then \sigma_A(\vec x) is well-defined iff \vec x satisfies the \Sigma_{\mathrm{tot}}-equations in \mathrm{Def}(\sigma).

A \Gamma-model homomorphism is an S-sorted function \phi:A\to B such that \sigma_B(\phi(\vec x)) is well-defined whenever \sigma_A(\vec x) is, and \sigma_B(\phi(\vec x)) = \phi(\sigma_A(\vec x)) in this case. Denote the resulting category by \mathbf{Mod}(\Gamma).

Any category equivalent to some \mathbf{Mod}(\Gamma) for a \kappa-ary essentially algebraic theory \Gamma is called essentially \kappa-ary algebraic.

Certainly a truly algebraic theory (such as the theory of groups or rings) fits under the above umbrella and yield what you would expect (the models for the theory of groups are precisely the groups). The reason for including partial functions is to encode also categories such as the category of (small) categories. Indeed, \mathbf{Cat}=\mathbf{Mod}(\Gamma), where

  • there are two sorts S=\{\mathrm{obj},\mathrm{mor}\} corresponding to objects and morphisms, respectively
  • the total functions are \mathrm{dom}, \mathrm{codom} : \mathrm{mor}\to\mathrm{obj} and \mathrm{id}:\mathrm{obj}\to\mathrm{mor}
  • the only partial function is \circ:(\mathrm{mor},\mathrm{mor})\to\mathrm{mor}, where \mathrm{Def}(\circ) consists of the one equation \mathrm{dom}(g)=\mathrm{codom}(f) (regarding the well-definedness of g\circ f)
  • the equations of E are precisely the axioms of category theory

From [AR94, Theorem 3.36(I)], every essentially \kappa-ary algebraic category is locally \kappa-presentable. The more striking statement is that the converse is also true!

To warm up, let’s first look at presheaf categories. In this case, the result isn’t too surprising: we can think of a presheaf A:\mathcal S^{\mathrm{op}}\to\mathbf{Set} as a set sorted over the objects of \mathcal S, where every morphism i\to j induces a function A_j\to A_i, and these functions respect the composition rules of \mathcal S. In this way, \mathbf{PSh}(\mathcal S) is the category of models for a unary algebraic theory.

To understand how to realise any other locally presentable category as an essentially algebraic theory, we can piggyback off of the full reflective embedding of any locally presentable category \mathcal C into the presheaf category \mathbf{PSh}(\mathrm{Pres}_\kappa\mathcal C). To take full advantage of this, we need to detour a bit about what it means for an embedding to be reflective:

Suppose \mathcal C\hookrightarrow\mathcal K is a full reflective subcategory. Recall this means that the inclusion admits a left adjoint T (the reflector). Since the embedding is fully faithful, the adjunction counit is an isomorphism (i.e., TX\cong X for every X\in\mathcal C). On the other hand, the adjunction unit gives us a reflector r_K:K\to TK for every K\in\mathcal K. The universal property of the adjunction T\dashv i is then that all maps K\to X with X\in\mathcal C factor uniquely through the reflector r_K:K\to TK.

This means that X\in\mathcal C is orthogonal to the class of reflectors in \mathcal K. If \mathcal K is locally \kappa-presentable, and \mathcal C is closed under \kappa-directed colimits, then in fact \mathcal C is precisely the full subcategory of those objects of \mathcal C that are orthogonal to the reflectors of \kappapresentable objects in \mathcal K (and the converse is also true: the full subcategory of objects orthogonal to any set of morphisms with locally \kappa-presentable domains and codomains in \mathcal K is reflective and closed under \kappa-directed colimits! [AR94, Theorem 1.39]).

In particular, if \mathcal C is locally \kappa-presentable, then via \mathcal C\hookrightarrow\mathbf{PSh}(\mathrm{Pres}_\kappa\mathcal C), identify \mathcal C with the class of presheaves A which are orthogonal to the reflectors P\Rightarrow\mathrm{Hom}_{\mathcal C}(-,|P|). This gives us “equations” that describe the subcategory \mathcal C.

Therefore, begin with the unary algebraic theory \Gamma = (\Sigma,E) for \mathbf{PSh}(\mathrm{Pres}_\kappa\mathcal C) (where the sorts are the \kappa-presentable objects, and the functions are the morphisms in \mathcal C). We are interested in the \kappa-presentable objects here (which we may identify with unary algebras), which are precisely the algebras which can be described using <\kappa generators modulo <\kappa equations [AR94, Theorem 3.12]. Therefore, for each \kappa-presentable object K, let \{p_i^K\}_i be a set of <\kappa generators subject to a set E_K of <\kappa equations. Say that p_i^K has type (sort) s_i^K.

Extend the signature \Sigma to include partial functions h_a^K:(s_i^K)_i\to s for every a\in TK_s (viewing K as a unary algebra) with \mathrm{Def}(h_a^K) = E_K, and call it \Sigma^*. The idea is that these partial functions encode the reflectors. To encode orthogonality wrt these reflectors, include the equations \sigma\circ h_a^K = h_{\sigma_{TK}(a)}^K for every \sigma:s\to s in \Sigma (making the reflectors natural), and add the equations p_i^K = h_{r_K(p_i^K)}^K, which reduces any function out of K to a function out of TK, in terms of the generators. A model for the resulting essentially algebraic theory basically only defines functions TK\to A (by interpreting all h_a^K), as there can only ever be one map K\to A corresponding to each by orthogonality. This rough sketch basically summarises:

Theorem 5. A category is locally \kappa-presentable iff it is the category of models for an essentially \kappa-ary algebraic theory.

3 thoughts on “Local blog presents: local presentability

Leave a comment