nLab compact double category



Monoidal categories

monoidal categories

With braiding

With duals for objects

With duals for morphisms

With traces

Closed structure

Special sorts of products



Internal monoids



In higher category theory

Mike Shulman: Original research alert.



A compact double category is a (usually pseudo) double category which is symmetric monoidal, and in which every object has an assigned dual in the “proarrow” direction (as in a compact closed category). The basic example is the double category Cat̲\underline{Cat} of categories, functors, and profunctors, in which the dual of a category is its opposite category.

On this page, we will draw the “functor” direction horizontally and the “profunctor” direction vertically. Thus, in a compact double category, every object has a vertical dual.

Note that if a compact double category is a proarrow equipment, then its vertical bicategory? is a symmetric monoidal bicategory, which is moreover an autonomous bicategory?. However, saying that a double category is compact says more than this: it says that the vertical duals are assigned in a horizontally functorial way. Just as duals in a monoidal category are characterized up to isomorphism, duals in an autonomous bicategory are characterized up to equivalence, which in this case would mean vertical equivalence. But equivalence in the bicategory ProfProf of categories and profunctors is a weaker notion than equivalence of categories, so just saying that C opC^{op} is a dual of CC in ProfProf does not characterize C opC^{op} up to equivalence, only up to Morita equivalence (i.e. equivalence of Cauchy completions). The extra structure (not merely extra properties) of the compact double category Cat̲\underline{Cat} includes the specification of C opC^{op} up to equivalence (i.e., horizontal equivalence), along with all the attendant structure.

Likewise, a compact virtual double category is a virtual double category which is compact in a similar sense: it has a monoidal structure and functorially assigned duals. Note that in order to match with our conventions on this page, the role of vertical and horizontal cells in a virtual double category is flipped from the choices made at virtual double category, and the cells must be transposed and have their multi-sources on the left, rather than the top.

By contrast, in a virtually compact virtual double category, the monoidal and compact structure has also been “virtualized”: rather than coming equipped with a horizontally functorial tensor product, in such a virtual double category there are also horizontal arrows with multi-sources that are finite lists of objects with variance, such as (A,B op,C)(A,B^{op},C). We can also have a virtually compact double category which is an honest double category, but whose monoidal and compact structure is only virtual.

Finally, if a compact double category or virtual double category is a proarrow equipment or a virtual equipment, we of course call it a compact (virtual) proarrow equipment.


Let TT be the “free category” monad on the virtual equipment Span(Quiv)Span(Quiv) of spans in the category of quivers, and let T=Mod(T)T' = Mod(T) be the resulting monad on the virtual equipment Mod(Span(Quiv))=Cat(Quiv)Mod(Span(Quiv)) = Cat(Quiv) whose objects are internal quivers in CatCat, or equivalently internal categories in QuivQuiv. Then a (pseudo) TT'-algebra is precisely a (pseudo) double category, while a virtual T-algebra is precisely a virtual double category. In particular, the virtual equipment Vdc=nKMod(Cat(Quiv),T)Vdc = nKMod(Cat(Quiv),T') consists of virtual double categories, functors, and profunctors between them.

Let GG be the pseudomonad on Cat(Quiv)Cat(Quiv) defined as follows. We may consider an object of Cat(Quiv)Cat(Quiv) as like a double category, but with only horizontal composition: there are no vertical composites or identities. If CC is such, then:

  • The objects of G(C)G(C) are finite ordered lists of objects of CC with variance, such as (x,y op,z,x op)(x,y^{op},z,x^{op}). Of course, we include the empty list.

  • There can exist a horizontal arrow of G(C)G(C) from one list x\vec{x} to another y\vec{y} only if the two lists have the same length, say nn. In this case, such an arrow is given by a permutation σS n\sigma \in S_n such that the variance of x ix_i matches the variance of y σ(i)y_{\sigma (i)}, together with for each ii a horizontal arrow x iy σ(i)x_i \to y_{\sigma(i)} in CC. Composition of these is defined in the evident way using composition in CC and multiplying permutations.

  • A vertical arrow from x\vec{x} to y\vec{y} in G(C)G(C) is given by a “graph” from x\vec{x} to y\vec{y} labeled by vertical arrows of CC, together with an ordered list of endo-vertical-arrows of CC (called “loops”). To be precise, by such a “graph” we mean a fixed-point-free involution of xy op\vec{x} \sqcup \vec{y}^{op} which reverses variance. Here y op\vec{y}^{op} means reverse the variance all through y\vec{y}; thus if x ix_i is matched with y jy_j, they must have the same variance, while if x ix_i is matched with x jx_j, or y iy_i with y jy_j, they must have opposite variances.

    To define a vertical arrow in G(C)G(C), together with such a graph we also require, for each matched pair, a vertical arrow in CC, according to the following rules. If x ix_i is matched with y jy_j and neither is “opped,” then we require a vertical arrow x iy jx_i\to y_j, while if both are “opped,” we require instead a vertical arrow y jx iy_j\to x_i. And if x ix_i is matched with x j opx_j^{op}, we require a vertical arrow x ix jx_i\to x_j, while if y iy_i is matched with y j opy_j^{op}, we require a vertical arrow y jy iy_j\to y_i. (And, in addition to all this, we also require an ordered list of loops.)

  • The squares in G(C)G(C) are defined in a straightforward way, incorporating two graphs which are related by a pair of permutations, and a collection of labeling squares from CC with appropriately chosen boundaries.

With this definition, GG is evidently an endofunctor of the category of CatCat-quivers. We can extend it to the virtual equipment Cat(Quiv)Cat(Quiv) in a straightforward way, mimicking the definition above for horizontal arrows and squares to define it on the proarrows (which are like double profunctors but, again, without vertical composites).

Note that the action of GG on vertical arrows is very much like that of the monad on CatCat whose algebras are compact closed categories. The main difference is that in the latter, rather than an ordered list of loops (an element of the free monoid on endomorphims), we have an element of the free commutative monoid on the endomorphisms. This change is what will make GG be only a pseudomonad, rather than a monad, but it is also crucial for the applications.

We next extend GG to a pseudomonad in the Gray-category of virtual equipments. The unit CG(C)C\to G(C) is easy to define and strictly natural: an object xx goes to the unary list (x)(x), horizontal arrows are labeled with the unique permutation of one element, and vertical arrows are labeled with the unique graph between two such unary lists.

The multiplication is somewhat trickier….

The multiplication defined in this way is still strictly natural, and it satisfies the laws relating it to the unit transformation strictly, but its “associativity” law is only satisfied up to isomorphism, making GG into a fairly strict sort of pseudomonad.

We now claim that there is a distributive law relating TT' to GG, and therefore GG has the structure of a pseudomonad on the object (Cat(Quiv),T)(Cat(Quiv),T') in the category of monads-on-virtual-equipments….

