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.
Something I realised I can do with graphs, but not with categories, is to talk about the "one-hop neighbourhood" of a node.
Say I have the graph below. image.png
I can ask "What are the nodes neighbouring ?". The answer is . The node is not a neighbour since it takes two hops to get to .
But if I consider this graph as a presentation of a category, then I lose the ability to talk about "one-hop" neighbourhoods. Since is a neighbour of (via ) and is a neighbour of (via ), then is a "neighbour" of (via the composite . That is, any object is connected to any other object, as long as there is a sequence of morphisms connecting them.
Is it possible to model the idea of one-hop neighborhood with categories? Or do I relinquish this possibility by moving from graphs to categories?
I guess you can recover the graph from its path category: an edge is a morphism that has no non-trivial factorisation
I guess this is vaguely related to monoidal width.
Perhaps weighted categories are also relevant here?
How about this: Write for the one object category, and its underlying graph. Any graph has a canonical homomorphism sending every edge to 1. Hitting this with the free/forgetful adjunction, this is the same as a functor .
Now if is the "walking arrow", the one-hop paths are represented by the pullback
You can see that this prevents composition of edges by pairing them with the unique arrow in .
Ralph Sarkis said:
I guess this is vaguely related to monoidal width.
(OT: that paper didn't get the buzz it deserved, it's really cool)
Spencer Breiner said:
How about this: Write for the one object category, and its underlying graph. Any graph has a canonical homomorphism sending every edge to 1. Hitting this with the free/forgetful adjunction, this is the same as a functor .
Now if is the "walking arrow", the one-hop paths are represented by the pullback
You can see that this prevents composition of edges by pairing them with the unique arrow in .
This is cool but I guess the interesting thing is to do it when is not free
Which is not far off from this actually...
Since is monadic over , every small category has a presentation by generators and relations,i.e. for any given small there is a graph and a quotient map
image.png
Well then I expected something obvious to happen but I don't see it
As some have already said, the problem is "easy" when your category is free. You just take the graph that generates it and talk about neighborhoods there. When C is not free I don't know how to generalize this. Matteo gave a presentation of categories in the universal algebraic sense of "taking a free thing and quotienting it out", but if we start from there I am pretty sure that the graph-theoretic concept of neighborhood won't play nice with the quotienting equations.
For instance, consider the equation . Is a one hop neighbor of or not? RHS says yes, LHS says no.
indeed
I think it should play somewhat nicely, you'd define the length of a morphism to be the length of the shortest word of arcs such that . This always exists because is discrete and bounded below.
Thanks for all the answers! Yeah, the general theme seems "yeah, if you have a free category just work with the underlying graph". I suppose that's what my question was: is the right abstraction to talk about one-hop neighbours graphs? I suppose it is, since when we take a free category on a graph we explicitly "complete" the graph by iterating through all the one-hop neighbourhoods. This loses all the distinction of how many hops we did.
Huh, turning things into categories doesn't always help :)
Having learned recently that in the same way one can have a -category for a suitable , one can too have a -graph.
@bgavran3 @mattecapu "I never realised I can "graph-enrich" and consider not a V-category, but a V-graph." I think I read this in something by Street or Lack or someone. If anyone knows a good reference on V-graphs (sets with an object of the category V for each pair of elements) let me know!
- John Carlos Baez (@johncarlosbaez)This makes me think that graphs have this extra curious construction that we can do (that we can't do in categories), where for any graph we can to each node assign a , a set of one-hop neighbours. Perhaps this assembles into a functor (assuming we can give an appropriate structure to for each ?
What I mean is, this reminds me of the Yoneda embedding in category theory. We pick a vantage point and then "look all the places we can go from " by looking at the representable . This feels like a "-hop neighbourhood", for any , since we can reach places from even if our path is a composite.
In graphs, I'd assume that a Yoneda embedding would look at just 1-hop neighbourhoods, since there's no composition!
mmh this has universal covering vibes to me
like you assemble a graph from all the neighbourhoods, but then you can go on and repeat the same construction, ad infintum... that's how you get the universal cover of a graph
I guess you could define the one-hop neighbourhood of an object following this definition that Jules gave:
Jules Hedges said:
an edge is a morphism that has no non-trivial factorisation
Just define the one-hop neighbourhood of as the set of objects that can be reached from by an edge. (Though maybe it makes more sense to define it as the set of edges itself, since there might be more than one edge between the same two objects.)
This works in any category, not just free ones, but it might not always be useful. Consider the reals as a preorder. In that category every non-identity morphism has a non-trivial factorisation, so the one-hop neighbourhood of any object is empty (apart from the object itself, via its identity morphism). But maybe that makes sense.
ha, I bet one can express this kind of irreducibility as initiality (or terminality, i don't remember the direction of arrows) in the [[twisted arrow category]]
It's not really terminality though. It's "an object such that there is exactly one morphism into ". You can only have one terminal object up to iso, but lots of distinct objects can have this property.
oh right, of course