A retrofunctor (sometimes called a cofunctor) is a kind of morphism between categories. In contrast to a functor, the assignment on objects of a retrofunctor goes in the opposite direction to the assignment on morphisms.
Retrofunctors generalise both bijective-on-objects functors and discrete opfibrations.
Retrofunctors arise naturally in the study non-cartesian internal categories.
In the literature, the terminology “cofunctor” is common. However, terminology is misleading, as a cofunctor is not the opposite of a functor. Moreover, the terminology “cofunctor” is also used for a morphism of cocategories?. We use the terminology “retrofunctor”, as this avoids confusion, and aligns with the concept of monad retromorphism (of which retrofunctors are a motivating example).
A retrofunctor from a category to a category consists of a map sending each object to an object and a map sending each pair to a morphism in such that
respects codomains: where ,
preserves identity morphisms: ,
preserves composition: .
Given a pair of retrofunctors and , their composite retrofunctor sends each object to an object and each pair to a morphism in . This defines a category whose objects are small categories, and whose morphisms are retrofunctors.
The category of small categories and retrofunctors has an orthogonal factorization system which factors each retrofunctor into a bijective on objects functor followed by a discrete opfibration .
Let be the monoidal category arising from the bicategory of polynomials on the singleton set. Then is isomorphic to the category of comonoids in .
Originally proven in (Ahman-Uustalu 2016). See (Spivak-Niu 2021, Theorem 6.26) for details.
A comonoid in is also known as polynomial comonad.
Every function yields a retrofunctor between discrete categories. This defines a fully faithful functor .
Every monoid homomorphism yields a retrofunctor . This defines a fully faithful functor .
Every bijective on objects functor yields a retrofunctor .
Every discrete opfibration yields a retrofunctor .
Every split Grothendieck opfibration has an underlying retrofunctor given by the splitting.
More generally, every delta lens has an underlying retrofunctor.
Let denote the monoid of natural numbers under addition. A retrofunctor is the same as a choice of morphism out of every object in .
A comorphism of Lie groupoids is an internal retrofunctor in the category Diff of smooth manifolds; see (Higgins-Mackenzie 1993, definition 5.12).
The notion of retrofunctor first appeared under the name comorphism in the paper:
The definition of internal retrofunctor between non-cartesian internal categories was introduced in Section 4.4 of the thesis:
The characterization of retrofunctors as morphisms between directed containers is developed in the papers:
Danel Ahman, Tarmo Uustalu, Directed Containers as Categories, EPTCS, 207, 2016 (doi:10.4204/EPTCS.207.5)
Danel Ahman, Tarmo Uustalu, Taking updates seriously, CEUR Workshop Proceedings, 1827, 2017 (pdf)
The link between retrofunctors, delta lenses, and split Grothendieck opfibrations is developed in the papers:
Bryce Clarke, Internal lenses as functors and cofunctors, EPTCS, 323, 2020 (doi:10.4204/EPTCS.323.13)
Bryce Clarke, Internal split opfibrations and cofunctors, Theory and Applications of Categories, 35, 2020 (link)
Retrofunctors between groupoids and the link with inner automorphisms of groupoids is explored in the paper:
The notion of retrofunctor between partite internal categories is introduced in Definition 5.5 of the paper:
A detailed account of the relationship between retrofunctors and polynomials appears in Chapter 6 of the draft textbook:
Enrichment in the category of of categories and retrofunctors is considered in the paper:
The terminology retrofunctor was introduced in:
The terminology is justified by the fact that retrofunctors are monad retromorphisms in the double category .
Last revised on August 24, 2024 at 05:20:09. See the history of this page for a list of all contributions to it.