Category Theory
Zulip Server
Archive

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.


Stream: learning: questions

Topic: profunctors and tensor-hom adjunctions


view this post on Zulip David Egolf (May 02 2025 at 21:18):

I'm interested in understanding how "tensor-hom" adjunctions arise, and when such an adjunction is in fact a geometric morphism. I'm specifically interested in understanding how tensor-hom adjunctions can arise from profunctors, and I'd like to try this out with a few examples. It could also be interesting to note some common patterns that can be used to construct profunctors. Along the way, I want to learn how to compose profunctors - and to use this as a chance to learn a little bit about coends.

I'm hoping to structure this thread around specific questions and specific exercises. I'm not sure quite yet which specific question or exercise I'd like to start with, but I wanted to get this thread started! Going forward, I'm currently planning to reference discussion and exercises from "Sheaves in Geometry and Logic" (by Mac Lane and Moerdijk) and/or "Coend calculus" (by Fosco Loregian).

If anyone has any initial thoughts or suggestions at the start of this thread, please feel free to share those! Otherwise, I will plan to create a second post in this thread once I have a specific first exercise or discussion topic in mind.

view this post on Zulip Ryan Wisnesky (May 02 2025 at 21:30):

This paper https://arxiv.org/abs/2404.01406 talks about how different notions of pro functor presentation lead to failure or success of composition of presentations. If you need to compose specific finitely presented pro functors, the algorithms in that paper are implemented at http://categoricaldata.net

view this post on Zulip David Egolf (May 04 2025 at 15:18):

Thanks for your comment @Ryan Wisnesky. I hadn't heard about "presentations" of profunctors before. I'll keep that paper in mind in case I want to learn more about that, at some point.

view this post on Zulip David Egolf (May 04 2025 at 15:25):

Here's the first specific question I'd like to explore in this thread: What are some examples of profunctors?

view this post on Zulip David Egolf (May 04 2025 at 15:25):

The nLab informs me that if VV is a symmetric closed monoidal category VV (such as the category of sets), and CC and DD are categories enriched over VV, then a profunctor from CC to DD is a VV-functor :DopCV:D^{\mathrm{op}} \otimes C \to V.

view this post on Zulip David Egolf (May 04 2025 at 15:27):

I don't know what this \otimes is doing, yet - I guess there is some notion of tensor product between VV-enriched categories. However, in the case that V=SetV = \mathsf{Set}, I do know that a profunctor from a category CC to a category DD is just a functor :Dop×CSet:D^{\mathrm{op}} \times C \to \mathsf{Set}.

view this post on Zulip John Baez (May 04 2025 at 15:49):

Puzzle. Guess what the tensor product of VV-enriched categories CC and DD might be. For starters figure out the set of objects of CDC \otimes D, and then for any pair of objects in CDC \otimes D their hom-object, which is an object in VV.

Hint: copy the product of ordinary categories, replacing the cartesian product of sets by the tensor product of objects in VV whenever called for (and not otherwise).

A lot of basic enriched category theory is straightforward generalization of ordinary category theory, so it's good to get used to doing those generalizations without breaking a sweat. This lets you focus on the really novel aspects, like how limits and colimits get replaced by [[weighted limits]] and [[weighted colimits]]. These are connected to ends and coends, so they may become important when composing [[enriched profunctors]].

view this post on Zulip Kevin Carlson (May 04 2025 at 17:05):

David Egolf said:

Here's the first specific question I'd like to explore in this thread: What are some examples of profunctors?

The most important profunctor is Hom:CopCV.\mathrm{Hom}: C^{\mathrm{op}}\otimes C\to \mathcal V. If you have functors f,g:D,ECf,g: D,E\to C then there’s the restricted hom Hom(f(),g()):DopEV.\mathrm{Hom}(f(-),g(-)):D^{\mathrm{op}}\otimes E\to \mathcal V. If ff or gg picks out a single object then this restricted hom is a representable presheaf or copresheaf in the familiar sense! So one things profunctors do immediately is generalize representability to a concept that can vary in both variables at once.

view this post on Zulip Kevin Carlson (May 04 2025 at 17:07):

