A profunctor is *functorial* iff every object of has a reflection in within . Fixing (arbitrarily) one reflection arrow for each object yields a functor such that .

Dually, is *co-functorial* iff every object of has a coreflection in , yielding a functor such that .

If both are satisfied, then above is left adjoint to .

This analogy continues in dimension 2 (for bicategories or double categories), yielding the *colax* functors as double profunctors with the reflection property and the *lax* functors as double profunctors with the coreflection property. If a double profunctor has both property, it determines a colax/lax adjunction.

### Double categories

A *double category* consists of objects (), vertical arrows (), horizontal arrows (), and cells (). Each arrow is assigned its start and end point, as two (not necessarily distinct) objects, called the ‘domain’ and ‘codomain’. Each cell is assigned its *boundary* , depicted as

There is a horizontal composition on the horizontal arrows , and on the cells , and a vertical composition on the vertical arrows and on the cells . Two items of similar kind are composable (in a specific order) if their respective boundaries coincides.

The compositions has identity elements: each object determines a horizontal and a vertical identity [denoted by and , respectively], and each arrow [resp. ] determines an identity cell with boundary [resp. ].

And finally, the compositions are

*associatve*: the vertical compositions are assumed to be

*strictly*associative: , while the horizontal compositions may only be

*weakly*associative: up to (coherent) vertical isomorphisms .

**Examples:**

- Any category can be seen as a double category, with the arrows playing the role of both vertical and horizontal arrows, and the cells being the
*commutative squares*. - Any bicategory naturally determines a double category, in which the only vertical arrows are the identities. Thus all things written below are valid as well for (co)lax functors between bicategories.
- In the double category of rings, the objects are the rings, the vertical arrows are ring homomorphisms, the horizontal arrows are the
*bimodules*with composition the*tensor product*, and a cell is a map which preserves addition and satisfies for all . - In the double category of categories the objects are the categories, the vertical arrows are functors, the horizontal arrows are the profunctors, and a cell is simply a functor such that and , where profunctors are regarded as categories (over the arrow), as in our profunctor post.

Let be a double category. Then, as vertical composition (either of vertical morphisms or of cells) is strictly associative, we obtain

- a category with the same objects as and the vertical arrows as arrows (hence forgetting horizontal arrows and cells)
- a category with horizontal arrows as objects and cells with vertical composition as arrows (forgetting only the horizontal compositions)

Accordingly, the notation means that is a horizontal arrow of .

### Double profunctors

Let and be double categories. Then a *double profunctor* from to can be defined as a double category , disjointly containing (isomorphic copies of) and , such that any further cell has a boundary with and . These additional cells are called ‘*heterocells*‘ or ‘*through cells*‘, and are the (necessarily vertical) ‘*heteromorphisms*‘ or ‘*through arrows*‘.

(Alternatively, a double profunctor can be viewed as a strict functor where is the ‘vertical arrow’ double category, containing 2 objects, and a single nonidentity vertical arrow .)

Recall that an arrow in a category is a *reflection arrow* to a subcategory if and for every , there is a unique such that .

**Definition.** A double profunctor has the *reflection property*, if there are a collection of heteromorphisms and a collection of heterocells, such that

a) each is a reflection arrow from to within ,

b) for every horizontal , the boundary of is of the form for some ,

c) and each is a reflection arrow from to within .

The main observation is that these already induce the following *comparison cells*:

- For any , the horizontal identity cell of uniquely factors through , i.e. there is a cell such that .

By b) it follows that the left and right side of the boundary of must be vertical identities, also its bottom is a horizontal identity. - For any consecutive horizontal arrows in , the horizontal composition uniquely factors through , yielding a cell such that .

Based on similar considerations as above, if we write for the codomain of and for the bottom of , then the boundary of is .

That is, what this data describes is nothing else but a **colax functor**.

We can also convert this (assuming choice, of course): it is not hard to construct a double profunctor for any colax functor by adding formal heteroarrows and heterocells and defining their horizontal composition using the comparison cells.

Dually, a double profunctor with the *coreflection property* is basically a **lax functor**.

And, if a double profunctor has both the reflection and the coreflection property, then the corresponding colax and lax functors determine a so called **colax/lax adjunction**.

**Examples:**

- Consider the forgetful functor from unital rings to monoids (which forgets addition), and extend it to their bimodules. This way we obtain a
*lax functor*. [todo:*what are the cells in the corresponding double profunctor?*] - [todo: by binary relations and Boolean relations. A heterocell has each side as a binary relation, and it exists with such boundary iff we get both containment of (left-to-right) compositions and [..or something like this..]]

[1] “Bridges and Profunctors”, PhD dissertation, Bertalan Pécsi