Let $R$ be an associative ring. If $M$ is a left $R$-module, then the dual module $M^*$ is the right $R$-module ${\rm Hom}(M,R)$. The action of $R$ on this module is given by $(fr)(m) = f(m)r$. We give it a *right* $R$-module structure since $f$ is a homomorphism of left $R$-modules. Trying to give it a structure of a left $R$-module will interfere with this action (try it!), so it doesn't work in general unless $R$ is commutative.

If $M$ instead were a right $R$-module, then we could form the dual $M^*$ as a left $R$-module of course. In particular, if $M$ is a left $R$-module, then $M^{**}$ is again a left $R$-module, and we have a canonical map

$$\sigma:M\longrightarrow M^{**}$$ defined for $x\in M$ by $\sigma(x)(f) = f(x)$ for $f\in{\rm Hom}(M,R)$.

In any introductory linear algebra class, we learn that if $M$ is a finite-dimensional vector space then $\sigma$ is an isomorphism. Of course, this can't be true for modules in general and already fails for $M = \Z/n$ as a $\Z$-module, since $\Hom(\Z/n,\Z) = 0$. Four years I wrote a post about this, called Projectivity and the Double Dual. There, we already saw that $\sigma:M\to M^{**}$ already fails to be an isomorphism when $M$ is an infinite-dimensional vector space, simply because ${\rm Hom}(\oplus_I k,k)\cong\prod_I k$ for any set $I$. Hence, if $I$ is infinite, then $\prod_I k$ will always have larger cardinality than $\oplus_I k$, so the two cannot be isomorphic.

The correct analogue for finite-dimensional vector space we should be looking at here is 'finitely-generated projective'. Recall that a left $R$-module $M$ is projective if every sequence $0\to X\to Y\to M\to 0$ of left $R$-modules splits. An equivalent condition and almost immediate consequence is: $M$ is projective if and only if $M$ is a direct summand of a free module. So, if $M$ is projective, there is an injection $M\to \oplus_I R$. Using this injection, the reader will observe that if we take $x\in M$ and $f(x) = 0$ for every $f\in{\rm Hom}(M,R)$ then $x = 0$. This is because $f(x) = 0$ for every $f$ that can be written as the composition of $M\to \oplus_I R\to R$ where $\oplus_I R\to R$ is a projection to a given coordinate.

Therefore, we conclude that $\sigma: M\to M^{**}$ is a monomorphism whenever $M$ is a projective module. Again, we have already seen that it is not necessarily an isomorphism. However:

**Theorem.**If $M$ is a

*finitely-generated*projective module, then the canonical map $\sigma:M\to M^{**}$ is an isomorphism.

Why is this? If $M$ is additionally finitely generated, there is an exact sequence $0\to N\to R^n\to M\to 0$. Because this sequence is split exact, we get another split exact sequence by applying the double dual functor, and with the canonical maps $\sigma$, we get a diagram

I've put subscripts on the $\sigma$ maps to distinguish them. I'll leave it as an exercise to show that $\sigma_R$ is an isomorphism. We already know that $\sigma_M$ is a monomorphism. Because $(R^n)^{**}\to M^{**}$ is an epimorphism, we get an epimorphism $0 = {\rm coker}(\sigma_R)\to{\rm coker}(\sigma_M)$ showing that $\sigma_M$ is an epimorphism. (Incidentally, this type of reasoning fits into the larger theorem of the Snake Lemma.)

So there you have it, rounding out my four-year old post on double duals of $R$-modules!