A very different feel of example comes from drawing any category you like over the partial order 0<1.0<1. The inverse image of 00 becomes the domain of a profunctor and the inverse image of 11, the codomain, while the arrows over the nontrivial arrow in 0<10<1 becomes the values. You might like to try to flesh out this sketch to show these things really do give profunctors, but it could also be useful just to draw some tiny examples in this way.

view this post on Zulip David Egolf (May 05 2025 at 19:22):

Thanks to both of you! Both of your responses will be interesting to work through.

To begin with, I think the puzzle @John Baez provided would be a great place to start. So let me see if I can guess what the tensor product of two VV-enriched categories CC and DD might be.

view this post on Zulip David Egolf (May 05 2025 at 19:24):

If we assume that CC and DD are small, they each have a set of objects. So it seems reasonable to try setting the objects of CDC \otimes D to be the cartesian product of the set of objects of CC with the set of objects of DD.

(I suppose that if CC or DD were categories internal to some category, then they might not have a set of objects, and we might want to do something fancier to form our new "object of objects".)

view this post on Zulip David Egolf (May 05 2025 at 19:27):

Next, we'd like to find the hom-object for any ordered pair of objects in CDC \otimes D. So, let's try to figure out the hom-object from (c,d)(c,d) to (c,d)(c',d').

view this post on Zulip David Egolf (May 05 2025 at 19:29):

I expect this to be something in the spirit of the "product" of the morphisms :cc:c \to c' in CC with the morphisms :dd:d \to d' in DD. So, maybe we can try setting this hom object (CD)((c,d),(c,d))(C \otimes D)((c,d), (c',d')) to be C(c,c)D(d,d)C(c,c') \otimes D(d,d').

view this post on Zulip John Baez (May 05 2025 at 19:29):

Great! There is really nothing else you could have done.

view this post on Zulip John Baez (May 05 2025 at 19:30):

Of course you're not done yet, but you are following the tao of mathematics, like swimming downstream in a fast current.

I'm alluding to Chapter 19 of the Chuang-Tzu:

Confucius was looking at the cataract near the gorge of Lü, which fell a height of 240 cubits, and the spray of which floated a distance of forty lî, (producing a turbulence) in which no tortoise, gavial, fish, or turtle could play. He saw, however, an old man swimming about in it, as if he had sustained some great calamity, and wished to end his life.

Confucius made his disciples hasten along the stream to rescue the man; and by the time they had gone several hundred paces, he was walking along singing, with his hair dishevelled, and enjoying himself at the foot of the embankment. Confucius followed and asked him, saying, 'I thought you were a sprite; but, when I look closely at you, I see that you are a man. Let me ask if you have any particular way of treading the water.'

The man said, 'No, I have no particular way. I began (to learn the art) at the very earliest time; as I grew up, it became my nature to practise it; and my success in it is now as sure as fate. I enter and go down with the water in the very centre of its whirl, and come up again with it when it whirls the other way. I follow the way of the water, and do nothing contrary to it of myself;—this is how I tread it.

view this post on Zulip fosco (May 06 2025 at 05:57):

David Egolf said:

I expect this to be something in the spirit of the "product" of the morphisms :cc:c \to c' in CC with the morphisms :dd:d \to d' in DD. So, maybe we can try setting this hom object (CD)((c,d),(c,d))(C \otimes D)((c,d), (c',d')) to be C(c,c)D(d,d)C(c,c') \otimes D(d,d').

Note that symmetry is needed to define composition: the only possible definition is

(C(c,c)D(d,d))(C(c,c)D(d,d))...C(c,c)D(d,d)\big(C(c,c')\otimes D(d,d')\big)\otimes\big(C(c',c'')\otimes D(d',d'')\big) \to ... \to C(c,c'')\otimes D(d,d'')

view this post on Zulip James Deikun (May 06 2025 at 07:46):

Wow, so generically categories enriched in a non-symmetric monoidal category don't even have a tensor product? I guess you can get one though if you enrich in the colax product of a [[duoidal category]] VV -- then the other (lax) product induces a tensor product on VV-enriched categories.

