Well, I was out of town for a bit, but classes are now underway here at UWO. This term I’m teaching an introductory Linear Algebra course, which is, I believe, the largest class I’ve taught so far, with on the order of a couple of hundred students. That should be a change of pace: last year, both courses I taught had just seven students each.

Meanwhile, I’ll carry on from the last post. I described structure types (a.k.a. species) as functors T : \mathbf{FinSet_0} \rightarrow \mathbf{Sets}, which take a finite set S, and give the set of all “T-structures on the underlying set S“. A lot of combinatorial enumeration uses the generating functions for such structure types, which are power series whose coefficients count the number of structures for a set of size n (the fact that structure types are functorial is what allows us to ignore everything but the isomorphism class of the underlying set S). Now, there is a notion of generalized species, described in this paper by Fiore, Gambino, Hyland and Winskel, which I’ll link here because I think it’s a great point of view on the setup I discussed before. But right now, I’ll go in a somewhat different direction. (Whether there’s a connection between the two is left as an exercise)

Stuff Types

To start with, there is a dual way to look at structure types (a.k.a. species). The “structures” identified by a structure type T form a category X. It’s a concrete category in fact: each object has an underlying set. The morphisms of X are “structure-preserving” maps (the meaning of which depends, obviously, on T) of T-structured sets. These correspond exactly (by fiat) to the isomorphisms of underlying sets (i.e. relabellings). These are all invertible, so this is a groupoid.

So is the category FinSet_0 of “underlying sets”, so the forgetful functor F from T-structured sets into \mathbf{FinSet_0} is a functor between groupoids. This functor F is a sort of “dual” way to look at the structure type – the original functor T. In fact, for any structure type T, this dual F will always be a faithful functor. That is, the morphism map is one-to-one, so morphisms in X are uniquely determined by the corresponding map of underlying sets. In other words, there are no additional symmetries in X but those determined by set bijections.

But this is an artifact! I declared the union of all the sets T(S) to be the objects of a category X and then added morphisms by hand. That makes sense if you think of the “T-structured sets built on underlying set S” as derived entirely from T and S. But the dual view, focusing on F, tends to make us think of X as given, and F as observing some property – underlying sets and maps for objects and morphisms. This may throw away information about both, in principle. Faithfulness of F suggests that the objects of X just consists of sets S with some inflexible extra decorations with no local symmetries of their own to complicate the morphisms.

So let’s treat X as real and F as some kind of synopsis or measurement of X. If F doesn’t need to be faithful, it may not correspond to a structure type, but it will be what Baez and Dolan call a stuff type, which is actually just any groupoid equipped with underlying set functor F: X \rightarrow \mathbf{FinSet_0}. Maybe it’s surprising that these can still be treated like power series, by taking the coefficient at n to be the (real-valued) groupoid cardinality of the preimage of n. (The groupoid cardinality, described here, is related to the “Leinster measure” for categories. Regular readers of the n-Category Cafe will know that there has been some discussion over there about this – some links from here, and discussion about applying it to “configuration categories” of physical systems here.)

Stuff types can be used to deal with seemingly straightforward “structures” which structure types have a hard time with. For instance, letting E^Z be the structure type “a set”, and so E^{E^Z} should be the type “a set of sets” (where the underlying set operation is the union of elements). This can be represented by a stuff type, but not a structure type.


Stuff types fit into a more general pattern, which has to do with the 2-category of spans of groupoids. I really cleared up just how this works in conversation with Jamie Vicary.

Groupoidification is the program of looking for analogs of linear algebra (whose native habitat is the monoidal category \mathbf{Vect}) in a different monoidal category (in fact, bicategory) \mathbf{Span(Gpd)} of spans of groupoids, which I’ve talked about quite a bit before. Very briefly, we have a bicategory where the objects are groupoids, and the morphisms are spans like: A \leftarrow X \rightarrow B, composed by (weak) pullback. Given spans X, X', a 2-morphism is a map \alpha: X \rightarrow X' which makes the resulting diagram commute.

So the key thing now is the fact that a stuff type F : X \rightarrow \mathbf{FinSet_0} can be regarded as a span of groupoids in two ways:

\mathbf{1} \leftarrow X \rightarrow \mathbf{FinSet_0}


\mathbf{FinSet_0} \leftarrow X \rightarrow \mathbf{1}

Here, \mathbf{1} is the trivial groupoid consisting of just one object and its identity morphism. Any groupoid X has just one functor into \mathbf{1}, so a stuff type automatically has these two incarnations as a span. One is a morphism (in \mathbf{Span(Gpd)}) from $\mathbf{1}$ to \mathbf{FinSet_0}, and the other is its dual, going the other way. One can call these a “state” and a “costate”. Why these terms?

One important fact is that $atex \mathbf{Span(Gpd)}$ is not just a bicategory, it’s a monoidal bicategory, whose monoidal operation on objects A \otimes B is the (cartesian) product of groupoids. (Which also tells you what it is for morphisms, by the way). It should be clear, then, that \mathbf{1} is the monoidal unit, since X \times \mathbf{1} \cong X.

So another way of describing a stuff type is that it’s a morphism from (or to) the monoidal unit in a certain monoidal (bi)category with duals. In the category of Hilbert spaces, if \mathcal{H} is the space associated to a quantum system, a map \mathbb{C} \rightarrow \mathcal{H} would be called a “state” (and the dual would be a “costate”). Stuff types provide a 2-categorical version of the same thing, where the object taking the place of \mathcal{H} is \mathbf{FinSet_0}.

There is, as I’ve discussed here previously, a 2-vector space (indeed, a 2-Hilbert space) associated with this groupoid. But the point of view I’m adopting right now is based on discussion I had with Jamie Vicary about this paper. In it, he gives an abstract (i.e. categorical) description of what’s going on in the quantum mechanics of the harmonic oscillator in terms of an adjunction of categories. This can then be transplanted into various monoidal categories with duals. Here, Jamie gives a more general discussion of quantum algebras, with the same sort of flavour.

So as to the question of how species relate to QFT, this suggests one way to look at how. The harmonic oscillator is the physical system of interest when we look at “states” as spans into \mathbf{FinSet_0}. Up to isomorphism, the important features of the groupoid \mathbf{FinSet_0} are: its objects correspond to nonnegative integers, which label the energy levels for the oscillator (they “count photons”); each object n has automorphisms corresponding to permutations of those n photons (they’re indistinguishable – in particular, “bosons”). This is fairly simple, but for a more elaborate QFT picture, look at “states” for other groupoids in \mathbf{Span(Gpd)}.  One complication is that typically these groupoids are going to have some smooth structure…

Perhaps more on this later.