# More-than-one-but-less-than-three-categories

###### 15th July, 2019

What with all the wild applications of, and progress in, the theory of -categories, I had really neglected studying any kind of lower higher-category theory. But, as in many other ways, CT2019 opened my eyes somewhat, and now I’m trying to catch up on the theory of 2-categories, which have some really beautiful structure and examples.

# Background and strictification

Before I get to the point of this post (which is to help me to remember the differences between 2-categories, bicategories, and double categories^{1}), I’ll just say a tiny bit about why I’m an idiot.

In some sense I had just assumed that 2-categories were kind of uninteresting, for two reasons: firstly, “they’re just -categories with =2”; and secondly, every weak 2-category can be strictified, so we can just always take strict models and everything works out just nicely. Both of these things are rather bad points of view to take.

For the latter point, it’s important to note that, yes, weak 2-categories can be strictified, and every pseudofunctor is equivalent to a strict one, but it is **not** true that every pseudonatural transformation is equivalent to a (strict) natural transformation.

As explained in Mike Shulman’s talk, working in the -topos , every pseudofunctor is equivalent to a strict one, but **not** every pseudonatural transformation is equivalent to a strict one.
But we do have the following lemma (from Mike’s talk).

**Lemma.** For any there is a strict and a bijection between pseudonatural and strict .

**Proof**. Almost by definition: a pseudonatural assigns to each some image along with an isomorphism for all in , and this isomorphism satisfies a coherence condition.
So we just define to consist of all this data.

There is then a lovely theory of *coflexible* objects, which are those such that the canonical morphism has a strict retraction.
These objects are such that **all** pseudonatural transformations *into* them are isomorphic to *strict* such ones.^{2}

# The idea

## Roughly

- A 2-category should be something which has
*objects*,*1-morphisms*between the objects, and*2-morphisms*between the morphisms. - We should be able to compose 1-morphisms ‘along objects’, in that, given 1-morphisms and , we should get some 1-morphism .
- We should be able to compose 2-morphisms ‘along objects’ (so-called
*horizontally*)

but *also* ‘along 1-morphisms’ (so-called *vertically*)

and we ask that both senses of composition be associative *only up to coherent associator 2-morphisms*.

## Categorification and monoidal delooping

An -category can be thought of as the Oidification (or horizontal categorification) of a monoidal category: it is like a monoidal category with many objects. To see this, note that the delooping of a monoidal category (i.e. the category where we shift all objects/morphisms ‘up one degree’) is exactly a one object -category, with 1-morphisms corresponding to the objects of the monoidal category, and 2-morphisms corresponding to the morphisms of the monoidal category.

# Strict vs. weak

## The categories

The general consensus is to call *strict* 2-categories “**2-categories**”, and the algebraic notion of *weak* 2-categories “**bicategories**”.
This can be confusing, for a few reasons, but such is life.
From now on, in this post, we will say **-categories** to talk about both senses of 2-categories.

Specifically, a *2-category* is a category enriched over the cartesian monoidal category ; a *bicategory* is a category **weakly** enriched over (so the hom-objects are categories but the associativity and unit laws only hold up to coherent isomorphism).

## The functors

Whether we take strict or weak -categories, we can still choose whether we want our -functors to be strict or weak.

A *2-functor* is a strict -functor (which usually only makes sense between 2-categories); a *pseudofunctor* is a weak -functor (so the composition of 1-morphisms is preserved only up to coherent (specified) 2-isomorphisms, and similarly for the identity 1-morphisms) (which can be between strict or weak -categories).

If we forget the 2-structure of an -category and consider the hom-categories as discrete, then both of these notions of -functors reduce to 1-functors between 1-categories.
There is, however, an even weaker type of -functor for which this is **not** the case: a(n) *(op)lax 2-functor*: here the associator and compositor 2-cells are **not** required to even be coherent *isomorphisms*, but instead just coherent *morphisms*, in some direction (with one direction corresponding to lax and the other to oplax).
This is exactly the idea of an (op)lax functor of monoidal categories, and so reassures us that -categories can be thought of as monoidal categories with multiple objects, as mentioned above.

That is,

-functor | compositor |
---|---|

2-functor | |

pseudofunctor | |

(op)lax 2-functor |

At a first glance, (op)-lax functors seem like almost too weak to be useful, but there are many nice examples of when they are good things to study.

# Double categories

Something that looks a bit like an -category when you unwrap the abstract definition is a *double category*: an internal category of .
This means that it has

*objects*, given by the objects of ;*vertical morphisms*, given by the morphisms of ;*horizontal morphisms*, given by the objects of ; and*2-cells*, or*squares*, given by the morphisms of .

We can picture the 2-cells as a square (hence the name), as

where are objects, are horizontal morphisms, are vertical morphisms, and is the 2-cell.

Composition ‘horizontally’ of two squares, left and right of each other, is given by the usual composition in the categories and ; composition ‘vertically’ of two squares, one above the other, is given by the composition operation on , coming from the fact that is an internal category.

There are two *edge categories* associated to , given by taking the objects and either the vertical or the horizontal morphisms as morphisms.
If the two edge categories agree then we say that is *edge-symmetric*.

## Examples

From the nLab, we have some fun examples.

objects | vertical | horizontal | 2-cells | |
---|---|---|---|---|

small categories | functors | profunctors | nat. trans. | |

model categories | left Quil. functors | right Quil. functors | nat. trans. | |

monoidal categories | colax mon. functors | lax mon. functors | mon. nat. trans. | |

points of top. space | paths | paths | homotopies |

For more details about why is so interesting, see [S11].

Note that we can also get weak versions of double categories, in many ways, as described here.

# 1-categories as 2-categories as double categories

- We can consider any 1-category as an -category by taking the 2-cells to just be identities.
- We can consider any -category as an edge-symmetric double category, its
*double category of squares*, via the so-called*quintet construction*: by taking both vertical and horizontal morphisms to be the 1-morphisms, and the 2-cells to be the 2-morphisms. We could also construct two other double categories: by taking either the vertical or the horizontal morphisms to be the 1-morphisms, and the other to be just the identity 1-morphisms. Finally, one last construction is the*mate construction*: the vertical arrows are adjunctions, the horizontal arrows are 1-morphisms, and the 2-cells are mate-pairs of 2-morphisms. - In the opposite direction to the above, there are two underlying 2-categories of any double category, where we let 1-morphisms be just the vertical (resp. horizontal) morphisms, and the 2-morphisms are for commutative squares whose horizontal (resp. vertical) arrows are identities.
We call these the
*associated vertical*(resp.*horizontal*)*2-category*.