The Stacks project

10.10 Internal Hom

If $R$ is a ring, and $M$, $N$ are $R$-modules, then

\[ \mathop{\mathrm{Hom}}\nolimits _ R(M, N) = \{ \varphi : M \to N\} \]

is the set of $R$-linear maps from $M$ to $N$. This set comes with the structure of an abelian group by setting $(\varphi + \psi )(m) = \varphi (m) + \psi (m)$, as usual. In fact, $\mathop{\mathrm{Hom}}\nolimits _ R(M, N)$ is also an $R$-module via the rule $(x \varphi )(m) = x \varphi (m) = \varphi (xm)$.

Given maps $a : M \to M'$ and $b : N \to N'$ of $R$-modules, we can pre-compose and post-compose homomorphisms by $a$ and $b$. This leads to the following commutative diagram

\[ \xymatrix{ \mathop{\mathrm{Hom}}\nolimits _ R(M', N) \ar[d]_{- \circ a} \ar[r]_{b \circ -} & \mathop{\mathrm{Hom}}\nolimits _ R(M', N') \ar[d]^{- \circ a} \\ \mathop{\mathrm{Hom}}\nolimits _ R(M, N) \ar[r]^{b \circ -} & \mathop{\mathrm{Hom}}\nolimits _ R(M, N') } \]

In fact, the maps in this diagram are $R$-module maps. Thus $\mathop{\mathrm{Hom}}\nolimits _ R$ defines an additive functor

\[ \text{Mod}_ R^{opp} \times \text{Mod}_ R \longrightarrow \text{Mod}_ R, \quad (M, N) \longmapsto \mathop{\mathrm{Hom}}\nolimits _ R(M, N) \]

Lemma 10.10.1. Exactness and $\mathop{\mathrm{Hom}}\nolimits _ R$. Let $R$ be a ring.

  1. Let $M_1 \to M_2 \to M_3 \to 0$ be a complex of $R$-modules. Then $M_1 \to M_2 \to M_3 \to 0$ is exact if and only if $0 \to \mathop{\mathrm{Hom}}\nolimits _ R(M_3, N) \to \mathop{\mathrm{Hom}}\nolimits _ R(M_2, N) \to \mathop{\mathrm{Hom}}\nolimits _ R(M_1, N)$ is exact for all $R$-modules $N$.

  2. Let $0 \to M_1 \to M_2 \to M_3$ be a complex of $R$-modules. Then $0 \to M_1 \to M_2 \to M_3$ is exact if and only if $0 \to \mathop{\mathrm{Hom}}\nolimits _ R(N, M_1) \to \mathop{\mathrm{Hom}}\nolimits _ R(N, M_2) \to \mathop{\mathrm{Hom}}\nolimits _ R(N, M_3)$ is exact for all $R$-modules $N$.

Proof. Omitted. $\square$

Lemma 10.10.2. Let $R$ be a ring. Let $M$ be a finitely presented $R$-module. Let $N$ be an $R$-module.

  1. For $f \in R$ we have $\mathop{\mathrm{Hom}}\nolimits _ R(M, N)_ f = \mathop{\mathrm{Hom}}\nolimits _{R_ f}(M_ f, N_ f) = \mathop{\mathrm{Hom}}\nolimits _ R(M_ f, N_ f)$,

  2. for a multiplicative subset $S$ of $R$ we have

    \[ S^{-1}\mathop{\mathrm{Hom}}\nolimits _ R(M, N) = \mathop{\mathrm{Hom}}\nolimits _{S^{-1}R}(S^{-1}M, S^{-1}N) = \mathop{\mathrm{Hom}}\nolimits _ R(S^{-1}M, S^{-1}N). \]

Proof. Part (1) is a special case of part (2). The second equality in (2) follows from Lemma 10.9.7. Choose a presentation

\[ \bigoplus \nolimits _{j = 1, \ldots , m} R \longrightarrow \bigoplus \nolimits _{i = 1, \ldots , n} R \to M \to 0. \]

By Lemma 10.10.1 this gives an exact sequence

\[ 0 \to \mathop{\mathrm{Hom}}\nolimits _ R(M, N) \to \bigoplus \nolimits _{i = 1, \ldots , n} N \longrightarrow \bigoplus \nolimits _{j = 1, \ldots , m} N. \]

Inverting $S$ and using Proposition 10.9.12 we get an exact sequence

\[ 0 \to S^{-1}\mathop{\mathrm{Hom}}\nolimits _ R(M, N) \to \bigoplus \nolimits _{i = 1, \ldots , n} S^{-1}N \longrightarrow \bigoplus \nolimits _{j = 1, \ldots , m} S^{-1}N \]

and the result follows since $S^{-1}M$ sits in an exact sequence

\[ \bigoplus \nolimits _{j = 1, \ldots , m} S^{-1}R \longrightarrow \bigoplus \nolimits _{i = 1, \ldots , n} S^{-1}R \to S^{-1}M \to 0 \]

which induces (by Lemma 10.10.1) the exact sequence

\[ 0 \to \mathop{\mathrm{Hom}}\nolimits _{S^{-1}R}(S^{-1}M, S^{-1}N) \to \bigoplus \nolimits _{i = 1, \ldots , n} S^{-1}N \longrightarrow \bigoplus \nolimits _{j = 1, \ldots , m} S^{-1}N \]

which is the same as the one above. $\square$

Comments (2)

Comment #624 by Wei Xu on

Typo: should be

Comment #8365 by Hao Zhang on

In lemma 0583, the second equality in (2) should be the result of the lemma 07JY.

Post a comment

Your email address will not be published. Required fields are marked.

In your comment you can use Markdown and LaTeX style mathematics (enclose it like $\pi$). A preview option is available if you wish to see how it works out (just click on the eye in the toolbar).

Unfortunately JavaScript is disabled in your browser, so the comment preview function will not work.

All contributions are licensed under the GNU Free Documentation License.

In order to prevent bots from posting comments, we would like you to prove that you are human. You can do this by filling in the name of the current tag in the following input field. As a reminder, this is tag 0581. Beware of the difference between the letter 'O' and the digit '0'.