[proofplan]
The proof is a direct unpacking of the universal property defining the [tensor product](/page/Tensor%20Product). We first check that postcomposition with the canonical bilinear map $\tau$ really sends linear maps $M \otimes_R N \to P$ to bilinear maps $M \times N \to P$. Then the universal property supplies the inverse assignment, sending a bilinear map $b$ to the unique [linear map](/page/Linear%20Map) $\bar b$ with $\bar b \circ \tau = b$. Finally, uniqueness proves that the two assignments are inverse, and functoriality under postcomposition proves naturality in $P$.
[/proofplan]
[step:Send linear maps to bilinear maps by composing with $\tau$]
Fix an $R$-module $P$. Define
\begin{align*}
\Phi_P: \operatorname{Hom}_R(M \otimes_R N, P) &\to \operatorname{Bilin}_R(M,N;P) \\
\ell &\mapsto \ell \circ \tau.
\end{align*}
Let $\ell: M \otimes_R N \to P$ be an $R$-linear map. Since $\tau: M \times N \to M \otimes_R N$ is $R$-bilinear and $\ell$ is $R$-linear, the composite
\begin{align*}
\ell \circ \tau: M \times N &\to P
\end{align*}
is $R$-bilinear. Therefore $\Phi_P$ is well-defined.
[/step]
[step:Use the universal property to construct the inverse map]
Define
\begin{align*}
\Psi_P: \operatorname{Bilin}_R(M,N;P) &\to \operatorname{Hom}_R(M \otimes_R N, P)
\end{align*}
as follows. For an $R$-bilinear map
\begin{align*}
b: M \times N &\to P,
\end{align*}
the universal property of $M \otimes_R N$ gives a unique $R$-linear map
\begin{align*}
\bar b: M \otimes_R N &\to P
\end{align*}
such that
\begin{align*}
\bar b \circ \tau = b.
\end{align*}
Set $\Psi_P(b) := \bar b$.
[guided]
We need to reverse the construction from the previous step. Starting from an $R$-bilinear map
\begin{align*}
b: M \times N &\to P,
\end{align*}
the defining universal property of the tensor product says exactly that $b$ factors uniquely through the canonical bilinear map
\begin{align*}
\tau: M \times N &\to M \otimes_R N.
\end{align*}
That is, there exists a unique $R$-linear map
\begin{align*}
\bar b: M \otimes_R N &\to P
\end{align*}
for which
\begin{align*}
\bar b \circ \tau = b.
\end{align*}
This unique linear map is the only possible candidate for the inverse image of $b$ under $\Phi_P$, because any $\ell$ satisfying $\Phi_P(\ell)=b$ must satisfy $\ell \circ \tau=b$. Thus we define
\begin{align*}
\Psi_P: \operatorname{Bilin}_R(M,N;P) &\to \operatorname{Hom}_R(M \otimes_R N, P)
\end{align*}
by $\Psi_P(b):=\bar b$.
[/guided]
[/step]
[step:Verify that the two assignments are inverse]
Let $\ell: M \otimes_R N \to P$ be $R$-linear. Put $b := \Phi_P(\ell)=\ell \circ \tau$. By definition, $\Psi_P(b)$ is the unique $R$-linear map $\bar b: M \otimes_R N \to P$ satisfying $\bar b \circ \tau=b$. The map $\ell$ also satisfies
\begin{align*}
\ell \circ \tau = b,
\end{align*}
so uniqueness gives $\Psi_P(\Phi_P(\ell))=\ell$.
Conversely, let $b: M \times N \to P$ be $R$-bilinear. By construction, $\Psi_P(b)=\bar b$, where $\bar b$ is the unique $R$-linear map satisfying $\bar b \circ \tau=b$. Hence
\begin{align*}
\Phi_P(\Psi_P(b))=\Phi_P(\bar b)=\bar b \circ \tau=b.
\end{align*}
Therefore $\Phi_P$ and $\Psi_P$ are inverse maps, so $\Phi_P$ is a bijection.
[guided]
First take an $R$-linear map
\begin{align*}
\ell: M \otimes_R N &\to P.
\end{align*}
Applying $\Phi_P$ gives the bilinear map $b:=\ell \circ \tau$. Applying $\Psi_P$ to this $b$ means: choose the unique $R$-linear map
\begin{align*}
\bar b: M \otimes_R N &\to P
\end{align*}
such that $\bar b \circ \tau=b$. But $\ell$ itself has this property, since $b$ was defined by $b=\ell \circ \tau$. The uniqueness clause in the universal property therefore forces $\bar b=\ell$, so
\begin{align*}
\Psi_P(\Phi_P(\ell))=\ell.
\end{align*}
Now take an $R$-bilinear map
\begin{align*}
b: M \times N &\to P.
\end{align*}
By definition, $\Psi_P(b)=\bar b$, where $\bar b$ is the unique $R$-linear map with
\begin{align*}
\bar b \circ \tau=b.
\end{align*}
Applying $\Phi_P$ to $\bar b$ gives
\begin{align*}
\Phi_P(\Psi_P(b))=\Phi_P(\bar b)=\bar b \circ \tau=b.
\end{align*}
Thus each assignment undoes the other, and $\Phi_P$ is a bijection.
[/guided]
[/step]
[step:Check naturality under postcomposition]
Let $P$ and $Q$ be $R$-modules, and let
\begin{align*}
f: P &\to Q
\end{align*}
be an $R$-linear map. Define postcomposition maps
\begin{align*}
f_*: \operatorname{Hom}_R(M \otimes_R N, P) &\to \operatorname{Hom}_R(M \otimes_R N, Q),&
f_*(\ell)&:=f\circ \ell,
\end{align*}
and
\begin{align*}
f_*^{\operatorname{bil}}: \operatorname{Bilin}_R(M,N;P) &\to \operatorname{Bilin}_R(M,N;Q),&
f_*^{\operatorname{bil}}(b)&:=f\circ b.
\end{align*}
For every $R$-linear map $\ell: M \otimes_R N \to P$, associativity of composition gives
\begin{align*}
\Phi_Q(f_*(\ell))
&= \Phi_Q(f\circ \ell) \\
&= (f\circ \ell)\circ \tau \\
&= f\circ(\ell\circ \tau) \\
&= f_*^{\operatorname{bil}}(\Phi_P(\ell)).
\end{align*}
Thus the bijections $\Phi_P$ commute with postcomposition by $R$-linear maps $P \to Q$, which is precisely naturality in $P$.
[/step]