nLab locally internal category


A locally internal category is an analogue of a large but locally small category relative to an elementary topos, when that topos is thought of as generalizing the category of sets.

More generally, locally internal categories can be defined over any category with finite limits. The notion is best-behaved when EE is locally cartesian closed (for instance, in that case the codomain fibration of EE is an example).


Given a category EE with finite limits and an object XX in EE, one notices that the slice category E/XE/X is a symmetric monoidal category under fiber product in EE. Hence we can consider categories enriched over E/XE/X, i.e. E/XE/X-categories.

A locally internal category CC over EE is given by

  • An (E/X)(E/X)-enriched category C XC_X for each object XX in EE. This is thought of as the category of XX-indexed families of objects of EE.

  • For each morphism f:XYf \colon X\to Y in EE, an (E/X)(E/X)-full embedding θ f:f *C YC X\theta_f \colon f^* C_Y\to C_X. Here f *C Yf^* C_Y means the (E/X)(E/X)-enriched category obtained by applying the symmetric monoidal functor f *:E/YE/Xf^* \colon E/Y \to E/X to the hom-objects of the (E/Y)(E/Y)-enriched category C YC_Y, and an enriched functor is a “full embedding” if it induces isomorphisms on hom-objects.

  • fθ ff \mapsto \theta_f is functorial up to coherent isomorphism. This means certain diagrams commute analogous to those of a pseudofunctor, but with the functors f *f^* applied at appropriate places to make them typecheck.

Alternatively, a category locally internal to EE is a category enriched in the bicategory Span ( E ) Span(E) admitting certain absolute colimits (see Betti–Walters).


In the stack semantics of EE, a locally internal category “looks like” an ordinary locally small category.

Locally internal categories can also be identified with Grothendieck fibrations or indexed categories over EE which satisfy a certain “representability” or “comprehensibility” condition:

A Grothendieck fibration p:CEp: C \to E is called locally small if, for every pair A,BCA,B \in C, there exists an object of E pA×pBE_{pA \times pB}, (x,y):IpA×pB(x,y) : I \to pA \times pB, and a morphism f:x *Ay *BC If: x^*A \to y^*B \in C_I, which is terminal, in the sense that given another such datum (J,z,w,g)(J,z,w,g), there is a unique map u:JIu: J \to I so that xu=z,yu=wxu = z, yu = w, and the coherence isomorphisms identify u *fu^*f with gg. (This is Elephant B.1.3.12).

An indexed category ECATE \to \operatorname{CAT} is called locally small if the associated fibration is locally small.

If we also take care of the appropriate morphisms have the following:


(1) The obvious forgetful functor from locally internal categories to EE-indexed categories (equivalently, Grothendieck fibrations over EE) is a fully faithful 2-functor. In particular, every indexed functor between locally internal categories is an enriched functor. Elephant, Proposition B2.2.2.

(2a) Let SS be a locally cartesian closed category, let F:SSF:S\to S be an SS-enriched functor whose underlying (ordinary) functor preserves pullbacks. Then FF extends to an SS-indexed functor.

(2b) (Robert Pare) If this indexed functor preserves pullbacks (as an indexed functor) and if it induces the given enrichment, this extension is unique (up to a canonical isomorphism). Elephant B2.2.8.


  • J. Penon, Catégories localement internes, C. R. Acad. Sci. Paris 278 (1974) A1577-1580 (gallica)

  • Locally internal categories, Appendix in: P. Johnstone, Topos theory, 1977

  • Chapter B2.2 of Sketches of an Elephant

  • Renato Betti, Robert F. C. Walters, Closed bicategories and variable category theory, Universita degli Studi di Milano (1985), reprinted in: Reprints in Theory and Applications of Categories, 26 (2020) 1-27 [[tac:tr26]]

Last revised on December 15, 2023 at 07:42:08. See the history of this page for a list of all contributions to it.