In mathematics, particularly homological algebra, an **exact functor** is a functor that preserves short exact sequences. Exact functors are convenient for algebraic calculations because they can be directly applied to presentations of objects. Much of the work in homological algebra is designed to cope with functors that *fail* to be exact, but in ways that can still be controlled.

## Definitions

Let * P* and

*be abelian categories, and let*

**Q***F*:

*→*

**P***be a covariant additive functor (so that, in particular,*

**Q***F(0)=0*). We say that

*F*is an

**exact functor**if, whenever

is a short exact sequence in * P*, then

is a short exact sequence in * Q.* (The maps are often omitted and implied, and one says: "if

*0*→

*A*→

*B*→

*C*→

*0*is exact, then

*0*→

*F(A)*→

*F(B)*→

*F(C)*→

*0*is also exact".)

Further, we say that *F* is

**left-exact**if, whenever*0*→*A*→*B*→*C*→*0*is exact, then*0*→*F(A)*→*F(B)*→*F(C)*is exact;**right-exact**if, whenever*0*→*A*→*B*→*C*→*0*is exact, then*F(A)*→*F(B)*→*F(C)*→*0*is exact;**half-exact**if, whenever*0*→*A*→*B*→*C*→*0*is exact, then*F(A)*→*F(B)*→*F(C)*is exact. This is distinct from the notion of a topological half-exact functor.

If *G* is a contravariant additive functor from * P* to

*, we similarly define*

**Q***G*to be

**exact**if, whenever*0*→*A*→*B*→*C*→*0*is exact, then*0*→*G(C)*→*G(B)*→*G(A)*→*0*is exact;**left-exact**if, whenever*0*→*A*→*B*→*C*→*0*is exact, then*0*→*G(C)*→*G(B)*→*G(A)*is exact;**right-exact**if, whenever*0*→*A*→*B*→*C*→*0*is exact, then*G(C)*→*G(B)*→*G(A)*→*0*is exact;**half-exact**if, whenever*0*→*A*→*B*→*C*→*0*is exact, then*G(C)*→*G(B)*→*G(A)*is exact.

It is not always necessary to start with an entire short exact sequence *0*→*A*→*B*→*C*→*0* to have some exactness preserved. The following definitions are equivalent to the ones given above:

*F*is**exact**if and only if*A*→*B*→*C*exact implies*F(A)*→*F(B)*→*F(C)*exact;*F*is**left-exact**if and only if*0*→*A*→*B*→*C*exact implies*0*→*F(A)*→*F(B)*→*F(C)*exact (i.e. if "*F*turns kernels into kernels");*F*is**right-exact**if and only if*A*→*B*→*C*→*0*exact implies*F(A)*→*F(B)*→*F(C)*→*0*exact (i.e. if "*F*turns cokernels into cokernels");*G*is**left-exact**if and only if*A*→*B*→*C*→*0*exact implies*0*→*G(C)*→*G(B)*→*G(A)*exact (i.e. if "*G*turns cokernels into kernels");*G*is**right-exact**if and only if*0*→*A*→*B*→*C*exact implies*G(C)*→*G(B)*→*G(A)*→*0*exact (i.e. if "*G*turns kernels into cokernels").

## Examples

Every equivalence or duality of abelian categories is exact.

The most basic examples of left exact functors are the Hom functors: if **A** is an abelian category and *A* is an object of **A**, then *F*_{A}(*X*) = Hom_{A}(*A*,*X*) defines a covariant left-exact functor from **A** to the category **Ab** of abelian groups.^{[1]} The functor *F*_{A} is exact if and only if *A* is projective.^{[2]} The functor *G*_{A}(*X*) = Hom_{A}(*X*,*A*) is a contravariant left-exact functor;^{[3]} it is exact if and only if *A* is injective.^{[4]}

If *k* is a field and *V* is a vector space over *k*, we write *V** = Hom_{k}(*V*,*k*) (this is commonly known as the dual space). This yields a contravariant exact functor from the category of *k*-vector spaces to itself. (Exactness follows from the above: *k* is an injective *k*-module. Alternatively, one can argue that every short exact sequence of *k*-vector spaces splits, and any additive functor turns split sequences into split sequences.)

If *X* is a topological space, we can consider the abelian category of all sheaves of abelian groups on *X*. The covariant functor that associates to each sheaf *F* the group of global sections *F*(*X*) is left-exact.

If *R* is a ring and *T* is a right *R*-module, we can define a functor *H*_{T} from the abelian category of all left *R*-modules to **Ab** by using the tensor product over *R*: *H*_{T}(*X*) = *T* ⊗ *X*. This is a covariant right exact functor; it is exact if and only if *T* is flat. In other words, given an exact sequence *A*→*B*→*C*→*0* of left *R* modules, the sequence of abelian groups *T ⊗ A*→*T ⊗ B*→*T ⊗ C*→*0* is exact.

For example, is a flat -module. Therefore, tensoring with as a -module is an exact functor. **Proof:** It suffices to show that if i is an injective map of -modules , then the corresponding map between the tensor products is injective. One can show that if and only if is a torsion element or . The given tensor products only have pure tensors. Therefore, it suffices to show that if a pure tensor is in the kernel, then it is zero. Suppose that is a nonzero element of the kernel. Then, is torsion. Since is injective, is torsion. Therefore, , which is a contradiction. Therefore, is also injective.

In general, if *T* is not flat, then tensor product is not left exact. For example, consider the short exact sequence of -modules . Tensoring over with gives a sequence that is no longer exact, since is not torsion-free and thus not flat.

If **A** is an abelian category and **C** is an arbitrary small category, we can consider the functor category **A ^{C}** consisting of all functors from

**C**to

**A**; it is abelian. If

*X*is a given object of

**C**, then we get a functor

*E*

_{X}from

**A**

^{C}to

**A**by evaluating functors at

*X*. This functor

*E*

_{X}is exact.

While tensoring may not be left exact, it can be shown that tensoring is a right exact functor:

Theorem: Let *A,B,C* and *P* be *R* modules for a commutative ring *R* having multiplicative identity. Let

be a short exact sequence of *R* modules, then

- is also a short exact sequence of
*R*modules. (Since*R*is commutative, this sequence is a sequence of*R*modules and not merely of abelian groups). Here, we define :.

This has a useful corollary: If *I* is an ideal of *R* and *P* is as above, then

Proof: : , where *f* is the inclusion and *g* is the projection, is a exact sequence of *R* modules. By the above we get that : is also a short exact sequence of *R* modules. By exactness, , since *f* is the inclusion. Now, consider the *R* module homomorphism from given by *R* linearly extending the map defined on pure tensors: implies that . So, the kernel of this map cannot contain any non zero pure tensors. is composed only of pure tensors: For . So, this map is injective. It is clearly onto. So, . Similarly, . This proves the corollary.

As another application, we show that for, where and *n* is the highest power of 2 dividing *m*. We prove a special case: *m=12*.

Proof: Consider a pure tensor . Also, for .
This shows that . Letting , *A,B,C,P* are *R=Z* modules by the usual multiplication action and satisfy the conditions of the main theorem. By the exactness implied by the theorem and by the above note we obtain that
. The last congruence follows by a similar argument to one in the proof of the corollary showing that .

## Properties and theorems

A functor is exact if and only if it is both left exact and right exact.

A covariant (not necessarily additive) functor is left exact if and only if it turns finite limits into limits; a covariant functor is right exact if and only if it turns finite colimits into colimits; a contravariant functor is left exact if and only if it turns finite colimits into limits; a contravariant functor is right exact if and only if it turns finite limits into colimits.

The degree to which a left exact functor fails to be exact can be measured with its right derived functors; the degree to which a right exact functor fails to be exact can be measured with its left derived functors.

Left and right exact functors are ubiquitous mainly because of the following fact: if the functor *F* is left adjoint to *G*, then *F* is right exact and *G* is left exact.

## Generalizations

In SGA4, tome I, section 1, the notion of left (right) exact functors are defined for general categories, and not just abelian ones. The definition is as follows:

- Let
*C*be a category with finite projective (resp. inductive) limits. Then a functor from*C*to another category*C′*is left (resp. right) exact if it commutes with finite projective (resp. inductive) limits.

Despite its abstraction, this general definition has useful consequences. For example, in section 1.8, Grothendieck proves that a functor is pro-representable if and only if it is left exact, under some mild conditions on the category *C*.

The exact functors between Quillen's exact categories generalize the exact functors between abelian categories discussed here.

The regular functors between regular categories are sometimes called exact functors and generalize the exact functors discussed here.

## Notes

## References

- Jacobson, Nathan (2009).
*Basic algebra*.**2**(2nd ed.). Dover. ISBN 978-0-486-47187-7.