view this post on Zulip Nathanael Arkor (May 06 2025 at 07:56):

Yes, this is Proposition 18 of Garner and López Franco's Commutativity. (See also section 13 of Lucyshyn-Wright's V-graded categories and V-W-bigraded categories.)

view this post on Zulip John Baez (May 06 2025 at 08:21):

You can define:

Note that in the last step it "stabilizes".

I believe all this should generalize to higher columns in the periodic table, e.g. for 2-categories (by which I really mean bicategories, sorry) you should be able to define

view this post on Zulip James Deikun (May 06 2025 at 08:29):

I assume this means you should be able to define a 2-category (3-category) of these things. What happens if you want a (symmetric/sylleptic/braided) monoidal 2-category of the things, or for that matter if you're content with just a 2-graph of them?

view this post on Zulip John Baez (May 06 2025 at 08:59):

That's a great question, but maybe you can guess the pattern as well as I can - I haven't thought about this question recently. I think the method of working out a few simple cases and then wildly extrapolating to pose some general conjectures is good here.

view this post on Zulip Mike Shulman (May 06 2025 at 17:59):

You can also do a [[horizontal categorification]] and define categories enriched in a bicategory, or even a (virtual) double category. In this case, it's straightforward to see that you get a tensor product of enriched categories if you enrich in a monoidal double category, using the tensor product on the double category to tensor hom-objects together (in contrast to how the composition of the double category is used when defining composition in enriched categories).

This "explains" why you need braiding in the case of enrichment over a monoidal category, since a one-object monoidal double category is essentially a category with two interchanging monoidal structures, which by the Eckmann-Hilton argument (the [[delooping hypothesis]]) is the same as a braided monoidal category.

view this post on Zulip David Egolf (May 06 2025 at 18:19):

Let me see if I can figure out how composition works. For any three objects (c,d),(c,d),(c,d)(c,d), (c',d'), (c'',d'') in CDC \otimes D, we want a "composition" morphism:

We saw just above that (CD)((c,d),(c,d))=C(c,c)D(d,d)(C \otimes D)((c,d), (c',d')) = C(c,c') \otimes D(d,d'), and we can use this to rewrite the above expression. Upon doing so, we get:

If VV is a braided monoidal category, then we intuitively have the ability to re-order the left side. There is then a morphism corresponding to our composition morphism of following type:

There is a morphism of this type that stands out to me. Because CC and DD are VV-enriched, we have composition morphisms:

Both of these morphisms are morphisms of VV, and so we can tensor them together to get a morphism presumably corresponding to our composition morphism.

view this post on Zulip David Egolf (May 06 2025 at 18:22):

It's not immediately clear to me that VV needs to be a symmetric monoidal category. (I think I only ended up using a braiding.) Is that needed so that this composition becomes associative, maybe?

view this post on Zulip Mike Shulman (May 06 2025 at 18:24):

It's not needed.

view this post on Zulip Mike Shulman (May 06 2025 at 18:25):

It's just that symmetric monoidal categories are so much more common than merely-braided ones that a lot of people don't bother being careful to check in what cases a braiding suffices.

view this post on Zulip Fernando Yamauti (May 06 2025 at 20:26):

Is all that story here supposed to generalize further to something like: the (n+1)-cat of V-enriched n-cats for V (k+1)-tuply monoidal is k-tuply monoidal?

view this post on Zulip John Baez (May 06 2025 at 20:33):

It must. Proving this would be a very nice challenge for higher category theorists: each person with their own approach to higher categories gets to prove their own version!

view this post on Zulip Fernando Yamauti (May 06 2025 at 21:03):

John Baez said:

It must. Proving this would be a very nice challenge for higher category theorists: each person with their own approach to higher categories gets to prove their own version!

My bad. I've edited my wondering question. But you probably already got what I meant before that.

Anyways, if that's true, it should be somewhere in Lurie's HA for (n,1).

view this post on Zulip David Egolf (May 07 2025 at 18:00):

