The topic of this post is the Eilenberg–Watts Theorem, which is a fundamental and handy result identifying functors between module categories that are additive, right exact, and commute with arbitrary direct sums. Our main source is Watts's 1960 article (see also Eilenberg's article from around the same time). As both Eilenberg and Watts separately note, the functors \(\otimes\) and \(\mathrm{Hom}\) play central roles in homological algebra, and their theorem partly explains why this is.
We will consider functors of the form \(F \colon \mathsf{Mod}_R \to \mathsf{Mod}_S\), where \(R\) and \(S\) are rings and \(\mathsf{Mod}_R\) is the category of right \(R\)-modules. The functor \(F\) is right exact if whenever \(A \to B \to C \to 0\) is an exact sequence of right \(R\)-modules, then \(F(A) \to F(B) \to F(C) \to 0\) is also exact. It is not so hard to see that a right exact functor commutes with finite direct sums. Indeed, if \(A\) and \(B\) are \(R\)-modules, then \(F(A \oplus B)\) maps surjectively onto \(F(A)\) and \(F(B)\) by right exactness. Moreover, both projections split by functoriality, so \(F(A \oplus B) \cong F(A) \oplus F(B)\). In fact, right exact functors are characterised as exactly those commuting with finite colimits (of which finite direct sums are a special case).
In general, it is not the case that right exact functors commute with arbitrary direct sums (e.g. infinite direct products do not). Given an \(R\)-\(S\)-bimodule \(M\), the functor \[- \otimes_R M \colon \mathsf{Mod}_R \to \mathsf{Mod}_S, \qquad N \mapsto N \otimes_R M\] is a natural example of a right exact additive functor that preserves arbitrary direct sums. The Eilenberg–Watts Theorem says that this is the only example.
Theorem (Eilenberg, Watts). If \(F \colon \mathsf{Mod}_R \to \mathsf{Mod}_S\) is an additive right exact functor that preserves arbitrary direct sums, then there is a natural isomorphism \[F(-) \ \cong \ - \otimes_R F(R),\] where \(R\) is viewed as a right module over itself.
Before proving the theorem, we explain how \(F(R)\) is an \(R\)-\(S\)-bimodule. The right \(S\)-module structure is from the definition of \(F\); to see the left \(R\)-module structure, observe that every element \(r\in R\) defines a map \(\mu_r \colon R \rightarrow R\) by \(\mu_r(x) = rx\). So \(\mu_x\) is a right \(R\)-module map. If \(z \in F(R)\), then putting \(r \otimes z := F(\mu_r)(z)\) defines the left \(R\)-module structure on \(F(R)\).
Let \(M\) be an arbitrary right \(R\)-module and fix a presentation \(\bigoplus_I R \rightarrow \bigoplus_J R \rightarrow M \rightarrow 0\) (this is just a right exact sequence where the two leftmost modules are free; every module has a presentation). By right exactness and the fact that \(F\) commutes with direct sums, we obtain the right exact sequence \[\bigoplus_J F(R) \rightarrow \bigoplus_I F(R) \to F(M) \to 0.\] On the other hand, tensoring the presentation with \(F(R)\) yields the right exact sequence \[\bigoplus_J F(R) \rightarrow \bigoplus_I F(R) \to M \otimes_R F(R) \to 0\] where we are using again that tensoring is right exact and commutes with arbitrary direct sums.
The next step is to construct a map \(M \otimes_R F(R) \to F(M)\), i.e. we need to decide where to send an elementary tensor \(m \otimes x \in M \otimes_R F(R)\). As with most general theorems in category theory, there is only one way to proceed. For every element \(m \in M\), there is a right \(R\)-module map \(\nu_m \colon R \rightarrow M\) given by \(\rho_m(r) = mr\). The map is then given by \[m \otimes x \mapsto F(\rho_m)(x).\] We leave it as an exercise—which really only involves running through definitions—to check that this map yields a commutative diagram \[\begin{CD} \bigoplus_J F(R) @>>> \bigoplus_I F(R) @>>> M \otimes_R F(R) @>>> 0\\ @VVV @VVV @VVV \\ \bigoplus_J F(R) @>>> \bigoplus_I F(R) @>>> F(M) @>>> 0 \end{CD}\] where the two leftmost vertical maps are isomorphisms. By the Five Lemma, \(M \otimes_R F(R) \to F(M)\) is an isomorphism. We leave it to the reader to verify that this is really a natural isomorphism of functors (i.e. that it commutes with morphisms in \(\mathsf{Mod}_R\)). This should come as no surprise, since the definition of the isomorphism \(M \otimes_R F(R) \cong F(M)\) is very natural (in the informal sense). \(\square\)
The Eilenberg–Watts Theorem has the following quite useful consequence in group cohomology. Note that it is proved in Proposition VIII.6.8 of Brown's book Cohomology of Groups under the stronger assumption that \(G\) be of type \(\mathrm{FP}\) (this condition turns out to be equivalent to cohomology preserving direct sums in all degrees).
Given a short exact sequence of \(G\)-modules \(0 \to M_0 \to M_1 \to M_2 \to 0\), there is a long exact sequence in cohomology \[ \cdots \to \mathrm{H}^i(G;M_0) \to \mathrm{H}^i(G;M_1) \to \mathrm{H}^i(G;M_2) \to \mathrm{H}^{i+1}(G;M_0) \to \cdots. \] In particular, \(\mathrm{H}^n(G;M_1) \to \mathrm{H}^n(G;M_2)\) is surjective, which proves that \(\mathrm{H}^n(G;-)\) is right exact. The Eilenberg–Watts Theorem implies \[\mathrm{H}^n(G;M) \ \cong \ M \otimes_{\mathbb Z[G]} \mathrm{H}^n(G;\mathbb Z[G]).\]
Group cohomology commutes with direct products, a fact which follows . From the previous paragraph, it follows that \(- \otimes_{\mathbb Z[G]} \mathrm{H}^n(G;\mathbb Z[G])\) commutes with direct products. However, it is a general fact that the functor \(- \otimes_R M\) preserves direct products if and only if \(M\) is finitely presented; hence, \(\mathrm{H}^n(G;\mathbb Z[G])\) is finitely presented. \(\square\)
Remark. (1) As was hinted at in the first paragraph of the post, the full Eilenberg–Watts Theorem also has a dual statement involving Hom functors. Namely, if \(F \colon \mathsf{Mod}_R \to \mathsf{Mod}_S\) is a left exact additive functor that preserves direct products, then there is a natural isomorphism \[F(-) \ \cong \ \mathrm{Hom}_R(F(R),-).\] More succinctly, Hom functors are the only left exact (additive) functors preserving direct products. The proof is dual. There is even a version which identifies \(\mathrm{Hom}_{R}(-,M)\) as the only left exact contravariant functor that converts direct sums into direct products (see Watts).
(2) The Eilenberg–Watts Theorem holds in very general higher category theory contexts that I do not know anything about (see the nLab).