Non-zero divisors and smul-divisors #
In this file we define the submonoid nonZeroDivisors and nonZeroSMulDivisors of a
MonoidWithZero. We also define nonZeroDivisorsLeft and nonZeroDivisorsRight for
non-commutative monoids.
Notations #
This file declares the notations:
M₀⁰for the submonoid of non-zero-divisors ofM₀, in the localenonZeroDivisors.M₀⁰[M]for the submonoid of non-zero smul-divisors ofM₀with respect toM, in the localenonZeroSMulDivisors
Use the statement open scoped nonZeroDivisors nonZeroSMulDivisors to access this notation in
your own code.
The collection of elements of a MonoidWithZero that are not left zero divisors form a
Submonoid.
Equations
Instances For
Alias of notMem_nonZeroDivisorsLeft_iff.
The collection of elements of a MonoidWithZero that are not right zero divisors form a
Submonoid.
Equations
Instances For
Alias of notMem_nonZeroDivisorsRight_iff.
The notation for the submonoid of non-zero divisors.
Equations
- nonZeroDivisors.«term_⁰» = Lean.ParserDescr.trailingNode `nonZeroDivisors.«term_⁰» 9000 0 (Lean.ParserDescr.symbol "⁰")
Instances For
Let M₀ be a monoid with zero and M an additive monoid with an M₀-action, then the
collection of non-zero smul-divisors forms a submonoid.
These elements are also called M-regular.
Equations
Instances For
The notation for the submonoid of non-zero smul-divisors.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Alias of notMem_nonZeroDivisors_iff.
Alias of zero_notMem_nonZeroDivisors.
Equations
- instLeftCancelMonoidSubtypeMemSubmonoidNonZeroDivisorsOfIsLeftCancelMulZero = { toMonoid := (nonZeroDivisors M₀).toMonoid, mul_left_cancel := ⋯ }
Equations
- instRightCancelMonoidSubtypeMemSubmonoidNonZeroDivisorsOfIsRightCancelMulZero = { toMonoid := (nonZeroDivisors M₀).toMonoid, mul_right_cancel := ⋯ }
If an element maps to a non-zero-divisor via injective homomorphism, then it is a non-zero-divisor.
Alias of mem_nonZeroDivisors_of_injective.
If an element maps to a non-zero-divisor via injective homomorphism, then it is a non-zero-divisor.
Alias of comap_nonZeroDivisors_le_of_injective.
Canonical isomorphism between the non-zero-divisors and units of a group with zero.
Equations
- nonZeroDivisorsEquivUnits = { toFun := fun (u : ↥(nonZeroDivisors G₀)) => Units.mk0 ↑u ⋯, invFun := fun (u : G₀ˣ) => ⟨↑u, ⋯⟩, left_inv := ⋯, right_inv := ⋯, map_mul' := ⋯ }
Instances For
The non-zero •-divisors with • as right multiplication correspond with the non-zero
divisors. Note that the MulOpposite is needed because we defined nonZeroDivisors with
multiplication on the right.
The units of the monoid of non-zero divisors of M₀ are equivalent to the units of M₀.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The non-zero divisors of associates of a monoid with zero M₀ are isomorphic to the associates
of the non-zero divisors of M₀ under the map ⟨⟦a⟧, _⟩ ↦ ⟦⟨a, _⟩⟧.
Equations
- One or more equations did not get rendered due to their size.