I did not invent category theory to talk about functors. I invented it to talk about natural transformations.
- Saunders MacLane
As every mathematician knows, nothing is more fruitful than these obscure analogies, these indistinct reflections of one theory into another, these furtive caresses, these inexplicable disagreements; also nothing gives the researcher greater pleasure.
- André Weil
A functor is a morphism between categories. A natural transformation is a morphism between functors.
Category theory, affectionately also known as arrowology or abstract nonsense, is a systematic language for talking about the obscure analogies and furtive caresses described above by Weil. These generalisations and analogies are most promiment at the level of natural transformations, a couple of levels of abstractions above ordinary mathematical objects.
Definition. Let A and B be two categories, and F, G : A → B be two functors between them, say covariant and in one variable. A natural transformation N : F → G is a rule that to each object x of A assigns a morphism
Nx : F(x) → G(x)
in B such that for any morphism α : x -> y in A, the following diagram commutes:
F(x) -------> G(x)
F(α)| | G(α)
v Ny v
The definition is complicated, but very useful. It is trivial, as they say, to chase all the definitions around until we verify that the set of functors from A to B forms a category whose morphisms are the natural transformations as defined above, a chase I recommend for anyone who wants to absorb this definition. In a sense, natural transformations are the morphisms in the category of all categories! (This is really a 2-category, since the morphisms, the natural transformations, are morphisms of morphisms.) Since we have objects and arrows, we can therefore talk about isomorphisms, which are arrows that have a corresponding arrow going in the opposite direction such that their composition is the identity arrow on both objects involved.
Let us put the nonsense to good use. Did you ever hear how the isomorphism between a finite-dimensional vector space and its double dual is natural? What that means is that there is a natural transformation lurking somewhere.
An Example or Two
Consider the category of finite-dimensional vector spaces over some field k whose objects are vector spaces and morphisms are linear maps between vector spaces. To any such vector space V, we can assign to it the dual space V* consisting of the linear functionals (nothing but linear maps) from V into the field k. This dualisation is actually a contravariant (arrow-reversing) functor, because linear maps can also be dualised. For suppose that f : V → W is such a linear map. Then there is a corresponding linear map
f* : W* → V*
defined by f*(φ) = φ • f, for any linear functional φ : W → k, where the • denotes function composition.
It is true that V and V* are isomorphic, but that's just a conicidence of dimension, because it happens to be the same for both. In order to exhibit any such isomorphism, it's necessary to pick a basis for V.
A much more natural isomorphism arises if we play the dualisation game again and consider V** instead. The elements of V** are linear maps into k from linear maps into k. (How's this for recursivity?) Given any x ∈ V, we can define a corresponding element of V** by the evaluation map evx, that is, evaluate the maps of V* at x. Another mention of "trivial" here to nudge you to verify that the evaluation map is indeed an element of V**, i.e., it's linear into k.
I shall denote this map by N : id → **, and it assigns every vector to its corresponding evaluation map in V**, that is N(x) = evx. The map N is a natural transformation between the trivial identity functor of vector spaces id and the double dual functor **. The diagram that has to commute for this to be so is
f | |f**
v N v
for any morphism f : V → W. Checking the commutativity of this diagram amounts to a definition chase I shall now present in excruciating slow motion for your viewing pleasure. For any x in V and any φ in W* we have
(f**•N)(x)(φ) = (f**•evx)(φ) definition of N
= evx(f*(φ)) definition of dual map
= evx(φ•f) definition of dual map
= (φ•f)(x) definition of evaluation map
= φ(f(x)) definition of function composition
= evf(x)(φ) definition of evaluation map
= N(f(x))(φ) definition of N
= (N•f)(x)(φ), definition of function composition
and since this holds for all x ∈ V and φ ∈ W*, it follows that f**•N = N•f and the diagram commutes. It remains to prove that this natural transformation is in fact an isomorphism. That follows by noticing that N has zero kernel, is therefore injective, and lastly by using a dimension argument with the dual basis to prove that it must be an isomorphism. These details I leave to the reader.
Natural transformations arise, well, naturally in many other parts of mathematics. Other examples are morphisms of presheaves or the naturality of the determinant from the general linear group into the ground field (or commutative ring). The point is that there is a way to say "such-and-such is natural, canonical, trivial, whatever" and natural transformations are just the way to say this. Or to give furtive caresses.