You're reading the public-facing archive of the Category Theory Zulip server.
To join the server you need an invite. Anybody can get an invite by contacting Matteo Capucci at name dot surname at gmail dot com.
For all things related to this archive refer to the same person.
In what I've come across, by far the most important examples of comma categories are slice and coslice categories - for example, these help characterise adjunctions. There are a few other examples like the arrow category being , though this can equivalently be described as the functor category .
However, slice and coslice categories can equally well be described as categories of elements for a given set-valued functor. This works because one of the functors involved in the comma category is a constant one; if you take the category of elements of Hom, for example, you get the twisted arrow category rather than the usual one.
I guess to me, categories of elements feel more intuitive as the "total space" of a discrete fibration, as part of a larger story concerning how "J-indexed families of Xs" can either be viewed as a map from J to the collection of all Xs, or a bundle over J whose fibers are Xs. Comma categories on the other hand feel more specific to category theory and don't have an obvious generalization outside of it, at least to my knowledge.
So my question is - are there instances where the language of comma categories is genuinely helpful compared to just the language of categories of elements? As far as I can tell, this would need to be a where both and are nontrivial, since both slice and coslice categories can be described as categories of elements.
Ruby Khondaker (she/her) said:
I guess to me, categories of elements feel more intuitive as the "total space" of a discrete fibration, as part of a larger story concerning how "J-indexed families of Xs" can either be viewed as a map from J to the collection of all Xs, or a bundle over J whose fibers are Xs. Comma categories on the other hand feel more specific to category theory and don't have an obvious generalization outside of it, at least to my knowledge.
Comma categories can be described as the total spaces of the displayed category
Josselin Poiret said:
Ruby Khondaker (she/her) said:
I guess to me, categories of elements feel more intuitive as the "total space" of a discrete fibration, as part of a larger story concerning how "J-indexed families of Xs" can either be viewed as a map from J to the collection of all Xs, or a bundle over J whose fibers are Xs. Comma categories on the other hand feel more specific to category theory and don't have an obvious generalization outside of it, at least to my knowledge.
Comma categories can be described as the total spaces of the displayed category
I think I'm misunderstanding - this seems to use the notion of a comma category to define comma categories?
Just as
(the total category of a specific displayed category),
i.e. there really isn't anything more fundamental about slice/coslice being total categories of displayed categories vs. comma categories
Comma categories are examples of categories of elements of a distributor or profunctor. Given a distributor viewed as a functor , its category of elements has objects given by triples and morphisms given by morphisms in and in such that .
Bryce Clarke said:
Comma categories are examples of categories of elements of a distributor or profunctor. Given a distributor viewed as a functor , its category of elements has objects given by triples and morphisms given by morphisms and such that .
So explicitly, what is the arrow category the category of elements of?
of the profunctor
Josselin Poiret said:
of the profunctor
But I thought this gives the twisted arrow category, not the usual arrow category?
it depends on what you're considering: the definition above is not the same as the category of elements of the presheaf
Oh, then I think there are multiple notions of categories of elements I’m unfamiliar with - I only know about the presheaf version
The identity/hom distributor may be seen as a functor . This functor can also be viewed as a distributor or
Taking the category of elements of these latter distributors gives the twisted arrow category.
Ah, so really I should think of the category of elements as an operation on profunctors rather than on presheaves?
Absolutely!
I see, that actually makes a lot more sense come to think of it - e.g. presheaves are functors C^op -> Set, but for their category of elements it often makes more sense to view it as over C than over C^op. But of course that makes sense if you view it as a profunctor from C to 1
Exactly. Everything is better with distributors.
you can think of it this way: in a directed setting,
is different from
Checking nlab, it seems that “category of elements of a profunctor” is one of the notions listed under “graph of a profunctor”? Whereas the category of elements page only takes about Set-valued functors…
Given a cospan of functors its comma category is the same as the category of elements of the distributor which may be viewed as a functor
Ok so these really aren’t distinct concepts at all then!
Ruby Khondaker (she/her) said:
Ok so these really aren’t distinct concepts at all then!
Yes, the category of elements of a profunctor (also called its tabulator) is all that you need :)
Ruby Khondaker (she/her) said:
Checking nlab, it seems that “category of elements of a profunctor” is one of the notions listed under “graph of a profunctor”? Whereas the category of elements page only takes about Set-valued functors…
I think these nlab pages should be updated. I will add it to my to-do list, unless you feel happy to update them yourself.
I’d be more than happy to once I feel like I understand this all properly :)
So my question is - are there instances where the language of comma categories is genuinely helpful compared to just the language of categories of elements? As far as I can tell, this would need to be a where both and are nontrivial, since both slice and coslice categories can be described as categories of elements.
So just to return to the original question: my answer is that the language of comma categories is entirely captured by the language of the category of elements of a distributor.
It's odd that Ruby asked "are there instances where the language of comma categories is genuinely helpful" and everyone is not answering that - not giving examples of how we use comma categories - but instead giving other ways to think about comma categories.
Let me give a random example of how someone can use comma categories. I haven't used them much, but I did once. In my paper with @Jade Master on Petri nets, we wanted to show our category of Petri nets has colimits. So we showed it's equivalent to a comma category and used a general result about when comma categories are cocomplete to get the job done. It's Lemma 15 here.
Comma categories are also essential to the theory of fibrations: it is a comma construction that builds the free (op)fibration on a functor:
Jacobs calls "fibred span" what other category theorists call "two-sided fibration"
Bryce Clarke said:
So my question is - are there instances where the language of comma categories is genuinely helpful compared to just the language of categories of elements? As far as I can tell, this would need to be a where both and are nontrivial, since both slice and coslice categories can be described as categories of elements.
So just to return to the original question: my answer is that the language of comma categories is entirely captured by the language of the category of elements of a distributor.
Is there a sense in which the "total space" of a displayed category is a kind of "category of elements"?
Bryce Clarke said:
The identity/hom distributor may be seen as a functor . This functor can also be viewed as a distributor or
Thanks for this, by the way! I decided to add a section on nlab which generalises this observation - https://ncatlab.org/nlab/show/profunctor#profunctors_and_product_categories.
I think the four different notions of "graph of a profunctor" really come from a single notion, but applied to the variants associated to a given profunctor that I describe in that section - i.e. there's really a single function , but one can also consider , , and . You can probably also show that and similarly , which explains how the notions of graph are related.
The analogy to vector spaces can be made more precise: finite-dimensional vector spaces are a [[compact closed category]], while Prof is a [[compact closed bicategory]].
Oh, that makes a lot of sense! I didn’t realise such a notion existed.
Ruby Khondaker (she/her) said:
Is there a sense in which the "total space" of a displayed category is a kind of "category of elements"?
This probably depends on what you're willing to accept as "a sense in which" and "a kind of", but I would say yes. For instance, the objects of the category of elements of a presheaf are pairs , while the objects of the total space of a displayed category are likewise pairs . I guess since we talk about "objects" of a category rather than "elements" of a set, maybe we should call it a "category of objects", but that would be kind of confusing.
John Baez said:
Let me give a random example of how someone can use comma categories.
To add to this, in me and David Jaz's paper about contextads we prove a theorem about the existence of certain pullbacks in 2-categories of algebras and colax morphisms. Since it's much easier to construct commas therein, we start from that and then prove the pullback arises by splitting an idempotent over the comma. Theorem 5.10 in here.
Also it seems this hasn't been mentioned in the thread before but categories of elements are commas: given an indexed set , the comma (where is the inclusion ), specifically the projection , is the opfibration of elements of . Viceversa, every indexed set arises this way: this is saying that is a 2-classifier in in the sense of Mesiti.
Matteo Capucci (he/him) said:
Also it seems this hasn't been mentioned in the thread before but categories of elements are commas: given an indexed set , the comma (where is the inclusion ), specifically the projection , is the opfibration of elements of . Viceversa, every indexed set arises this way: this is saying that is a 2-classifier in in the sense of Mesiti.
Yep that makes sense - would taking the opposite category, so , with a projection onto , produce a fibration?
Yep, morphisms give rise to opfibrations over which are equivalent to fibrations over after opping again :thumbs_up:
Nice nice - I think fibrations and the (generalised) Grothendieck construction were the last kind of “universal construction” I’d yet to understand, and this exploration of the relationship between comma categories, displayed categories and categories of elements has helped significantly with that!
Notice how it's all very similar to subobject classification / comprehension of predicates in a topos: Set is to Cat what Prop (=2) is to Set
Specifically, a monomorphism is a morphism with (-1)-dimensional fibers in category of 0-dimensional objects, whereas a discrete opfibration is a morphism with 0-dimensional fibers in a category of 1-dimensional object
Yes it seems very very similar - I guess the main difference to me is that a subobject classifier is supposed to classify, well, subobjects. But it seems here we’re just classifying arbitrary maps by some kind of map out of ? Does that concept have a name? Maybe you’d call it, like, an “object classifier” or “morphism classifier”…
Thus the category of elements construction is the categorification of the comprehension of predicates over a set
Ruby Khondaker (she/her) said:
But it seems here we’re just classifying arbitrary maps by some kind of map out of ?
Did my message above clarify? It's not arbitrary maps, they have fibers with the appropriate dimensionality. This is related to the dimension of homs: if your homs are (n+1)-dimensional, you can classify at most maps with n-dimensional fibers.
Hm then I think I’ve probably misunderstood your message :sweat_smile:. What does it mean to have (-1)-dimensional fiber? And I guess I don’t quite understand what you mean by 0-dimensional or 1-dimensional objects…
Ruby Khondaker (she/her) said:
Does that concept have a name? Maybe you’d call it, like, an “object classifier” or “morphism classifier”…
In general, classify s when maps into correspond to s. Usually s are other maps, and classification is given by pullback, but more generally there is a notion of 'comprehension scheme for a fibration' which explains how this stuff can be made to work in a certain generality.
Ruby Khondaker (she/her) said:
Hm then I think I’ve probably misunderstood your message :sweat_smile:. What does it mean to have (-1)-dimensional fiber? And I guess I don’t quite understand what you mean by 0-dimensional or 1-dimensional objects…
Oh, it's just a convention coming from HoTT/higher category theory. A -type/category is a set. An -type is one for which the homs between elements are -dimensional. Going negative, a -type is a truth value (i.e. a subobject of ).
A monomorphism has fibers with at most one element, thus -1-dimensional :) a discrete opfibration has fibers which are sets, thus 0-dimensional
Ah ok I think I see what you mean! So should I understand “comprehension” as the ability to take a classifying map (e.g. a map into a subobject classifier) and construct a “total space”, i.e. a morphism with the prescribed fibers (so the subobject)?
And I suppose this kind of phenomenon stabilises when you get to -categories, where in fact you can classify any morphism?
Ruby Khondaker (she/her) said:
Ah ok I think I see what you mean! So should I understand “comprehension” as the ability to take a classifying map (e.g. a map into a subobject classifier) and construct a “total space”, i.e. a morphism with the prescribed fibers (so the subobject)?
And I suppose this kind of phenomenon stabilises when you get to -categories, where in fact you can classify any morphism?
Yes!
Ruby Khondaker (she/her) said:
And I suppose this kind of phenomenon stabilises when you get to -categories, where in fact you can classify any morphism?
Uh---honestly idk? My hunch is that this in an -cat you still can only classify maps with -dimensional fibers
(deleted)
So when you do things like displayed categories, this must be why you have to regard the base category as a bicategory with trivial 2-cells, right? That way, you can classify 1-dimensional fibers (categories)
Matteo Capucci (he/him) said:
Ruby Khondaker (she/her) said:
And I suppose this kind of phenomenon stabilises when you get to -categories, where in fact you can classify any morphism?
Uh---honestly idk? My hunch is that this in an -cat you still can only classify maps with -dimensional fibers
It seems like this paper suggests it might actually be possible - something about Lurie’s straightening/unstraightening theorem? https://arxiv.org/pdf/2408.16539
Having read through that link, it indeed seems very related to what we were discussing here, in terms of a generalised notion of “classifying maps”.
Thank you for asking these questions and starting this discussion, it was very clarifying and helpful.
Aww, no problem! I’ve just been trying my best to understand fibrations and bundles recently, and really feel like I’ve made a lot of progress :D
Mike Shulman said:
Ruby Khondaker (she/her) said:
Is there a sense in which the "total space" of a displayed category is a kind of "category of elements"?
This probably depends on what you're willing to accept as "a sense in which" and "a kind of", but I would say yes. For instance, the objects of the category of elements of a presheaf are pairs , while the objects of the total space of a displayed category are likewise pairs . I guess since we talk about "objects" of a category rather than "elements" of a set, maybe we should call it a "category of objects", but that would be kind of confusing.
I always thought that there is something very deep about the fact that all functors with codomain define sort-of functors out of . It doesn't matter how ill-behaved the functor into is, its fibers will always vary lax-functorially. Indeed, it took no less than Bénabou to find out :-)
I’ve heard Bénabou’s name a lot, but I’m not actually that familiar with what their contributions were; what did they accomplish?
The theory of monoidal categories, fibered categories, the notion of bicategory, parts of topos theory, the custom to regard the theory of monads formally... all these things would not exist without the work of Bénabou. https://en.wikipedia.org/wiki/Jean_Bénabou and https://ncatlab.org/nlab/show/Jean+Bénabou contain important references. Check in particular https://www2.mathematik.tu-darmstadt.de/~streicher/BeNo.pdf (Thomas Streicher, who recently passed away, took care of writing up and popularizing several ideas that were in the "folk mathematics" around Bénabou).
In particular, Bénabou was the first to realize that a functor must define a lax normal functor (defining, at the same time, the bicategory of such "profunctors" or "distributors/distributeurs). As far as I know, Grothendieck only knew the way stronger result about pseudofunctors corresponding to fibrations.
I saw him only twice -the first time, in Paris. He sounded opinionated, hot-blooded, and unfathomably competent. Three features I appreciate in people.
In this diagram of equivalence of categories, every time you weaken a property of the functor you get something meaningful on the other side, that preserve the bundle-theoretic intuition of a category being a space that "lies over" another.
This also tells you that lax functors that do not preserve the identity are an ugly thing; the image of all under , i.e. the family of categories , does not glue all its parts tight together in a bundle.
This also tells you that lax functors that do not preserve the identity are an ugly thing
This is not true. Normal lax functors into Prof are the same as lax functors into Span.
eww ugly indeed
Ruby Khondaker (she/her) said:
Matteo Capucci (he/him) said:
Ruby Khondaker (she/her) said:
And I suppose this kind of phenomenon stabilises when you get to -categories, where in fact you can classify any morphism?
Uh---honestly idk? My hunch is that this in an -cat you still can only classify maps with -dimensional fibers
It seems like this paper suggests it might actually be possible - something about Lurie’s straightening/unstraightening theorem? https://arxiv.org/pdf/2408.16539
This appears to be an infinity version of the Benabou observation fosco Is talking about. Notice Corr is a double category there, so still a dimension higher than the fibers of the maps it classifies!
I guess you can hope to come full circle only in omega-cats, but that's a whole can of worms I'm not ready to deal with lol
fosco said:
As far as I know, Grothendieck only knew the way stronger result about pseudofunctors corresponding to fibrations.
Giraud has several works (on the 2-topos of internal cats) using the correspondence between exponentiable fibrations and profunctor-valued presheaves. So Grothendieck was aware of, at least, the pseudofunctorial case.
Nathanael Arkor said:
This also tells you that lax functors that do not preserve the identity are an ugly thing
This is not true. Normal lax functors into Prof are the same as lax functors into Span.
But does that clarify what sort of fibration-like things should such functors correspond to?
For a small category C, normal lax functors from C to Prof, and lax functors from C to Span, are both equivalent to arbitrary functors with small domain and codomain C.
Mike Shulman said:
For a small category C, normal lax functors from C to Prof, and lax functors from C to Span, are both equivalent to arbitrary functors with small domain and codomain C.
I think I didn't express myself properly. I mean to what sort of fibration-like structure should a (possibly non-normal) lax functor valued in profunctors correspond?
Well, in general a lax functor is equivalent to a normal lax functor , where Mod denotes the construction of monoids (monads) and modules. Precisely, Mod is right adjoint to the forgetful functor from virtual double categories with units to those without. Thus, a lax functor is equivalent to a normal lax functor . The objects of Mod(Prof) are bijective-on-objects functors, and the morphisms are profunctors between their codomains. Thus, I guess the corresponding fibration-like-thing would be a bijective-on-objects functor in that is fully faithful over non-identities in .
Mike Shulman said:
the objects of the total space of a displayed category are likewise pairs .
small nitpick: displayed categories are weaker than functors
Yes, I meant or . (Although some people do denote the double category of categories, functors, and profunctors by "Cat".)
FWIW, the Span perspective is even better for the terminology "category of elements", since a lax functor sends each object of to a set that has elements.
Is there an version of this? I'd guess functors into a double category might correspond to (lax, lax, pseudo)-functors from into the triple category of sets with spans and spans and functions?
I couldn't find anything online:Screenshot_20250727-135447.Firefox~2.png
Not in the literature (yet).
Oscar Cunningham said:
Is there an version of this? I'd guess functors into a double category might correspond to (lax, lax, pseudo)-functors from into the triple category of sets with spans and spans and functions?
This triple category has been called the "intercategory" of sets.
I'm currently writing a paper that tries to establish a correspondence between internal profunctors between triple categories, and (lax,lax) double functors into the intercategory of sets.
I have recently found the "Double Fibrations" paper by Cruttwell and others which establishes a kind of Grothendieck construction linking functors in double categories to double fibrations. I'm not sure yet how relevant it is.
The correspondence of CLPS should be a fragment of the full correspondence for a three-dimensional notion of fibration.
Hm so is there a general name for this sort of "indexed-fibred duality"? Roughly I can see that going indexed -> fibred is a kind of "comprehension", and going fibred -> indexed is a kind of "classifying map", but not much further than that...