Module

EssentialModuleMaps.lean

Nyll.EtaleFundamentalGroups.Purity.EssentialModuleMaps
2 declarations indexed from sourceView source ↗

Essentiality inside an intermediate submodule

Essentiality of N inside S can be tested on the ambient submodules contained in S. Intersecting an arbitrary submodule with S then proves transitivity of essential extensions.

Declarations

EtaleFundamentalGroups.Purity.isEssentialSubmodule_comap_subtype_iff

Essentiality in a submodule is equivalent to the ambient disjointness test restricted to submodules lying in that submodule.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace EtaleFundamentalGroups.Purity
universe u v
variable {R : Type u} [Ring R]
variable {M : Type v} [AddCommGroup M] [Module R M]
theorem isEssentialSubmodule_comap_subtype_iff
    (N S : Submodule R M) (hNS : N ≤ S) :
    IsEssentialSubmodule (N.comap S.subtype) ↔
      ∀ L : Submodule R M, L ≤ S → Disjoint N L → L = ⊥
EtaleFundamentalGroups.Purity.IsEssentialSubmodule.trans_subtype

An essential submodule of an essential submodule is essential in the ambient module.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace EtaleFundamentalGroups.Purity
universe u v
variable {R : Type u} [Ring R]
variable {M : Type v} [AddCommGroup M] [Module R M]
theorem IsEssentialSubmodule.trans_subtype
    {N S : Submodule R M} (hNS : N ≤ S)
    (hN : IsEssentialSubmodule (N.comap S.subtype))
    (hS : IsEssentialSubmodule S) : IsEssentialSubmodule N