nLab
functor

Contents

Idea

  • A functor is what goes between categories.

  • A functor from C to D is an image of C in D.

  • A functor between (small) categories is a morphism of the underlying graphs that respects the composition of edges.

Definition

A functor F from a category C to a category D is a map sending each object xC to an object F(x)D and each morphism f:xy in C to morphism F(f):F(x)F(y) in D, such that

  • F preserves composition: F(fg)=F(f)F(g) whenever the left-hand side is well-defined,

  • F preserves identity morphisms: for each object xX, F(1 x)=1 F(x).

The functors between two categories C and D form themselves a category, the functor category [C,D], whose morphisms are natural transformations. Equipped with these functor categories as hom-objects, we have a 2-category Cat of categories, functors and natural transformations. In other words, functors are morphisms in Cat.

Special properties

Functors with special properties are important in applications. See for instance

And for more background on this see stuff, structure, property.

Internal definition

Suppose now that C and D are internal categories in some ambient category A. Then an internal functor F:CD is

  • a morphism of objects F 0:C 0D 0 in A;

  • a morphisms of morphisms F 1:C 1D 1 in A;

  • such that the following diagrams commute

    • respect for the source map: C 1 f 1 D 1 s s C 0 f 0 D 0;

    • respect for the target map: C 1 f 1 D 1 t t C 0 f 0 D 0;

    • respect for identities C 0 f 0 D 0 i i C 1 f 1 D 1;

    • respect for composition C 1× t,sC 1 f 1× t,sf 1 D 1× t,sD 1 C 1 f 1 D 1.

In many cases, this notion is too restrictive, and we should use internal anafunctors instead.

Examples

morphisms of monoids and groups

For A,B monoids or G,H groups, let BA,BB, BG, BH be the corresponding obe-object categories (as described at delooping). Then functors

BABB\mathbf{B}A \to \mathbf{B}B

are canonically in bijection with monoid homomorphisms AB and accordingly functors

BGBH\mathbf{B}G \to \mathbf{B}H

are canonically in bijection with group homomorphisms GH.

Representations

With BG as above, functors on BG with values in Vect are the same as linear representations of the group G. In fact, we have a canonical isomorphism of categories

Funct(BG,Vect)Rep(G)Funct(\mathbf{B}G, Vect) \simeq Rep(G)

of the functor category with the representation category.

Linear Maps

Let BEnd(U) and BEnd(V) be one-object categories whose objects are each finite-dimensional vector space and whose morphisms are all of the linear endomorphisms on that space, i.e. one-object full subcategories of FinVect.

Left Inverses

If the linear map F:UV has a left inverse, i.e.

F *F=1 U,F^*\circ F = 1_U,

where F * is the preimage, then we can construct a functor

F *:BEnd(U)BEnd(V)F_*:\mathbf{B} End(U)\to\mathbf{B} End(V)

by defining its action on objects by

F *(U)=F *UF_*(U) = F_* U

where F * on the right-hand side is the image and its action on endomorphisms by

F *(f)=FfF *.F_*(f) = F f F^*.

Composition follows immediately

F *(fg)=FfgF *=FfF *FgF *=F *(f)F *(g).F_*(f g) = F f g F^* = F f F^* F g F^* = F_*(f) F_*(g).

Identity morphisms are preserved since for any vector y in F *UV, then

y=Fxy = F x

for some vector x in U and we have

F *(1 U)y=FF *y=FF *Fx=Fx=yF_*(1_U)y = F\circ F^* y = F\circ F^*\circ F x = F x = y

so that

F *(1 U)=1 F *(U)F_*(1_U) = 1_{F_*(U)}

as required. Hence, F * is a functor.

Right Inverses

If the linear map F:UV has a right inverse, i.e.

FF *=1 V,F\circ F^* = 1_V,

where F * is the preimage, then we can construct a functor

F *:BEnd(V)BEnd(U)F^*:\mathbf{B} End(V)\to\mathbf{B} End(U)

by defining its action on objects by

F *(V)=F *VF^*(V) = F^*V

where F * on the right-hand side is preimage, and its action on endomorphisms by

F *(f)=F *fF.F^*(f) = F^* f F.

Composition follows immediately

F *(fg)=F *fgF=F *fFF *gF=F *(f)F *(g).F^*(f g) = F^* f g F = F^* f F F^* g F = F^*(f) F^*(g).

Identity morphisms are preserved since for any vector x in F *VU, then

x=F *yx = F^*y

for some vector y in V and we have

F *(1 V)x=F *Fx=F *FF *y=F *y=xF^*(1_V)x = F^*\circ F x = F^*\circ F \circ F^* y = F^* y = x

so that

F *(1 V)=1 F *(V)F^*(1_V) = 1_{F^*(V)}

as required. Hence, F * is a functor.

Presheaves

Functors F:CSet with values in Set are also called presheaves. As such one calls them presheaves on the opposite category C op of C. See presheaf for more on this.

Generalizations

A generalization of the notion of functor within ordinary category theory and then naturally further within enriched category theory is the notion of profunctor.

In higher category theory there are corresponding higher notions of functor, such as