mathlib3 documentation

algebra.module.localized_module

Localized Module #

THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.

Given a commutative ring R, a multiplicative subset S ⊆ R and an R-module M, we can localize M by S. This gives us a localization S-module.

Main definitions #

Future work #

def localized_module.r {R : Type u} [comm_semiring R] (S : submonoid R) (M : Type v) [add_comm_monoid M] [module R M] (a b : M × ↥S) :
Prop

The equivalence relation on M × S where (m1, s1) ≈ (m2, s2) if and only if for some (u : S), u * (s2 • m1 - s1 • m2) = 0

Equations
@[protected, instance]
def localized_module.r.setoid {R : Type u} [comm_semiring R] (S : submonoid R) (M : Type v) [add_comm_monoid M] [module R M] :
Equations
def localized_module.mk {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (m : M) (s : ↥S) :

The canonical map sending (m, s) ↦ m/s

Equations
theorem localized_module.mk_eq {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {m m' : M} {s s' : ↥S} :
theorem localized_module.induction_on {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {β : localized_module S M → Prop} (h : ∀ (m : M) (s : ↥S), β (localized_module.mk m s)) (x : localized_module S M) :
β x
theorem localized_module.induction_on₂ {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {β : localized_module S M → localized_module S M → Prop} (h : ∀ (m m' : M) (s s' : ↥S), β (localized_module.mk m s) (localized_module.mk m' s')) (x y : localized_module S M) :
β x y
def localized_module.lift_on {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {α : Type u_1} (x : localized_module S M) (f : M × ↥S → α) (wd : ∀ (p p' : M × ↥S), p ≈ p' → f p = f p') :
α

If f : M × S → α respects the equivalence relation localized_module.r, then f descents to a map localized_module M S → α.

Equations
theorem localized_module.lift_on_mk {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {α : Type u_1} {f : M × ↥S → α} (wd : ∀ (p p' : M × ↥S), p ≈ p' → f p = f p') (m : M) (s : ↥S) :
(localized_module.mk m s).lift_on f wd = f (m, s)
def localized_module.lift_on₂ {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {α : Type u_1} (x y : localized_module S M) (f : M × ↥S → M × ↥S → α) (wd : ∀ (p q p' q' : M × ↥S), p ≈ p' → q ≈ q' → f p q = f p' q') :
α

If f : M × S → M × S → α respects the equivalence relation localized_module.r, then f descents to a map localized_module M S → localized_module M S → α.

Equations
theorem localized_module.lift_on₂_mk {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {α : Type u_1} (f : M × ↥S → M × ↥S → α) (wd : ∀ (p q p' q' : M × ↥S), p ≈ p' → q ≈ q' → f p q = f p' q') (m m' : M) (s s' : ↥S) :
(localized_module.mk m s).lift_on₂ (localized_module.mk m' s') f wd = f (m, s) (m', s')
@[protected, instance]
Equations
@[simp]
theorem localized_module.zero_mk {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (s : ↥S) :
@[protected, instance]
Equations
theorem localized_module.mk_add_mk {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] {m1 m2 : M} {s1 s2 : ↥S} :
@[protected, instance]
Equations
@[protected, instance]
Equations
theorem localized_module.mk_neg {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type u_1} [add_comm_group M] [module R M] {m : M} {s : ↥S} :
@[protected, instance]
def localized_module.semiring {R : Type u} [comm_semiring R] {A : Type u_1} [semiring A] [algebra R A] {S : submonoid R} :
Equations
@[protected, instance]
def localized_module.ring {R : Type u} [comm_semiring R] {A : Type u_1} [ring A] [algebra R A] {S : submonoid R} :
Equations
@[protected, instance]
Equations
theorem localized_module.mk_mul_mk {R : Type u} [comm_semiring R] {S : submonoid R} {A : Type u_1} [semiring A] [algebra R A] {a₁ a₂ : A} {s₁ s₂ : ↥S} :
localized_module.mk a₁ s₁ * localized_module.mk a₂ s₂ = localized_module.mk (a₁ * a₂) (s₁ * s₂)
@[protected, instance]
Equations
theorem localized_module.mk_smul_mk {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (r : R) (m : M) (s t : ↥S) :
@[simp]
theorem localized_module.mk_cancel_common_left {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (s' s : ↥S) (m : M) :
@[simp]
theorem localized_module.mk_cancel {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (s : ↥S) (m : M) :
@[simp]
theorem localized_module.mk_cancel_common_right {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (s s' : ↥S) (m : M) :
theorem localized_module.smul'_mk {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (r : R) (s : ↥S) (m : M) :
@[protected, instance]
Equations
@[protected, instance]

The function m ↦ m / 1 as an R-linear map.

Equations
Instances for localized_module.mk_linear_map

For any s : S, there is an R-linear map given by a/b ↦ a/(b*s).

Equations
@[simp]
theorem localized_module.div_by_apply {R : Type u} [comm_semiring R] {S : submonoid R} {M : Type v} [add_comm_monoid M] [module R M] (s : ↥S) (p : localized_module S M) :
@[class]
structure is_localized_module {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') :
Prop

The characteristic predicate for localized module. is_localized_module S f describes that f : M ⟶ M' is the localization map identifying M' as localized_module S M.

Instances of this typeclass
noncomputable def localized_module.lift' {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) :

If g is a linear map M → M'' such that all scalar multiplication by s : S is invertible, then there is a linear map localized_module S M → M''.

Equations
theorem localized_module.lift'_mk {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) (m : M) (s : ↥S) :
theorem localized_module.lift'_add {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) (x y : localized_module S M) :
theorem localized_module.lift'_smul {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) (r : R) (m : localized_module S M) :
noncomputable def localized_module.lift {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) :

If g is a linear map M → M'' such that all scalar multiplication by s : S is invertible, then there is a linear map localized_module S M → M''.

Equations
theorem localized_module.lift_mk {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) (m : M) (s : ↥S) :

If g is a linear map M → M'' such that all scalar multiplication by s : S is invertible, then lift g m s = s⁻¹ • g m.

theorem localized_module.lift_comp {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) :

If g is a linear map M → M'' such that all scalar multiplication by s : S is invertible, then there is a linear map lift g ∘ mk_linear_map = g.

theorem localized_module.lift_unique {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M''] [module R M] [module R M''] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) (l : localized_module S M →ₗ[R] M'') (hl : l.comp (localized_module.mk_linear_map S M) = g) :

If g is a linear map M → M'' such that all scalar multiplication by s : S is invertible and l is another linear map localized_module S M ⟶ M'' such that l ∘ mk_linear_map = g then l = lift g

noncomputable def is_localized_module.from_localized_module' {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] :

If (M', f : M ⟶ M') satisfies universal property of localized module, there is a canonical map localized_module S M ⟶ M'.

Equations
@[simp]
noncomputable def is_localized_module.from_localized_module {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] :

If (M', f : M ⟶ M') satisfies universal property of localized module, there is a canonical map localized_module S M ⟶ M'.

Equations
noncomputable def is_localized_module.iso {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] :

If (M', f : M ⟶ M') satisfies universal property of localized module, then M' is isomorphic to localized_module S M as an R-module.

Equations
@[simp]
theorem is_localized_module.iso_apply_mk {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) (s : ↥S) :
theorem is_localized_module.iso_symm_apply_aux {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M') :
theorem is_localized_module.iso_symm_apply' {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M') (a : M) (b : ↥S) (eq1 : b • m = ⇑f a) :
noncomputable def is_localized_module.lift {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M'] [add_comm_monoid M''] [module R M] [module R M'] [module R M''] (f : M →ₗ[R] M') [is_localized_module S f] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) :
M' →ₗ[R] M''

If M' is a localized module and g is a linear map M' → M'' such that all scalar multiplication by s : S is invertible, then there is a linear map M' → M''.

Equations
theorem is_localized_module.lift_comp {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M'] [add_comm_monoid M''] [module R M] [module R M'] [module R M''] (f : M →ₗ[R] M') [is_localized_module S f] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) :
theorem is_localized_module.lift_unique {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M'] [add_comm_monoid M''] [module R M] [module R M'] [module R M''] (f : M →ₗ[R] M') [is_localized_module S f] (g : M →ₗ[R] M'') (h : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) (l : M' →ₗ[R] M'') (hl : l.comp f = g) :
theorem is_localized_module.is_universal {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M'] [add_comm_monoid M''] [module R M] [module R M'] [module R M''] (f : M →ₗ[R] M') [is_localized_module S f] (g : M →ₗ[R] M'') (map_unit : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) :
∃! (l : M' →ₗ[R] M''), l.comp f = g

Universal property from localized module: If (M', f : M ⟶ M') is a localized module then it satisfies the following universal property: For every R-module M'' which every s : S-scalar multiplication is invertible and for every R-linear map g : M ⟶ M'', there is a unique R-linear map l : M' ⟶ M'' such that l ∘ f = g.

M -----f----> M'
|           /
|g       /
|     /   l
v   /
M''
theorem is_localized_module.ring_hom_ext {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M'] [add_comm_monoid M''] [module R M] [module R M'] [module R M''] (f : M →ₗ[R] M') [is_localized_module S f] (map_unit : ∀ (x : ↥S), is_unit (⇑(algebra_map R (module.End R M'')) ↑x)) ⦃j k : M' →ₗ[R] M''⦄ (h : j.comp f = k.comp f) :
j = k
noncomputable def is_localized_module.linear_equiv {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} {M'' : Type u_4} [add_comm_monoid M] [add_comm_monoid M'] [add_comm_monoid M''] [module R M] [module R M'] [module R M''] (f : M →ₗ[R] M') (g : M →ₗ[R] M'') [is_localized_module S f] [is_localized_module S g] :
M' ≃ₗ[R] M''

If (M', f) and (M'', g) both satisfy universal property of localized module, then M', M'' are isomorphic as R-module

Equations
theorem is_localized_module.smul_injective {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (s : ↥S) :
function.injective (λ (m : M'), s • m)
theorem is_localized_module.smul_inj {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (s : ↥S) (m₁ m₂ : M') :
s • m₁ = s • m₂ ↔ m₁ = m₂
noncomputable def is_localized_module.mk' {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) (s : ↥S) :
M'

mk' f m s is the fraction m/s with respect to the localization map f.

Equations
theorem is_localized_module.mk'_smul {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (r : R) (m : M) (s : ↥S) :
theorem is_localized_module.mk'_add_mk' {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m₁ m₂ : M) (s₁ s₂ : ↥S) :
is_localized_module.mk' f m₁ s₁ + is_localized_module.mk' f m₂ s₂ = is_localized_module.mk' f (s₂ • m₁ + s₁ • m₂) (s₁ * s₂)
@[simp]
theorem is_localized_module.mk'_zero {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (s : ↥S) :
@[simp]
theorem is_localized_module.mk'_one {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) :
@[simp]
theorem is_localized_module.mk'_cancel {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) (s : ↥S) :
@[simp]
theorem is_localized_module.mk'_cancel' {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) (s : ↥S) :
@[simp]
theorem is_localized_module.mk'_cancel_left {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) (s₁ s₂ : ↥S) :
is_localized_module.mk' f (s₁ • m) (s₁ * s₂) = is_localized_module.mk' f m s₂
@[simp]
theorem is_localized_module.mk'_cancel_right {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) (s₁ s₂ : ↥S) :
is_localized_module.mk' f (s₂ • m) (s₁ * s₂) = is_localized_module.mk' f m s₁
theorem is_localized_module.mk'_add {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m₁ m₂ : M) (s : ↥S) :
theorem is_localized_module.mk'_eq_mk'_iff {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m₁ m₂ : M) (s₁ s₂ : ↥S) :
is_localized_module.mk' f m₁ s₁ = is_localized_module.mk' f m₂ s₂ ↔ ∃ (s : ↥S), s • s₁ • m₂ = s • s₂ • m₁
theorem is_localized_module.mk'_neg {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_group M] [add_comm_group M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m : M) (s : ↥S) :
theorem is_localized_module.mk'_sub {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_group M] [add_comm_group M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m₁ m₂ : M) (s : ↥S) :
theorem is_localized_module.mk'_sub_mk' {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_group M] [add_comm_group M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] (m₁ m₂ : M) (s₁ s₂ : ↥S) :
is_localized_module.mk' f m₁ s₁ - is_localized_module.mk' f m₂ s₂ = is_localized_module.mk' f (s₂ • m₁ - s₁ • m₂) (s₁ * s₂)
theorem is_localized_module.mk'_mul_mk'_of_map_mul {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [semiring M] [semiring M'] [module R M] [algebra R M'] (f : M →ₗ[R] M') (hf : ∀ (m₁ m₂ : M), ⇑f (m₁ * m₂) = ⇑f m₁ * ⇑f m₂) [is_localized_module S f] (m₁ m₂ : M) (s₁ s₂ : ↥S) :
is_localized_module.mk' f m₁ s₁ * is_localized_module.mk' f m₂ s₂ = is_localized_module.mk' f (m₁ * m₂) (s₁ * s₂)
theorem is_localized_module.mk'_mul_mk' {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [semiring M] [semiring M'] [algebra R M] [algebra R M'] (f : M →ₐ[R] M') [is_localized_module S f.to_linear_map] (m₁ m₂ : M) (s₁ s₂ : ↥S) :
@[simp]
theorem is_localized_module.mk'_eq_iff {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] {f : M →ₗ[R] M'} [is_localized_module S f] {m : M} {s : ↥S} {m' : M'} :
@[simp]
theorem is_localized_module.mk'_eq_zero {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] {f : M →ₗ[R] M'} [is_localized_module S f] {m : M} (s : ↥S) :
theorem is_localized_module.mk'_eq_zero' {R : Type u_1} [comm_ring R] {S : submonoid R} {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] {m : M} (s : ↥S) :
is_localized_module.mk' f m s = 0 ↔ ∃ (s' : ↥S), s' • m = 0
theorem is_localized_module.eq_zero_iff {R : Type u_1} [comm_ring R] (S : submonoid R) {M : Type u_2} {M' : Type u_3} [add_comm_monoid M] [add_comm_monoid M'] [module R M] [module R M'] (f : M →ₗ[R] M') [is_localized_module S f] {m : M} :
⇑f m = 0 ↔ ∃ (s' : ↥S), s' • m = 0
theorem is_localized_module.mk_of_algebra {R : Type u_1} {S : Type u_2} {S' : Type u_3} [comm_ring R] [comm_ring S] [comm_ring S'] [algebra R S] [algebra R S'] (M : submonoid R) (f : S →ₐ[R] S') (h₁ : ∀ (x : R), x ∈ M → is_unit (⇑(algebra_map R S') x)) (h₂ : ∀ (y : S'), ∃ (x : S × ↥M), x.snd • y = ⇑f x.fst) (h₃ : ∀ (x : S), ⇑f x = 0 → (∃ (m : ↥M), m • x = 0)) :