Documentation

Mathlib.RingTheory.Flat.Domain

Flat modules in domains #

We show that the tensor product of two injective linear maps is injective if the sources are flat and the ring is an integral domain.

theorem TensorProduct.map_injective_of_flat_flat_of_isDomain {R : Type u_1} {M : Type u_2} {N : Type u_3} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {P : Type u_4} {Q : Type u_5} [AddCommGroup P] [Module R P] [AddCommGroup Q] [Module R Q] [IsDomain R] (f : P →ₗ[R] M) (g : Q →ₗ[R] N) [H : Module.Flat R P] [Module.Flat R Q] (hf : Function.Injective f) (hg : Function.Injective g) :

Tensor product of injective maps over domains are injective under some flatness conditions. Also see TensorProduct.map_injective_of_flat_flat for different flatness conditions but without the domain assumption.

theorem LinearIndependent.tmul_of_isDomain {R : Type u_1} {M : Type u_2} {N : Type u_3} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [IsDomain R] {ι : Type u_6} {ι' : Type u_7} {v : ιM} (hv : LinearIndependent R v) {w : ι'N} (hw : LinearIndependent R w) :
LinearIndependent R fun (i : ι × ι') => v i.1 ⊗ₜ[R] w i.2

Tensor product of linearly independent families is linearly independent over domains. This is true over non-domains if one of the modules is flat. See LinearIndependent.tmul_of_flat_left.