∀ (R : Type u_6) (A : Type u_1) {M₁ : Type u_5} {M₂ : Type u_4} {N₁ : Type u_2} {N₂ : Type u_3} [inst : CommRing R]
  [inst_1 : CommRing A] [inst_2 : AddCommGroup M₁] [inst_3 : AddCommGroup M₂] [inst_4 : AddCommGroup N₁]
  [inst_5 : AddCommGroup N₂] [inst_6 : Algebra R A] [inst_7 : Module R M₁] [inst_8 : Module A M₁] [inst_9 : Module R N₁]
  [inst_10 : Module A N₁] [inst_11 : SMulCommClass R A M₁] [inst_12 : IsScalarTower R A N₁] [inst_13 : Module R M₂]
  [inst_14 : Module R N₂], SMulCommClass A A (TensorProduct R M₁ M₂ →ₗ[A] TensorProduct R N₁ N₂)