More operations on modules and ideals #
This duplicates the global smul_eq_mul, but doesn't have to unfold anywhere near as much to
apply.
If x is an I-multiple of the submodule spanned by f '' s,
then we can write x as an I-linear combination of the elements of f '' s.
Given s, a generating set of R, to check that an x : M falls in a
submodule M' of x, we only need to show that r ^ n • x ∈ M' for some n for each r : s.
3 : Ideal R is not the ideal generated by 3 (which would be spelt
Ideal.span {3}), it is simply 1 + 1 + 1 = ⊤.
An ideal is radical if it contains its radical.
Instances For
An ideal is radical iff it is equal to its radical.
Alias of the reverse direction of Ideal.radical_eq_iff.
An ideal is radical iff it is equal to its radical.
Ideal.radical as an InfTopHom, bundling in that it distributes over inf.
Equations
- Ideal.radicalInfTopHom = { toFun := Ideal.radical, map_inf' := ⋯, map_top' := ⋯ }
Instances For
The reverse inclusion does not hold for e.g. I := fun n : ℕ ↦ Ideal.span {(2 ^ n : ℤ)}.
Equations
The product of a finite number of elements in the commutative semiring R lies in the
prime ideal p if and only if at least one of those elements is in p.
If I divides J, then I contains J.
In a Dedekind domain, to divide and contain are equivalent, see Ideal.dvd_iff_le.
See also isUnit_iff_eq_one.
Equations
- Ideal.uniqueUnits = { default := 1, uniq := ⋯ }
A variant of Finsupp.linearCombination that takes in vectors valued in I.
Equations
Instances For
Associates (Ideal R) almost never has decidable equality.
We add a global instance that Associates (Ideal R) has decidable
equality, coming from the choice axiom, so that we don't have to provide
[DecidableEq (Associates (Ideal R))] arguments in lemma statements.
Equations
Associates (Ideal R) almost never has a decidable reducibility check.
We add a global instance that members of Associates (Ideal R) have decidable
reducibility, coming from the choice axiom, so that we don't have to provide
this as an arguments in lemma statements.
Equations
- Submodule.moduleSubmodule = { toSMul := Submodule.instSMul, mul_smul := ⋯, one_smul := ⋯, smul_zero := ⋯, smul_add := ⋯, add_smul := ⋯, zero_smul := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
Submonoid.map as an AlgHom, when applied to an AlgHom.
Equations
- Submodule.mapAlgHom f = { toRingHom := Submodule.mapHom f, commutes' := ⋯ }
Instances For
Submonoid.map as an AlgEquiv, when applied to an AlgEquiv.
Equations
- One or more equations did not get rendered due to their size.