Documentation

Iwasawalib.RingTheory.CharacteristicIdeal.Basic

Characteristic ideal of a finitely generated module over a Noetherian ring #

Results should be PR into mathlib #

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'')

Actual contents of the file #

There are only finitely many height one primes contained in the support of a finitely generated torsion module over a Noetherian ring.

Let M be a finitely generated torsion module over a Noetherian ring A. For any prime ideal p of A of height ≤ 1, the Mₚ is of finite length over Aₚ.

noncomputable def Module.charIdeal (A : Type u) [CommRing A] (M : Type v) [AddCommGroup M] [Module A M] :

The characteristic ideal char(M) of a module M over a ring A. It is mathematically correct if the module is finitely generated torsion over a Noetherian ring.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    theorem Module.IsTorsion.charIdeal_eq_mul_of_exact {A : Type u_1} {M : Type u_2} {N : Type u_3} {P : Type u_4} [CommRing A] [IsNoetherianRing A] [AddCommGroup M] [Module A M] [AddCommGroup N] [Module A N] [AddCommGroup P] [Module A P] [Module.Finite A N] (H : IsTorsion A N) (f : M →ₗ[A] N) (g : N →ₗ[A] P) (hf : Function.Injective f) (hg : Function.Surjective g) (hfg : Function.Exact f g) :

    If 0 → M → N → P → 0 is a short exact sequence of fintely generated torsion modules over a Noetherian ring, then char(N) = char(M) * char(P).

    theorem Module.IsTorsion.charIdeal_dvd_of_injective {A : Type u_1} {M : Type u_2} {N : Type u_3} [CommRing A] [IsNoetherianRing A] [AddCommGroup M] [Module A M] [AddCommGroup N] [Module A N] [Module.Finite A N] (H : IsTorsion A N) (f : M →ₗ[A] N) (hf : Function.Injective f) :
    theorem Module.IsTorsion.charIdeal_dvd_of_surjective {A : Type u_1} {N : Type u_2} {P : Type u_3} [CommRing A] [IsNoetherianRing A] [AddCommGroup N] [Module A N] [AddCommGroup P] [Module A P] [Module.Finite A N] (H : IsTorsion A N) (g : N →ₗ[A] P) (hg : Function.Surjective g) :
    theorem Module.IsTorsion.charIdeal_prod {A : Type u_1} {M : Type u_2} {P : Type u_3} [CommRing A] [IsNoetherianRing A] [AddCommGroup M] [Module A M] [AddCommGroup P] [Module A P] [Module.Finite A M] [Module.Finite A P] (HM : IsTorsion A M) (HP : IsTorsion A P) :
    charIdeal A (M × P) = charIdeal A M * charIdeal A P
    theorem LinearEquiv.charIdeal_eq {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') :