It follows by the functoriality of the construction of generalized multicategories that GG induces a pseudomonad G=nKMod(G,T)G' = nKMod(G,T') on the virtual equipment Vdc=nKMod(Cat(Quiv),T)Vdc = nKMod(Cat(Quiv),T') of virtual double categories. Moreover, we can verify that GG' preserves pseudo double categories, and induces a monad GG'' on the virtual equipment of double categories and double profunctors. Finally, we can define:

  • A compact double category is a pseudo GG''-algebra. By general nonsense about distributive laws, this should be the same as a pseudo GTG T'-algebra, where GTG T' is the composite pseudomonad on Cat(Quiv)Cat(Quiv) resulting from the distributive law.

  • A compact virtual double category is a pseudo GG'-algebra.

  • A virtually compact virtual double category is a virtual GTG T'-algebra (in Cat(Quiv)Cat(Quiv)). I don’t think this is quite the same as a virtual GG'-algebra in VdcVdc.

  • A virtually compact double category is a virtual GG''-algebra.

In each of the above cases, we can replace “double category” by proarrow equipment if the (virtual) double category in question is additional a (virtual) equipment.


The basic example is Cat̲\underline{Cat}, in which the objects are categories, the horizontal arrows are functors, and the vertical arrows are profunctors. This is a compact proarrow equipment. There are similar examples VProf̲V \underline{Prof} for any Benabou cosmos VV. In fact, as long as VV is any symmetric multicategory, we can define a virtually compact virtual equipment VProf̲V \underline{Prof}.

Extraordinary 2-cells

Let CC be a virtually compact virtual double category with units (it could be an equipment). Note that the source of a general 2-cell in CC is a graph whose edges are labeled by composable strings of vertical arrows in CC. Suppose also that f:xzf\colon \vec{x} \to z and g:yzg\colon \vec{y}\to z are horizontal arrows in CC. An extraordinary 2-cell in CC is defined to be a 2-cell whose target is the unit/identity U zU_z, and whose source is a loop-free graph whose edges are all labeled by empty strings (or, equivalently, by identities). One can verify that in Cat̲\underline{Cat}, this reproduces the usual notion of extraordinary natural transformation.

Structures in a compact double category

In a (possibly virtual) compact double category, we can define internal notions of “closed category,” “closed monoidal category,” and so on.



  • Blog post about extraordinary 2-multicategories and their ilk.

Last revised on December 2, 2023 at 09:52:49. See the history of this page for a list of all contributions to it.