It remains to work out what the identity elements are in CDC \otimes D. For any object (c,d)(c,d) we want an identity element, which is a certain morphism :I(CD)((c,d),(c,d)):I \to (C \otimes D)((c,d), (c,d)). Here II is the tensor unit object of our enriching monoidal category VV. Since (CD)((c,d),(c,d))=C(c,c)D(d,d)(C\otimes D)((c,d),(c,d)) = C(c,c) \otimes D(d,d), we are looking for a morphism :IC(c,c)D(d,d):I \to C(c,c) \otimes D(d,d).

Since CC and DD are VV-categories, we have already identity elements 1c:IC(c,c)1_c:I \to C(c,c) and 1d:ID(d,d)1_d:I \to D(d,d). Then we can form 1c1d:IIC(c,c)D(d,d)1_c \otimes 1_d:I \otimes I \to C(c,c) \otimes D(d,d). Finally, using a unitor isomorphism IIII \otimes I \cong I, we can get our identity element for C(c,d)C(c,d).

view this post on Zulip David Egolf (May 07 2025 at 18:05):

I think that concludes the exercise of guessing what CDC \otimes D might be! Going forward, I think knowing how to form CDC \otimes D will be helpful for finding examples of profunctors.

view this post on Zulip David Egolf (May 07 2025 at 18:07):

Next, I'll plan to explore this comment:

Kevin Carlson said:

David Egolf said:

Here's the first specific question I'd like to explore in this thread: What are some examples of profunctors?

The most important profunctor is Hom:CopCV.\mathrm{Hom}: C^{\mathrm{op}}\otimes C\to \mathcal V. If you have functors f,g:D,ECf,g: D,E\to C then there’s the restricted hom Hom(f(),g()):DopEV.\mathrm{Hom}(f(-),g(-)):D^{\mathrm{op}}\otimes E\to \mathcal V. If ff or gg picks out a single object then this restricted hom is a representable presheaf or copresheaf in the familiar sense! So one things profunctors do immediately is generalize representability to a concept that can vary in both variables at once.

view this post on Zulip David Egolf (May 12 2025 at 15:46):

I've been thinking about this Hom profunctor! One thing I like about this example is that it gives a profunctor for every VV-category, where VV is a symmetric closed monoidal category. So we get a large source of examples of profunctors.

Another thing I like about the Hom profunctor is that it suggests this intuition: a profunctor assigns to a pair of objects a thing that is "between" them. In this case, we have between cc and cc' the VV-object Hom(c,c)\mathrm{Hom}(c,c'). The action of the profunctor on morphisms intuitively I think has to do with "extending" what's between objects, via generalized pre/post composition. I'm hopeful that this intuition will be helpful for learning about composition of profunctors.

view this post on Zulip David Egolf (May 12 2025 at 15:48):

I am curious as to why we have this profunctor Hom\mathrm{Hom}. I think this relates to how functors can induce profunctors, and I want to get to that shortly.

view this post on Zulip David Egolf (May 12 2025 at 15:50):

Before doing that, I first want to consider the case where we have functors f:DCf:D \to C and g:ECg:E \to C. Can we somehow use these to create a new "restricted hom" profunctor :DopECopCHomV:D^{\mathrm{op}} \otimes E \to C^{\mathrm{op}} \otimes C \to_{\mathrm{Hom}} V?

view this post on Zulip David Egolf (May 12 2025 at 15:55):

If we can form some fop:DopCopf^{\mathrm{op}}:D^{\mathrm{op}} \to C^{\mathrm{op}} then we might be in business, as we could maybe form some VV-functor fopg:DopECopCf^{\mathrm{op}} \otimes g:D^{\mathrm{op}} \otimes E \to C^{\mathrm{op}} \otimes C by "tensoring" somehow. Then, precomposing this VV-functor before our hom functor I think presumably would give our restricted hom functor.

view this post on Zulip David Egolf (May 12 2025 at 15:58):

