Tensor product of modules over a ring