Last time I talked about a new paper I wrote with Brendan Fong. It’s about electrical circuits made of ‘passive’ components, like resistors, inductors and capacitors. We showed these circuits are morphisms in a category. Moreover, there’s a functor sending each circuit to its ‘external behavior’: what it does, as seen by someone who can only measure voltages and currents at the terminals.
Our paper uses a formalism that Brendan developed here:
The idea here is we may want to take something like a graph with edges labelled by positive numbers:
and say that some of its nodes are ‘inputs’, while others are ‘outputs’:
This lets us treat our labelled graph as a ‘morphism’ from the set to the set
The point is that we can compose such morphisms. For example, suppose we have another one of these things, going from to :
Since the points of are sitting in both things:
we can glue them together and get a thing going from to :
That’s how we compose these morphisms.
Note how we’re specifying some nodes of our original thing as inputs and outputs:
We’re using maps from two sets and to the set of nodes of our graph. And a bit surprisingly, we’re not demanding that these maps be one-to-one. That turns out to be useful—and in general, when doing math, it’s dumb to make your definitions forbid certain possibilities unless you really need to.
So, our thing is really a cospan of finite sets—that is, a diagram of finite sets and functions like this:
together some extra structure on the set This extra structure is what Brendan calls a decoration, and it makes the cospan into a ‘decorated cospan’. In this particular example, a decoration on is a way of making it into the nodes of a graph with edges labelled by positive numbers. But one could consider many other kinds of decorations: this idea is very general.
To formalize the idea of ‘a kind of decoration’, Brendan uses a functor
sending each finite set to a set of This set is the set of decorations of the given kind that we can put on
So, for any such functor a decorated cospan of finite sets is a cospan of finite sets:
together with an element of
But in fact, Brendan goes further. He’s not content to use a functor
to decorate his cospans.
First, there’s no need to limit ourselves to cospans of finite sets: we can replace with some other category! If is any category with finite colimits, there’s a category with:
• objects of as its objects,
• isomorphism classes of cospans between these as morphisms.
Second, there’s no need to limit ourselves to decorations that are elements of a set: we can replace with some other category! If is any symmetric monoidal category, we can define an element of an object to be a morphism
where is the unit for the tensor product in
So, Brendan defines decorated cospans at this high level of generality, and shows that under some mild conditions we can compose them, just as in the pictures we saw earlier.
Here’s one of the theorems Brendan proves:
Theorem. Suppose is a category with finite colimits, and make into a symmetric monoidal category with its coproduct as the tensor product. Suppose is a symmetric monoidal category, and suppose is a lax symmetric monoidal functor. Define an F-decorated cospan to be a cospan
in together with an element of Then there is a category with
• objects of as its objects,
• isomorphism classes of -decorated cospans as its morphisms.
This is called the F-decorated cospan category, This category becomes symmetric monoidal in a natural way. It is then a dagger compact category.
(You may not know all this jargon, but ‘lax symmetric monoidal’, for example, talks about how we can take decorations on two things and get a decoration on their disjoint union, or ‘coproduct’. We need to be able to do this—as should be obvious from the pictures I drew. Also, a ‘dagger compact category’ is the kind of category whose morphisms can be drawn as networks.)
Brendan also explains how to get functors between decorated cospan categories. We need this in our paper on electrical circuits, because we consider several categories where morphisms is a circuit, or something that captures some aspect of a circuit. Most of these categories are decorated cospan categories. We want to get functors between them. And often we can just use Brendan’s general results to get the job done! No fuss, no muss: all the hard work has been done ahead of time.
I expect to use this technology a lot in my work on network theory.