Documentation

Mathlib.RingTheory.IsPrimary

Primary submodules #

A proper submodule S : Submodule R M is primary iff r • x ∈ S implies x ∈ S or ∃ n : ℕ, r ^ n • (⊤ : Submodule R M) ≤ S.

Main results #

Implementation details #

This is a generalization of Ideal.IsPrimary. For brevity, the pointwise instances are used to define the nilpotency of r : R.

References #

def Submodule.IsPrimary {R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] (S : Submodule R M) :

A proper submodule S : Submodule R M is primary iff r • x ∈ S implies x ∈ S or ∃ n : ℕ, r ^ n • (⊤ : Submodule R M) ≤ S. This generalizes Ideal.IsPrimary.

Equations
Instances For
    theorem Submodule.IsPrimary.ne_top {R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {S : Submodule R M} (h : S.IsPrimary) :
    theorem Submodule.IsPrimary.mem_or_mem {R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {S : Submodule R M} (h : S.IsPrimary) {r : R} {m : M} (hrm : r m S) :
    theorem Submodule.IsPrimary.inf {R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {S T : Submodule R M} (hS : S.IsPrimary) (hT : T.IsPrimary) (h : (S.colon Set.univ).radical = (T.colon Set.univ).radical) :
    (ST).IsPrimary
    theorem Submodule.isPrimary_finsetInf {R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {ι : Type u_3} {s : Finset ι} {f : ιSubmodule R M} {i : ι} (hi : i s) (hs : ∀ ⦃y : ι⦄, y s(f y).IsPrimary) (hs' : ∀ ⦃y : ι⦄, y s((f y).colon Set.univ).radical = ((f i).colon Set.univ).radical) :
    theorem Submodule.IsPrimary.radical_colon_singleton_of_notMem {R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {S : Submodule R M} (hI : S.IsPrimary) {m : M} (hm : mS) :
    theorem Submodule.isPrimary_iff_zero_divisor_quotient_imp_nilpotent_smul {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {S : Submodule R M} :
    S.IsPrimary S ∀ (r : R) (x : M S), x 0r x = 0∃ (n : ), r ^ n =