An exact functor is a functor that preserves short exact sequences. In the usual setting of Abelian
categories, an additive functor is exact iff it sends every
short exact sequence
to a short
exact sequence
(Stacks Project Authors 2026a). The terminology also applies to categories
of groups, using their usual short
exact sequences.
For an additive functor between Abelian categories, left exactness means that every short
exact sequence
gives an exact sequence
while right exactness means that it gives an exact sequence
For an additive contravariant functor, left exactness instead means that is an exact
sequence, and right exactness means that
is an exact
sequence. In either variance, a functor is exact
iff it is both left and right exact.
For a module over a commutative unit
ring
,
the tensor product functor
is right exact, and it is exact iff
is a flat
module (Stacks Project Authors 2026b). It need not be left exact. For example,
applying
to the injection
gives the zero map
(Knapp 2016, p. 587).
For every left unital R-module over a unit ring
, the covariant functor
and the contravariant
functor
,
with values in Abelian groups, are left exact (Knapp
2016, pp. 585-586). The first is exact iff
is projective and the
second iff
is injective (Stacks Project
Authors 2026cd).
More generally, an additive functor between exact categories is exact when it sends each chosen short exact sequence in the source to a chosen short exact sequence in the target. Thus exactness depends on the specified exact structures (Bühler 2010, §5).