If the dependence of or on in a dinatural transformation is trivial, it reduces to an extranatural one. Similarly, if the contravariant (or, dually, the covariant) dependence of and on are trivial, it reduces to an ordinary natural one.
Arguably, most dinatural transformations which arise in practice are ordinary or extranatural.
Let be functors. A dinatural transformation from to , sometimes written
consists of a collection of morphisms
such that for every morphism in ,
If drawn out as a commutative diagram, this becomes a “hexagon identity”:
If and both factor through the projection , then the notion reduces to an ordinary natural transformation, and similarly if they both factor through .
If factors through while factors through , then we obtain a notion of natural transformation from a covariant functor to a contravariant one, and dually.
If is constant, the hexagon identity reduces to the “domain” version of extranaturality, involving a commutative square of the form
where is constant with respect to the argument . Similarly, if is constant, it yields the “codomain” version with a commutative square of the form
when is constant with respect to the argument .
Of course, all ordinary natural transformations, and also all extranatural transformations, are also dinatural ones. Here we will confine ourselves to examples that do not reduce to either of these.
Perhaps the most well known example is the Church numerals?: for any category , we have a class of dinatural transformations from the hom-functor
defined by the rule .
Not every endo-dinatural-transformation of a hom-functor is of this form; several other examples are given in Pare-Roman. For instance, if then the operation sending each endomorphism to its eventual image is dinatural.
The following example of a dinatural transformation from a covariant functor to a contravariant one is found in Dubuc-Street and attributed to Mac Lane. Let be the category of inner product spaces and isometries, and the category of vector spaces and linear transformations (all over a fixed field). Let be the forgetful functor and let be the functor sending each inner product space to its dual. Define to send to the operation ; then is dinatural.
Many people who encounter the notion of dinaturality through the general definition (as in equation (1)) have subsequent difficulty grokking it. It is the opinion of at least one author of this article (Todd Trimble), and it was certainly the opinion of Max Kelly, that this “efficient” definition is not the most useful or intuitive one. Rather, one may be better off grokking the separate squares (3) and (4) – that is, the notion of extranaturality – and how they arise in practice.
One could try to argue against that by pointing to dinatural transformations which do not reduce to extranatural ones.
A counterargument, however, is that any dinatural transformation between functors can be “bent” into domain extranaturality by defining
Then a dinatural transformation can be identified with an extranatural transformation from the constant (the terminal set) to . Such tricks support the counterargument that the extra generality of the traditional definition is largely spurious, and not particularly helpful in terms of comprehension.
A further argument for the relative importance of extranatural transformations over dinatural ones is that extranatural transformations can be defined for any sort of enriched categories, whereas dinatural ones (including the other special case of natural transformations from covariant functors to contravariant ones) only make sense when the enriching category is cartesian.
Dinatural transformations cannot, in general, be composed with each other, although there are certain circumstances when they can be.
One such case is when certain squares are pushouts or pullbacks.
Of course, ordinary natural transformations can be composed.
In fact, there is a category whose objects consist of both covariant functors and contravariant ones , and whose morphisms are dinatural transformations.
In general, what we can say is that for two fixed categories and , the functors and the dinatural transformations between them form a paracategory.
Here is a blog post inspired by the above discussion that discusses these concepts in the context of the programming language Haskell: