virtual double category



A virtual double category or fcfc-multicategory is a common generalization of a monoidal category, a bicategory, a double category, and a multicategory. It contains:

  • objects
  • vertical arrows, which form a category
  • horizontal arrows, which do not have identities or composites, and
  • 2-cells which have
    • a horizontal source and target, which are vertical arrows,
    • a vertical target, which is a horizontal arrow, and
    • a vertical source, which is a composable string of horizontal arrows.

2-cells are usually drawn like this:

A cell in a virtual double category

Note that this includes the case when n=0n=0, i.e. a cell of “nullary” source. In this case, we must have X 0=X nX_0 = X_n. Finally, the 2-cells can be composed in a more or less evident way, akin to composition in a multicategory:

A composition in a virtual double category

Virtual double categories are related to double categories precisely as ordinary multicategories are related to monoidal categories (see generalized multicategory and tensor product).


A virtual double category can be defined in two equivalent ways:

  • It is a TT-multicategory, in the sense of Leinster, relative to the monad TT on directed graphs whose algebras are categories. For this reason, Leinster originally called them fc-multicategories, where “fc” is a name for this monad TT which stands for “free-category.”

  • It is a generalized multicategory, in the sense of Hermida, Cruttwell-Shulman, and others, relative to the monad TT on graphs-internal-to-Cat whose algebras are double categories. This is the origin of the name “virtual double category,” in line with the general terminology “virtual TT-algebra” of Cruttwell-Shulman for such generalized multicategories.

We can also give an explicit definition, which was more or less already given in the “Idea” section: all that is missing are identities and associativity for 2-cell composition.


  • Any double category is an example, and thus also any bicategory viewing the arrows as horizontal.
  • For any monoidal category VV, there is a virtual double category of VV-matrices whose objects are sets, vertical arrows are functions and a horizontal arrow p:XYp : X \to Y is a family of objects p y,xVp_{y,x} \in V for each xX,yYx\in X, y \in Y, and a 2-cell from X 0p 1X 1X nX_0 \overset{p_1}{\to} X_1 \to\dots \to X_n to Y 0qY 1Y_0 \overset{q}{\to} Y_1 along f:X 0Y 0,g:X nY nf : X_0 \to Y_0, g : X_n \to Y_n is a family of arrows α x 0,...:p 1(x 1,x 0)p 2(x 2,x 1)q(g(x n),f(x 0))\alpha_{x_0,...} : p_1(x_1,x_0)\otimes p_2(x_2,x_1)\otimes\dots \to q(g(x_n),f(x_0)) in VV (using the unit of the monoidal category if the source string is empty). If VV has certain colimits that are preserved by \otimes then composites exist and this virtual double category is pseudo.
  • Given a monad on a virtual double category, the horizontal kleisli double category produces a virtual double category that is only pseudo under strong conditions on the monad. In particular, “free monoid” monad on the double category of sets and spans does not produce a pseudo double category.

Higher categories of virtual double categories

There are notions of functor, transformation, and profunctor between virtual double categories. The neatest way to define all of these notions at once is to use the general framework of generalized multicategories: from the monad fcfc on the virtual equipment Span=Span(Set)Span = Span(Set) we can construct a new virtual equipment vDblProf=KMod(Span,fc)vDblProf = KMod(Span,fc) whose objects are virtual double categories, whose arrows are functors between them, whose proarrows are profunctors between them, and whose cells are transformations. But we can also give explicit definitions of all of these notions.

Functors and transformations

A functor of virtual double categories is fairly obvious; it takes each kind of morphism/cell to the same kind, preserving sources, targets, composition, and identities.

The relevant transformations are a “virtual” version of vertical transformations between ordinary double categories. Specifically, a transformation α:FG\alpha\colon F\to G has a vertical arrow component α X:FXGX\alpha_X\colon F X\to G X for each object XX of the domain, and a cell component

FX Fp FY α X α p α Y GX Gp GY\array{F X & \overset{F p}{\to} & F Y\\ ^{\alpha_X}\downarrow & \Downarrow ^{\alpha_p}& \downarrow^{\alpha_Y}\\ G X& \underset{G p}{\to} & G Y}

for each horizontal arrow p:XYp\colon X\to Y in the domain. These must be natural with respect to vertical composition of arrows and of 2-cells, where we must of course allow composites with arbitrary arities in the latter case.

Virtual double categories, functors, and transformations form a strict 2-category, and thus we can apply all notions of 2-category theory to it. In particular, we have a notion of a monad on a virtual double category, which is the starting point for one theory of generalized multicategories.


