The colon ideal #
This file defines Submodule.colon N P as the ideal of all elements r : R such that r • P ⊆ N.
The normal notation for this would be N : P which has already been taken by type theory.
def
Submodule.colon
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
(N : Submodule R M)
(S : Set M)
:
Ideal R
N.colon P is the ideal of all elements r : R such that r • P ⊆ N.
We treat it as an infix in lemma names.
Equations
Instances For
@[instance 100]
instance
Submodule.instIsTwoSidedColonCoe
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
{N : Submodule R M}
(P : Submodule R M)
:
(N.colon ↑P).IsTwoSided
@[simp]
@[deprecated Submodule.colon_univ (since := "2026-01-11")]
Alias of Submodule.colon_univ.
@[simp]
theorem
Submodule.bot_colon
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
{N : Submodule R M}
:
@[deprecated Submodule.iInf_colon_iUnion (since := "2026-01-11")]
theorem
Submodule.iInf_colon_iSup
{R : Type u_1}
{M : Type u_2}
[Semiring R]
[AddCommMonoid M]
[Module R M]
(ι₁ : Sort u_3)
(f : ι₁ → Submodule R M)
(ι₂ : Sort u_4)
(g : ι₂ → Set M)
:
Alias of Submodule.iInf_colon_iUnion.
@[deprecated Submodule.mem_colon (since := "2026-01-15")]
theorem
Submodule.mem_colon'
{R : Type u_1}
{M : Type u_2}
[CommSemiring R]
[AddCommMonoid M]
[Module R M]
{N : Submodule R M}
{S : Set M}
{r : R}
:
theorem
Submodule.mem_colon_iff_le
{R : Type u_1}
{M : Type u_2}
[CommSemiring R]
[AddCommMonoid M]
[Module R M]
{N N' : Submodule R M}
{r : R}
:
theorem
Submodule.bot_colon'
{R : Type u_1}
{M : Type u_2}
[CommSemiring R]
[AddCommMonoid M]
[Module R M]
{S : Set M}
:
A variant for arbitrary sets in commutative semirings
@[simp]
theorem
Submodule.colon_span
{R : Type u_1}
{M : Type u_2}
[CommSemiring R]
[AddCommMonoid M]
[Module R M]
{N : Submodule R M}
{S : Set M}
:
@[simp]
theorem
Submodule.mem_colon_span_singleton
{R : Type u_1}
{M : Type u_2}
[CommSemiring R]
[AddCommMonoid M]
[Module R M]
{N : Submodule R M}
{x : M}
{r : R}
:
@[simp]
theorem
Submodule.annihilator_map_mkQ_eq_colon
{R : Type u_1}
{M : Type u_2}
[Ring R]
[AddCommGroup M]
[Module R M]
{N P : Submodule R M}
:
theorem
Submodule.annihilator_quotient
{R : Type u_1}
{M : Type u_2}
[Ring R]
[AddCommGroup M]
[Module R M]
{N : Submodule R M}
: