Quotients by submodules #
- If
pis a submodule ofM,M ⧸ pis the quotient ofMwith respect top: that is, elements ofMare identified if their difference is inp. This is itself a module.
The equivalence relation associated to a submodule p, defined by x ≈ y iff y - x ∈ p.
The quotient of a module M by a submodule p ⊆ M.
Equations
- submodule.has_quotient = {quotient' := λ (p : submodule R M), quotient p.quotient_rel}
Map associating to an element of M the corresponding element of M/p,
when p is a submodule of M.
Equations
Equations
Equations
Equations
- submodule.quotient.has_quotient.quotient.has_add p = {add := λ (a b : M ⧸ p), quotient.lift_on₂' a b (λ (a b : M), submodule.quotient.mk (a + b)) _}
Equations
- submodule.quotient.has_quotient.quotient.has_neg p = {neg := λ (a : M ⧸ p), quotient.lift_on' a (λ (a : M), submodule.quotient.mk (-a)) _}
Equations
- submodule.quotient.has_quotient.quotient.has_sub p = {sub := λ (a b : M ⧸ p), quotient.lift_on₂' a b (λ (a b : M), submodule.quotient.mk (a - b)) _}
Equations
- submodule.quotient.add_comm_group p = {add := has_add.add (submodule.quotient.has_quotient.quotient.has_add p), add_assoc := _, zero := 0, zero_add := _, add_zero := _, nsmul := λ (n : ℕ) (x : M ⧸ p), quotient.lift_on' x (λ (x : M), submodule.quotient.mk (n • x)) _, nsmul_zero' := _, nsmul_succ' := _, neg := has_neg.neg (submodule.quotient.has_quotient.quotient.has_neg p), sub := has_sub.sub (submodule.quotient.has_quotient.quotient.has_sub p), sub_eq_add_neg := _, zsmul := λ (n : ℤ) (x : M ⧸ p), quotient.lift_on' x (λ (x : M), submodule.quotient.mk (n • x)) _, zsmul_zero' := _, zsmul_succ' := _, zsmul_neg' := _, add_left_neg := _, add_comm := _}
Equations
- submodule.quotient.has_scalar' P = {smul := λ (a : S), quotient.map' (has_scalar.smul a) _}
Shortcut to help the elaborator in the common case.
Equations
Equations
Equations
Equations
- submodule.quotient.module' P = function.surjective.module S {to_fun := submodule.quotient.mk P, map_zero' := _, map_add' := _} _ _
Equations
The quotient of P as an S-submodule is the same as the quotient of P as an R-submodule,
where P : submodule R M.
Equations
- submodule.quotient.restrict_scalars_equiv S P = {to_fun := (quotient.congr_right _).to_fun, map_add' := _, map_smul' := _, inv_fun := (quotient.congr_right _).inv_fun, left_inv := _, right_inv := _}
Two linear_maps from a quotient module are equal if their compositions with
submodule.mkq are equal.
The map from the quotient of M by a submodule p to M₂ induced by a linear map f : M → M₂
vanishing on p, as a linear map.
The map from the quotient of M by submodule p to the quotient of M₂ by submodule q along
f : M → M₂ is linear.
Given submodules p ⊆ M, p₂ ⊆ M₂, p₃ ⊆ M₃ and maps f : M → M₂, g : M₂ → M₃ inducing
mapq f : M ⧸ p → M₂ ⧸ p₂ and mapq g : M₂ ⧸ p₂ → M₃ ⧸ p₃ then
mapq (g ∘ f) = (mapq g) ∘ (mapq f).
The correspondence theorem for modules: there is an order isomorphism between submodules of the
quotient of M by p, and submodules of M larger than p.
Equations
- submodule.comap_mkq.rel_iso p = {to_equiv := {to_fun := λ (p' : submodule R (M ⧸ p)), ⟨submodule.comap p.mkq p', _⟩, inv_fun := λ (q : {p' // p ≤ p'}), submodule.map p.mkq ↑q, left_inv := _, right_inv := _}, map_rel_iff' := _}
The ordering on submodules of the quotient of M by p embeds into the ordering on submodules
of M.
Equations
- submodule.comap_mkq.order_embedding p = (rel_iso.to_rel_embedding (submodule.comap_mkq.rel_iso p)).trans (subtype.rel_embedding has_le.le (λ (p' : submodule R M), p ≤ p'))
An epimorphism is surjective.
If p = ⊥, then M / p ≃ₗ[R] M.
Equations
- p.quot_equiv_of_eq_bot hp = linear_equiv.of_linear (p.liftq linear_map.id _) p.mkq _ _
Quotienting by equal submodules gives linearly equivalent quotients.
Equations
- p.quot_equiv_of_eq p' h = {to_fun := (quotient.congr (equiv.refl M) _).to_fun, map_add' := _, map_smul' := _, inv_fun := (quotient.congr (equiv.refl M) _).inv_fun, left_inv := _, right_inv := _}
Given modules M, M₂ over a commutative ring, together with submodules p ⊆ M, q ⊆ M₂,
the natural map $\{f ∈ Hom(M, M₂) | f(p) ⊆ q \} \to Hom(M/p, M₂/q)$ is linear.
Equations
- p.mapq_linear q = {to_fun := λ (f : ↥(p.compatible_maps q)), p.mapq q f.val _, map_add' := _, map_smul' := _}