File: Mathlib/RingTheory/Localization/Submodule.lean

full_name: IsLocalization.coeSubmodule
code: /-- Map from ideals of `R` to submodules of `S` induced by `f`. -/
def coeSubmodule (I : Ideal R) : Submodule R S 
goal: Submodule R S

full_name: IsLocalization.mem_coeSubmodule
code: theorem mem_coeSubmodule (I : Ideal R) {x : S} :
    x ∈ coeSubmodule S I ↔ ∃ y : R, y ∈ I ∧ algebraMap R S y = x 
goal: x ∈ IsLocalization.coeSubmodule S I ↔ ∃ y ∈ I, (algebraMap R S) y = x

full_name: IsLocalization.coeSubmodule_mono
code: theorem coeSubmodule_mono {I J : Ideal R} (h : I ≤ J) : coeSubmodule S I ≤ coeSubmodule S J 
goal: IsLocalization.coeSubmodule S I ≤ IsLocalization.coeSubmodule S J

full_name: IsLocalization.coeSubmodule_bot
code: @[simp]
theorem coeSubmodule_bot : coeSubmodule S (⊥ : Ideal R) = ⊥ 
goal: IsLocalization.coeSubmodule S ⊥ = ⊥

full_name: IsLocalization.coeSubmodule_top
code: @[simp]
theorem coeSubmodule_top : coeSubmodule S (⊤ : Ideal R) = 1 
goal: IsLocalization.coeSubmodule S ⊤ = 1

full_name: IsLocalization.coeSubmodule_sup
code: @[simp]
theorem coeSubmodule_sup (I J : Ideal R) :
    coeSubmodule S (I ⊔ J) = coeSubmodule S I ⊔ coeSubmodule S J 
goal: IsLocalization.coeSubmodule S (I ⊔ J) = IsLocalization.coeSubmodule S I ⊔ IsLocalization.coeSubmodule S J

full_name: IsLocalization.coeSubmodule_mul
code: @[simp]
theorem coeSubmodule_mul (I J : Ideal R) :
    coeSubmodule S (I * J) = coeSubmodule S I * coeSubmodule S J 
goal: IsLocalization.coeSubmodule S (I * J) = IsLocalization.coeSubmodule S I * IsLocalization.coeSubmodule S J

full_name: IsLocalization.coeSubmodule_fg
code: theorem coeSubmodule_fg (hS : Function.Injective (algebraMap R S)) (I : Ideal R) :
    Submodule.FG (coeSubmodule S I) ↔ Submodule.FG I 
goal: (IsLocalization.coeSubmodule S I).FG ↔ Submodule.FG I

full_name: IsLocalization.coeSubmodule_span
code: @[simp]
theorem coeSubmodule_span (s : Set R) :
    coeSubmodule S (Ideal.span s) = Submodule.span R (algebraMap R S '' s) 
goal: IsLocalization.coeSubmodule S (Ideal.span s) = Submodule.span R (⇑(algebraMap R S) '' s)

full_name: IsLocalization.coeSubmodule_span_singleton
code: theorem coeSubmodule_span_singleton (x : R) :
    coeSubmodule S (Ideal.span {x}) = Submodule.span R {(algebraMap R S) x} 
goal: IsLocalization.coeSubmodule S (Ideal.span {x}) = Submodule.span R {(algebraMap R S) x}

full_name: IsLocalization.isNoetherianRing
code: theorem isNoetherianRing (h : IsNoetherianRing R) : IsNoetherianRing S 
goal: IsNoetherianRing S

full_name: IsLocalization.coeSubmodule_le_coeSubmodule
code: @[mono]
theorem coeSubmodule_le_coeSubmodule (h : M ≤ nonZeroDivisors R) {I J : Ideal R} :
    coeSubmodule S I ≤ coeSubmodule S J ↔ I ≤ J 
goal: IsLocalization.coeSubmodule S I ≤ IsLocalization.coeSubmodule S J ↔ I ≤ J

full_name: IsLocalization.coeSubmodule_strictMono
code: @[mono]
theorem coeSubmodule_strictMono (h : M ≤ nonZeroDivisors R) :
    StrictMono (coeSubmodule S : Ideal R → Submodule R S) 
goal: StrictMono (IsLocalization.coeSubmodule S)

full_name: IsLocalization.coeSubmodule_injective
code: theorem coeSubmodule_injective (h : M ≤ nonZeroDivisors R) :
    Function.Injective (coeSubmodule S : Ideal R → Submodule R S) 
goal: Function.Injective (IsLocalization.coeSubmodule S)

full_name: IsLocalization.coeSubmodule_isPrincipal
code: theorem coeSubmodule_isPrincipal {I : Ideal R} (h : M ≤ nonZeroDivisors R) :
    (coeSubmodule S I).IsPrincipal ↔ I.IsPrincipal 
goal: (IsLocalization.coeSubmodule S I).IsPrincipal ↔ Submodule.IsPrincipal I

full_name: IsLocalization.mem_span_iff
code: theorem mem_span_iff {N : Type*} [AddCommGroup N] [Module R N] [Module S N] [IsScalarTower R S N]
    {x : N} {a : Set N} :
    x ∈ Submodule.span S a ↔ ∃ y ∈ Submodule.span R a, ∃ z : M, x = mk' S 1 z • y 
goal: x ∈ Submodule.span S a ↔ ∃ y ∈ Submodule.span R a, ∃ z, x = IsLocalization.mk' S 1 z • y

full_name: IsLocalization.mem_span_map
code: theorem mem_span_map {x : S} {a : Set R} :
    x ∈ Ideal.span (algebraMap R S '' a) ↔ ∃ y ∈ Ideal.span a, ∃ z : M, x = mk' S y z 
goal: x ∈ Ideal.span (⇑(algebraMap R S) '' a) ↔ ∃ y ∈ Ideal.span a, ∃ z, x = IsLocalization.mk' S y z

full_name: IsFractionRing.coeSubmodule_le_coeSubmodule
code: @[simp, mono]
theorem coeSubmodule_le_coeSubmodule {I J : Ideal R} :
    coeSubmodule K I ≤ coeSubmodule K J ↔ I ≤ J 
goal: IsLocalization.coeSubmodule K I ≤ IsLocalization.coeSubmodule K J ↔ I ≤ J

full_name: IsFractionRing.coeSubmodule_strictMono
code: @[mono]
theorem coeSubmodule_strictMono : StrictMono (coeSubmodule K : Ideal R → Submodule R K) 
goal: StrictMono (IsLocalization.coeSubmodule K)

full_name: IsFractionRing.coeSubmodule_injective
code: theorem coeSubmodule_injective : Function.Injective (coeSubmodule K : Ideal R → Submodule R K) 
goal: Function.Injective (IsLocalization.coeSubmodule K)

full_name: IsFractionRing.coeSubmodule_isPrincipal
code: @[simp]
theorem coeSubmodule_isPrincipal {I : Ideal R} : (coeSubmodule K I).IsPrincipal ↔ I.IsPrincipal 
goal: (IsLocalization.coeSubmodule K I).IsPrincipal ↔ Submodule.IsPrincipal I