The profunctors between virtual double categories are a similar “virtualization” of the notion of double profunctor between double categories. Explicitly, a profunctor H:CUnknown characterUnknown characterUnknown characterDH\colon C ⇸ D consists of:

  • An ordinary profunctor H 0:C 0Unknown characterUnknown characterUnknown characterD 0H_0\colon C_0 ⇸ D_0 between the categories of objects and vertical arrows.

  • For each string of horizontal arrows X 0p 1X 1X nX_0 \overset{p_1}{\to} X_1 \to\dots \to X_n in DD, each horizontal arrow Y 0qY 1Y_0 \overset{q}{\to} Y_1 in CC, and each pair of elements fH 0(X 0,Y 0)f \in H_0 (X_0,Y_0) and gH 0(X n,Y 1)g\in H_0(X_n,Y_1), a set of “hetero-cells” of shape

    A cell in a virtual double category

  • The hetero-cells are acted on by the 2-cells of DD on the top, and by the 2-cells of CC on the bottom, in an evident way, respecting the given action of vertical arrows of DD and CC on the elements of H 0H_0.

Every double profunctor induces such a profunctor in an evident way, but even if CC and DD are (non-virtual) double categories, not every “virtual double profunctor” from CC to DD need be a double functor; only those for which the “hetero-cells” also factor uniquely through the opcartesian cells in DD which make it “representable.”

As mentioned above in the context of the abstract definition, virtual double categories, functors, transformations, and profunctors form another virtual double category, which is in fact a virtual equipment.

Monads on virtual double categories


A monad on a virtual double category is a monad in the 2-category vDbl.

So a monad on a XvDblX \in vDbl consists of a functor

T:𝕏𝕏 T : \mathbb{X} \to \mathbb{X}

and transformations η:IdT\eta : Id \to T and μ:TTT\mu : T T \to T satisfying associativity and unitality.

Monoids and modules


For TT a monad on 𝕏\mathbb{X} \in vDbl, a TT-monoid is

  • an object X 0𝕏X_0 \in \mathbb{X};

  • a horizontal morphism X 0Unknown characterUnknown characterUnknown characterXTX 0X_0 \stackrel{X}{⇸} T X_0

  • an action 2-morphism

    X 0 Unknown characterUnknown characterUnknown characterX TX 0 Unknown characterUnknown characterUnknown characterTXT 2 X 0 = x¯ μ X 0 Unknown characterUnknown characterUnknown characterX TX 0 \array{ X_0 &\stackrel{X}{⇸} & T X_0 & \stackrel{T X}{⇸} T^2 & X_0 \\ {}^{\mathllap{=}}\downarrow && \Downarrow^{\bar x} && \downarrow^{\mathrlap{\mu}} \\ X_0 && \underset{X}{⇸} && T X_0 }

    and a unit 2-morphism

    X 0 = x¯ η X 0 Unknown characterUnknown characterUnknown characterX TX 0 \array{ && X_0 \\ & {}^{\mathllap{=}}\nearrow &\Downarrow^{\bar x}& \searrow^{\mathrlap{\eta}} \\ X_0 &&\underset{X}{⇸}&& T X_0 }

satisfying the evident compatibility conditions.

This is (CruttwellShulman, def. 4.2).


A TT-monoid X 0Unknown characterUnknown characterUnknown characterXTX 0X_0 \stackrel{X}{⇸} T X_0 is called normalized if its unit 2-morphism

X 0 U X 0 X 0 = η X 0 Unknown characterUnknown characterUnknown characterX TX 0 \array{ X_0 &\stackrel{U_{X_0}}{\to}& X_0 \\ {}^{\mathllap{=}}\downarrow && \downarrow^{\mathrlap{\eta}} \\ X_0 &\underset{X}{⇸}& T X_0 }

is a cartesian 2-morphism.

Generalized multicategories


A generalized multicategory is a normalized TT-monoid for some monad TT on a virtual equipment 𝕏\mathbb{X} \in vDbl.

This is (CruttwellShulman, page 7).

Enriching categories

Virtual double categories can be viewed as “the natural place in which to enrich categories.” Specifically, for any set AA, there is a virtual double category A chA_{ch} which has AA as its objects, only identity vertical arrows, exactly one horizontal arrow from every object to every other object, and exactly one 2-cell in every possible niche. For any other virtual double category WW, a functor A chWA_{ch}\to W of virtual double categories is the same as a WW-enriched category with object set AA.


Revised on July 11, 2017 09:48:52 by Max S. New (