In category theory, a branch of mathematics, the functors between two given categories form a category, where the objects are the functors and the morphisms are natural transformations between the functors. Functor categories are of interest for two main reasons:
Suppose C is a small category (i.e. the objects and morphisms form a set rather than a proper class) and D is an arbitrary category. The category of functors from C to D, written as Fun(C, D), Funct(C,D), [C,D], or DC, has as objects the covariant functors from C to D, and as morphisms the natural transformations between such functors. Note that natural transformations can be composed: if μ(X) : F(X) → G(X) is a natural transformation from the functor F : C → D to the functor G : C → D, and η(X) : G(X) → H(X) is a natural transformation from the functor G to the functor H, then the collection η(X)μ(X) : F(X) → H(X) defines a natural transformation from F to H. With this composition of natural transformations (known as vertical composition, see natural transformation), DC satisfies the axioms of a category.
In a completely analogous way, one can also consider the category of all contravariant functors from C to D; we write this as Funct(Cop,D).
If C and D are both preadditive categories (i.e. their morphism sets are abelian groups and the composition of morphisms is bilinear), then we can consider the category of all additive functors from C to D, denoted by Add(C,D).
Most constructions that can be carried out in D can also be carried out in DC by performing them "componentwise", separately for each object in C. For instance, if any two objects X and Y in D have a product X×Y, then any two functors F and G in DC have a product F×G, defined by (F×G)(c) = F(c)×G(c) for every object c in C. Similarly, if ηc : F(c)→G(c) is a natural transformation and each ηc has a kernel Kc in the category D, then the kernel of η in the functor category DC is the functor K with K(c) = Kc for every object c in C.