Documentation

Iwasawalib.Algebra.Module.Torsion

Supplementary results on torsion modules #

theorem Module.IsTorsion.injective {A : Type u_1} [CommRing A] {M : Type u_2} [AddCommGroup M] [Module A M] {M' : Type u_3} [AddCommGroup M'] [Module A M'] (H : IsTorsion A M') {f : M →ₗ[A] M'} (hf : Function.Injective f) :
theorem Module.IsTorsion.surjective {A : Type u_1} [CommRing A] {M : Type u_2} [AddCommGroup M] [Module A M] {M' : Type u_3} [AddCommGroup M'] [Module A M'] (H : IsTorsion A M) {f : M →ₗ[A] M'} (hf : Function.Surjective f) :
theorem LinearEquiv.isTorsion {A : Type u_1} [CommRing A] {M : Type u_2} [AddCommGroup M] [Module A M] {M' : Type u_3} [AddCommGroup M'] [Module A M'] (f : M ≃ₗ[A] M') :
theorem Function.Exact.subsingleton {M : Type u_1} {N : Type u_2} {P : Type u_3} {f : MN} {g : NP} [Zero P] (H : Exact f g) [Subsingleton M] [Subsingleton P] :
theorem Module.IsTorsion.exact {A : Type u_1} [CommRing A] {M : Type u_2} [AddCommGroup M] [Module A M] {M' : Type u_3} [AddCommGroup M'] [Module A M'] {M'' : Type u_4} [AddCommGroup M''] [Module A M''] (h1 : IsTorsion A M) (h2 : IsTorsion A M'') (f : M →ₗ[A] M') (g : M' →ₗ[A] M'') (hfg : Function.Exact f g) :
theorem Module.IsTorsion.prod {A : Type u_1} [CommRing A] {M : Type u_2} [AddCommGroup M] [Module A M] {M'' : Type u_3} [AddCommGroup M''] [Module A M''] (h1 : IsTorsion A M) (h2 : IsTorsion A M'') :
IsTorsion A (M × M'')