Profunctors

Given categories \(\mathcal{C}\) and \(\mathcal{D}\), a profunctor from \(\mathcal{C}\) to \(\mathcal{D}\), also known as a bimodule or distributor, is a functor \(\Phi: \mathcal{C}^{\mathrm{op}} \times \mathcal{D} \to \mathbf{Set}\). There is a bicategory of categories, profunctors, and natural transformations, and also a a double category of categories, functors, profunctors, and natural transformations. Enriched profunctors are also important: a \(\mathcal{V}\)-profunctor is a \(\mathcal{V}\)-functor \(\mathcal{C}^\mathrm{op} \times \mathcal{D} \to \mathcal{V}\).

Profunctors generalize functors in a manner analogous to how relations generalize functions. Specifically, a profunctor between discrete categories taking values \(\mathbf{0} = \{\}\) and \(\mathbf{1} = \{*\}\) is a binary relation, just as a functor between discrete categories is a function. Profunctors can thus be considered a categorification of relations.

Literature

Introductions and surveys

  • Borceux, 1994: Handbook of Categorical Algebra, Vol. 1, Sec. 7.8: Distributors
  • Bénabou, 2000, ed. Streicher: Distributors at work (pdf)
  • Fong & Spivak, 2019: Seven Sketches in Compositionality, Sec. 4.2: Enriched profunctors
    • Covers profunctors between categories enriched over a commutative quantale

Miscellaneous topics

  • Pécsi, 2012: On Morita contexts in bicategories (doi)
    • Defines a bridge between categories \(\mathcal{C}\) and \(\mathcal{D}\) as a category \(\mathcal{H}\) with objects \(|\mathcal{H}| = |\mathcal{C}| \sqcup |\mathcal{D}|\), containing \(\mathcal{C}\) and \(\mathcal{D}\) as full subcategories
    • A directed bridge is then identified with the collage of a profunctor
    • Characterizes equivalence and Morita equivalence of categories as the existence of certain kinds of bridges (Theorems 3.2 and 3.6)
    • See also: Pécsi, 2012, PhD thesis: Bridges and profunctors (pdf)

Applications

  • Schultz, Spivak, Vasilakopoulou, Wisnesky, 2017: Algebraic databases (pdf, arxiv)
    • Formalizes relational databases as a double category of schemas, schema mappings, and schema bimodules, where both schemas and schema bimodules are profunctors with extra structure
    • Sec. 2: Background material on profunctors and proarrow equipments