As an algebraic abstractologist, let me just say this is an absolutely great post. My comments:
Category theorists don’t distinguish between a category with two objects and an edge between them, and a category with two objects and two identified edges between them (the latter object doesn’t really even make sense in the usual account). In general, the extra equivalence relation that you have to carry around makes certain things more complicated in this version.
I do tend to agree with you that thinking of categories as objects, edges and an equivalence relation on paths is a more intuitive perspective, but let me defend the traditional presentation. By far the most essential/prototypical examples are the categories of sets and functions, or types and functions. Here, it’s more natural to speak of functions from x to y, than to speak of “composable sequences of functions beginning at x and ending at y, up to the equivalence relation which identifies two sequences if they have the same composite”.
Again, I absolutely love this post. I am frankly a bit shocked that nobody seems to have written an introduction using this language—I think everyone is too enamored with sets as an example.
Relatedly, I’m going back and forth in my head a bit about whether it’s better to explain category theory in graph theory terms by identifying the morphisms with edges or with paths.
Morphisms = Edges
In this version, a subset of multidigraphs (apparently also called quivers!), can be thought of as categories—those for which every vertex has an edge to itself, and for which whenever there’s a path from A to B, there’s also an edge directly from A to B.
You also have to say:
for each pair of edges from A to B and B to C, which edge from A to C corresponds to their composition
for each node, which (of possibly multiple) edge to itself is its default or identity edge
in such a way that the associative and unital laws hold
Morphisms = Paths
In this version, any multidigraph (quiver) can be thought of as a category.
You get the identities for free, because they’re just the trivial, do-nothing, paths.
You get composition for free, because we already know what it means that following a path from A to M and then from M to Z is itself a path.
And you get the associative and unital laws for (almost) free:
unital: doing nothing at the start or end of a path obviously doesn’t change the path
associative: it’s natural to think of the paths ((e1, e2), e3) and (e1, (e2, e3)) -- where e1, e2, and e3 are edges—as both being the same path [e1, e2, e3]
However, you now have to add on one weird extra rule that two paths that start and end at the same place can be considered the same path, even if they didn’t go through the same intermediate nodes.
In other words, the intuition that composing-pairs-of-paths-in-different-orders-always-gives-you-the-same-final-path gives you a sufficient, but not necessary condition for two paths being considered equivalent.
I think this final point in the morphisms = paths formulation might be what tripped you up in the case Eigil points out above, where category theory treats two arrows from A to B that are equivalent to each other as actually the same arrow. This seems to be the one place (from what I can see so far) where the paths formulation gives the wrong intuition.
The main reason I like the paths formulation is that I can look around at the real world and immediately pick out systems which might make sense to model as categories. “Paths in graphs” is something I can recognize at a glance. Thinking about links on the internet? The morphisms are paths of links. Friend connections on facebook? The morphisms are friend-of-friend paths. Plane flights? The morphisms are travel plans. Etc.
I expect that the big applications of category theory will eventually come from something besides sets and functions, and I want to be able to recognize such applications at a glance when opportunity comes knocking.
The cost is needing to build some intuition for path equivalence. I’m still building that intuition, and that is indeed what tripped me up. It will come with practice.
As an algebraic abstractologist, let me just say this is an absolutely great post. My comments:
Category theorists don’t distinguish between a category with two objects and an edge between them, and a category with two objects and two identified edges between them (the latter object doesn’t really even make sense in the usual account). In general, the extra equivalence relation that you have to carry around makes certain things more complicated in this version.
I do tend to agree with you that thinking of categories as objects, edges and an equivalence relation on paths is a more intuitive perspective, but let me defend the traditional presentation. By far the most essential/prototypical examples are the categories of sets and functions, or types and functions. Here, it’s more natural to speak of functions from x to y, than to speak of “composable sequences of functions beginning at x and ending at y, up to the equivalence relation which identifies two sequences if they have the same composite”.
Again, I absolutely love this post. I am frankly a bit shocked that nobody seems to have written an introduction using this language—I think everyone is too enamored with sets as an example.
Thanks for pointing out the identified edges thing, I hadn’t noticed it before. I’ll update the examples once I’ve updated my intuition.
Also I’m glad you like it! :)
UPDATE: fixed it.
Relatedly, I’m going back and forth in my head a bit about whether it’s better to explain category theory in graph theory terms by identifying the morphisms with edges or with paths.
Morphisms = Edges
In this version, a subset of multidigraphs (apparently also called quivers!), can be thought of as categories—those for which every vertex has an edge to itself, and for which whenever there’s a path from A to B, there’s also an edge directly from A to B.
You also have to say:
for each pair of edges from A to B and B to C, which edge from A to C corresponds to their composition
for each node, which (of possibly multiple) edge to itself is its default or identity edge
in such a way that the associative and unital laws hold
Morphisms = Paths
In this version, any multidigraph (quiver) can be thought of as a category.
You get the identities for free, because they’re just the trivial, do-nothing, paths.
You get composition for free, because we already know what it means that following a path from A to M and then from M to Z is itself a path.
And you get the associative and unital laws for (almost) free:
unital: doing nothing at the start or end of a path obviously doesn’t change the path
associative: it’s natural to think of the paths ((e1, e2), e3) and (e1, (e2, e3)) -- where e1, e2, and e3 are edges—as both being the same path [e1, e2, e3]
However, you now have to add on one weird extra rule that two paths that start and end at the same place can be considered the same path, even if they didn’t go through the same intermediate nodes.
In other words, the intuition that composing-pairs-of-paths-in-different-orders-always-gives-you-the-same-final-path gives you a sufficient, but not necessary condition for two paths being considered equivalent.
I think this final point in the morphisms = paths formulation might be what tripped you up in the case Eigil points out above, where category theory treats two arrows from A to B that are equivalent to each other as actually the same arrow. This seems to be the one place (from what I can see so far) where the paths formulation gives the wrong intuition.
The main reason I like the paths formulation is that I can look around at the real world and immediately pick out systems which might make sense to model as categories. “Paths in graphs” is something I can recognize at a glance. Thinking about links on the internet? The morphisms are paths of links. Friend connections on facebook? The morphisms are friend-of-friend paths. Plane flights? The morphisms are travel plans. Etc.
I expect that the big applications of category theory will eventually come from something besides sets and functions, and I want to be able to recognize such applications at a glance when opportunity comes knocking.
The cost is needing to build some intuition for path equivalence. I’m still building that intuition, and that is indeed what tripped me up. It will come with practice.