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)
- The thesis itself is written in Hungarian but there is an English summary
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