Sorry for asking a linear algebra question on a research forum, but this seems to be either a case of extreme blindness on my side, or a case of a result lying much deeper than it seems.


The following theorem is "easily seen" according to [a text I have been reading](http://arxiv.org/abs/math/0408405) (more precisely, it is part of Proposition I.1.2 in that text):


**Theorem 1.** Let $A$, $B$, $C$, $D$ be four vector spaces over a field $k$. Then, the canonical map


$\mathrm{Hom}\left(A,C\right)\otimes\mathrm{Hom}\left(B,D\right) \to \mathrm{Hom}\left(A\otimes B,C\otimes D\right)$,


$f\otimes g\mapsto \left(a\otimes b\mapsto f\left(a\right)\otimes g\left(b\right)\right)$


is injective.


I see how this is trivial if $A$ and $B$ are finite-dimensional. I also see that it is indeed easy if $C$ and $D$ are finite-dimensional. But without finite-dimensionality conditions I have nowhere to start. The $\mathrm{Hom}$ functor does not commute with direct sums, while $\otimes$ does not commute with direct products (or does it over a field?), so there seems to be no easy way to reduce it to finite-dimensional cases. How can we proceed then?


Also, is there any application of the above theorem outside of the two cases I mentioned?


To make this more interesting, how much is saved if we let $k$ be a commutative ring with $1$, and require (say) flatness instead of freeness?



Hom(A,C) ⊗ Hom(B,D) injects into Hom(A⊗B,C⊗D): when? why?
Suppose $\sum f\_i\otimes g\_i$ is in the kernel and assume that the $g\_i$ are linearly independent. For every $a\in A$ and $\lambda\in C^\*$, we have $\sum\lambda(f\_i(a))g\_i=0$, so by assumption $\lambda(f\_i(a))=0$ for all $i$. Since $a$ and $\lambda$ were arbitrary, this implies $f\_i=0$ for all $i$.


