Is this proof involving tensors between $R$-modules correct? Let $k$ be an arbitrary field, $R = k[X,Y]$ a polynomial ring and $\mathfrak{m} = (X,Y)$ an ideal. Let us consider $R$ and $\mathfrak{m}$ as $R$-modules. 
I want to prove that if $f:M\rightarrow M'$ is an injective $R$-module homomorphism, that $f\otimes \operatorname{Id}: M\otimes_R \mathfrak{m}\rightarrow M'\otimes_R\mathfrak{m}$ is injective. I wrote down a proof but I feel this is incorrect, since I do not really use that we have $\mathfrak{m}$ but rather an arbitrary module and this statement does not hold for arbitrary modules. So here is the proof 
Let $f:M\rightarrow M'$ be an injective $R$-module homomorphism. Let us consider $f\otimes \operatorname{Id}: M\otimes_R \mathfrak{m}\rightarrow M'\otimes_R\mathfrak{m}$. Since $f$ and $\operatorname{Id}$ are homomorphisms, $f\otimes\operatorname{Id}$ is also a homomorphism. By the isomorphism theorems, we have that $\tilde{f}:M\rightarrow\operatorname{Im}f:x\rightarrow f(a)$ is an isomorphism, so $\tilde{f}^{-1}$ as well. Consider now $f^{-1}\otimes \operatorname{Id}:\operatorname{Im}f\otimes_R \mathfrak{m}\rightarrow M\otimes_R\mathfrak{m}$. Now take an elementary tensor $m\otimes n\in M\otimes_R \mathfrak{m}$. Then $$(\tilde{f}^{-1}\otimes \operatorname{Id})( (f\otimes\operatorname{Id})(m\otimes n)) = (\tilde{f}^{-1}\otimes \operatorname{Id})(f(m)\otimes n) = \tilde{f}^{-1}(f(m))\otimes n = m\otimes n$$ Now since every element of $M\otimes_R\mathfrak{m}$ can be generated by elementary tensors, the above holds for arbitrary tensors, hence $f\otimes\operatorname{Id}$ is injective. 
At which step am I assuming something which I cannot and why?
 A: This is a well-known pitfall. The domain of the map
\begin{align}
\tilde{f}^{-1} \otimes \operatorname{Id} : \operatorname{Im} f \otimes_R \mathfrak{m} \to M \otimes_R \mathfrak{m}
\end{align}
is $\operatorname{Im} f \otimes_R \mathfrak{m}$, whereas the codomain of the map
\begin{align}
f \otimes \operatorname{Id} : M \otimes_R \mathfrak{m} \to M' \otimes_R \mathfrak{m}
\end{align}
is $M' \otimes_R \mathfrak{m}$. Thus, the composition $\left(\tilde{f}^{-1} \otimes \operatorname{Id}\right) \circ \left(f \otimes \operatorname{Id}\right)$ is not well-defined.
"But wait", you will say, "isn't it sufficient that the image of the map $f \otimes \operatorname{Id}$ is contained in the domain of $\tilde{f}^{-1} \otimes \operatorname{Id}$ in order for the composition to be well-defined?". Yes, it would be sufficient. But it isn't true. The image of the map $f \otimes \operatorname{Id}$ is spanned by tensors of the form $f\left(m\right) \otimes n$ with $m \in M$ and $n \in \mathfrak{m}$, but these tensors are still formed in the tensor product $M' \otimes \mathfrak{m}$, not in the tensor product $\operatorname{Im} f \otimes \mathfrak{m}$. The inclusion $i : \operatorname{Im} f \hookrightarrow M'$ gives rise to an $R$-module map $i \otimes_R \operatorname{Id} : \operatorname{Im} f \otimes_R \mathfrak{m} \to M' \otimes_R \mathfrak{m}$, but not (in general) to an inclusion $\operatorname{Im} f \otimes_R \mathfrak{m} \hookrightarrow M' \otimes_R \mathfrak{m}$; thus, tensors of the form $f\left(m\right) \otimes n$ with $m \in M$ and $n \in \mathfrak{m}$ lie in the image of this map $i \otimes_R \operatorname{Id}$, but this does not mean that they lie in its domain (or can be mapped into it in any well-defined way). Unless we know that $\mathfrak{m}$ is a flat $R$-module, we cannot guarantee that the map $i \otimes_R \operatorname{Id} : \operatorname{Im} f \otimes_R \mathfrak{m} \to M' \otimes_R \mathfrak{m}$ will be injective, and so we cannot identify its domain with its image.
So the confusion stems from the fact that there are two different meanings of $f\left(m\right) \otimes n$: one is a tensor in $M' \otimes_R \mathfrak{m}$, and the other is a tensor in $\operatorname{Im} f \otimes_R \mathfrak{m}$. They are denoted the same, but they are not equal to each other and cannot safely be identified.
The ultimate reason for the confusion is thus the notation $a \otimes b$ for pure tensors. If you recall how tensors are defined, you will realize that a pure tensor $a \otimes b$ in a tensor product $A \otimes_R B$ depends not only on the elements $a \in A$ and $b \in B$, but also on the ambient $R$-modules $A$ and $B$. Thus, denoting it by $a \otimes b$ is an abuse of notation. If you would instead denote it by $\left(a, A\right) \otimes_R \left(b, B\right)$ (thus keeping not only the values $a$ and $b$, but also the ambient $R$-modules $A$ and $B$ explicit in the notation), then such confusion could not happen. But of course, barely anyone wants to use this kind of clumsy notation.