I don't actually know, though, if we can:

  1. form the "opposite" of a VV-functor
  2. "tensor" two VV-functors (although we've discussed already that we can tensor two VV-categories)

view this post on Zulip David Egolf (May 12 2025 at 16:06):

It looks like page 12 of "Basic Concepts of Enriched Category Theory" (by Kelly) is relevant to both of these questions!

In short, it sounds like we can do both of these things, and so we can presumably form the restricted hom functor as I outlined above. (It would probably be a good exercise to check (1) and (2) work out in the "obvious" way, but I'm not sure I want to do that right now.)

view this post on Zulip Mike Shulman (May 12 2025 at 16:36):

You're absolutely right about all of that! And in fact, these restricted hom-profunctors are extremely important. If you want a hint as to one reason why, you could try asking yourself what they might have to do with VV-adjunctions.

view this post on Zulip Kevin Carlson (May 12 2025 at 19:07):

You could also focus on the idea of restricting hom in the non-enriched setting; learning about profunctors and learning about enriched category theory are substantially orthogonal goals, although profunctors serve certain more important roles in the enriched theory that don't tend to fully show up in the unenriched case.

view this post on Zulip Kevin Carlson (May 12 2025 at 19:07):

As for why Hom exists, it's kind of like asking why identity morphisms exist. Hom is fundamental as a profunctor, not derived from anywhere else.

view this post on Zulip Mike Shulman (May 12 2025 at 19:25):

I don't think it's quite the same as why identity morphisms exist. I would say it's more analogous to why representable functors exist, or why the action of a group on itself exists. Those facts all depend in particular on associativity: a magma (even a unital magma) doesn't act on itself, at least not in the obvious way.

view this post on Zulip David Egolf (May 14 2025 at 18:24):

Thanks to both of your for your comments!

It probably does make sense to focus on the non-enriched setting, at least to start out with. I wanted to think about the enriched setting at least a little bit though, just to have access to more examples. But maybe now I'll switch focus to the non-enriched setting.

view this post on Zulip David Egolf (May 14 2025 at 18:26):

Mike Shulman said:

You're absolutely right about all of that! And in fact, these restricted hom-profunctors are extremely important. If you want a hint as to one reason why, you could try asking yourself what they might have to do with VV-adjunctions.

I do want to understand how profunctors relate to tensor-hom adjunctions, and maybe this is in that spirit. I'm not quite sure where to start with this line of thought, though.

view this post on Zulip Mike Shulman (May 14 2025 at 18:28):

What sort of relationship between profunctors and tensor-hom adjunctions do you have in mind?

view this post on Zulip Mike Shulman (May 14 2025 at 18:28):

I mean, did you see someone say that they are related in a particular way and you want to understand that?

view this post on Zulip David Egolf (May 14 2025 at 18:43):

Mike Shulman said:

What sort of relationship between profunctors and tensor-hom adjunctions do you have in mind?

So, I'm thinking of a profunctor as like a bimodule: something that describes two compatible "actions" on something. That's the kind of thing we need to define a tensor product, I believe. For example, we can tensor a set with two compatible monoid actions against a set with an appropriate monoid action. Or we can tensor a commutative group with two compatible ring actions (a bimodule) against a commutative group with an appropriate ring action (a module).

view this post on Zulip David Egolf (May 14 2025 at 18:46):

"Sheaves in Geometry and Logic" also introduces a "tensor product" of set-valued functors on p. 353.

view this post on Zulip Mike Shulman (May 14 2025 at 18:46):

Ah, so you mean tensor products of profunctors.

view this post on Zulip David Egolf (May 14 2025 at 18:46):

I am hoping that all this tensoring is secretly tensoring of profunctors.

view this post on Zulip David Egolf (May 14 2025 at 18:48):

So maybe what I want to understand next is how to tensor profunctors, and maybe to see how this gives the appropriate thing in some special cases.

view this post on Zulip John Baez (May 14 2025 at 18:48):

Your examples sounded to me like examples of what I'd call composing profunctors.

view this post on Zulip Mike Shulman (May 14 2025 at 18:48):

It's the same thing.

view this post on Zulip Mike Shulman (May 14 2025 at 18:49):

(I mean, there are also other kinds of tensor products of profunctors, but I think it's reasonable to also call the "composition" of profunctors a "tensor product".)

view this post on Zulip John Baez (May 14 2025 at 18:50):

Okay. I will call it composition of profunctors, but for some reason I will also call it tensoring of bimodules. I guess it's just a cultural thing.

view this post on Zulip John Baez (May 14 2025 at 18:52):

When David talked about tensoring profunctors, I imagine taking profunctors F:ABF: A \to B and G:CDG: C \to D and tensoring them to get FG:ACBDF \otimes G : A \otimes C \to B \otimes D. But anyway, he's not talking about that.

view this post on Zulip John Baez (May 14 2025 at 18:52):

I'm just trying to figure out what he's interested in, and I think maybe I know by now, from his examples.

view this post on Zulip John Baez (May 14 2025 at 18:55):

For example if I have a set SS with compatible left and right actions of monoids MM and NN, that's the same as a profunctor from the 1-object category BMBM to the 1-object category BNBN.

And then if I have a set TT with compatible left and right actions of NN and OO, I can "tensor" SS and TT and get a set SNTS \otimes_N T with compatible left and right actions of MM and OO. And that's an example of composing profunctors.

view this post on Zulip John Baez (May 14 2025 at 18:56):

(David was looking at an example where one of these actions was trivial so it looked like you had a set with just one monoid acting on it.)

view this post on Zulip John Baez (May 14 2025 at 19:00):

For some reason I don't know a super-standard name for a set with compatible left and right actions of two monoids; it should be called something like a "biaction". But there's a super-standard name for the same thing in the Ab-enriched world, namely an abelian group with compatible left and right actions of two rings. Everyone calls this is a "bimodule".

So, sometimes the word "bimodule" gets extended to mean "enriched profunctor".

view this post on Zulip David Egolf (May 14 2025 at 19:05):

Yes, this is all exactly the kind of thing I'm interested in. I'm also keeping in mind the example (hopefully I'm not misremembering and it is actually an example!) of composition of relations. I think this is also a tensoring of profunctors.

view this post on Zulip David Egolf (May 14 2025 at 19:06):

I would like to build on all this intuition to understand the general definition of compositon/tensoring of profunctors. (And then I'm curious if we can understand how to build a tensor-hom adjunction from a given profunctor. But one step at a time!)

view this post on Zulip Mike Shulman (May 14 2025 at 19:09):

John Baez said:

For some reason I don't know a super-standard name for a set with compatible left and right actions of two monoids; it should be called something like a "biaction".

I feel like I may have seen this called a "G-H-biset", analogous to "G-set" for a set with a single action.

view this post on Zulip John Baez (May 14 2025 at 19:12):

David Egolf said:

Yes, this is all exactly the kind of thing I'm interested in. I'm also keeping in mind the example (hopefully I'm not misremembering and it is actually an example!) of composition of relations. I think this is also a tensoring of profunctors.

A relation is an example of a Bool-enriched profunctor, since for each pair of elements in your two sets it's giving you a boolean. (A plain old profunctor gives you, for each pair of objects in your two categories, a set.)

Composing relations can then be seen as composing Bool-enriched profunctors.

view this post on Zulip James Deikun (May 14 2025 at 19:14):

One thing relations have that general profunctors don't is the converse, because sets are all groupoids. There's a notion of "ordered relation" of posets that doesn't have the converse!

view this post on Zulip John Baez (May 14 2025 at 19:14):

Bool is like a "baby" or "decategorified" version of Set, so compared to ordinary Set-enriched things, Bool-enriched things tend to be simpler, and the word "enriched" is a bit misleading: I actually feel like saying "impoverished" in this particular case!

view this post on Zulip David Egolf (May 14 2025 at 19:27):

Thanks everyone! I'll stop here for today as I'm getting tired, but next time I think I'll start to move towards understanding the composition/tensoring of profunctors. This involves a "coend", so this may be a great chance for me to learn a bit about coends!

view this post on Zulip John Baez (May 15 2025 at 08:55):

Indeed, coends and profunctors go hand in hand!

Each time you've been saying you want to learn about profunctors and hom-tensor adjunctions, I've been scratching my head thinking you should either be saying "I want to learn about profunctors and coends" or "I want to learn about hom-tensor adjunctions and closed categories".