- Create the free $R$ module $F \equiv R^{M \times N}$ whose elements are free linear combinations of tuples from $M$ and $N$.
- Let $K$ (for kill) be the submodule generated by the equations: (1) $(x + x', y) - (x, y) - (x', y)$, (2) $(x, y + y') - (x, y) - (x, y')$, (3) $(rx, y) - r \cdot (x, y)$(4) $(x, ry) - r \cdot (x, y)$
- Let $T \equiv F/K$. Denote the element of each $(x, y) \in F$ in the quotient $F/K$ as $x \otimes y$. Then $T$ is generated by such elements.
- From our quotients, we have the equation $(ax) \otimes y = a (x \otimes y) = x \otimes (ay)$, and $(x + x') \otimes y = x \otimes y + x' \otimes y$, and finally $x \otimes (y + y') = x \otimes y + x \otimes y'$.

```
F=R^{MxN} →fF→ MxN →f→ O
↓ ↑
F/~ fT
↓ ↑
T=M(x)N →→fT→→→→*
```

For this diagram to commute, we need the fibers of $(f \circ f_F): R^{MxN} \rightarrow O$ to take constant values for each $o \in O$.
Unwrapping that condition implies that $f$ is bilinear. So, the condition
$f_T(x \otimes y) = f(x, y)$ uniquely determines $f_T(x \otimes y)$ if $f(x, y)$ is bilinear.
If not, the map $f_T$ is ill-defined, as we cannot "kan extend" $f_F$ along $f_T$.