Action of regular elements on a module #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
We introduce M
-regular elements, in the context of an R
-module M
. The corresponding
predicate is called is_smul_regular
.
There are very limited typeclass assumptions on R
and M
, but the "mathematical" case of interest
is a commutative ring R
acting an a module M
. Since the properties are "multiplicative", there
is no actual requirement of having an addition, but there is a zero in both R
and M
.
Smultiplications involving 0
are, of course, all trivial.
The defining property is that an element a ∈ R
is M
-regular if the smultiplication map
M → M
, defined by m ↦ a • m
, is injective.
This property is the direct generalization to modules of the property is_left_regular
defined in
algebra/regular
. Lemma is_smul_regular.is_left_regular_iff
shows that indeed the two notions
coincide.
An M
-regular element is an element c
such that multiplication on the left by c
is an
injective map M → M
.
Equations
Left-regular multiplication on R
is equivalent to R
-regularity of R
itself.
Right-regular multiplication on R
is equivalent to Rᵐᵒᵖ
-regularity of R
itself.
The product of M
-regular elements is M
-regular.
If an element b
becomes M
-regular after multiplying it on the left by an M
-regular
element, then b
is M
-regular.
An element is M
-regular if and only if multiplying it on the left by an M
-regular element
is M
-regular.
Two elements a
and b
are M
-regular if and only if both products a * b
and b * a
are M
-regular.
One is M
-regular always.
An element of R
admitting a left inverse is M
-regular.
Any power of an M
-regular element is M
-regular.
An element a
is M
-regular if and only if a positive power of a
is M
-regular.
An element of S
admitting a left inverse in R
is M
-regular.
The element 0
is M
-regular if and only if M
is trivial.
The element 0
is M
-regular if and only if M
is trivial.
The 0
element is not M
-regular, on a non-trivial module.
The element 0
is M
-regular when M
is trivial.
The 0
element is not M
-regular, on a non-trivial module.
A product is M
-regular if and only if the factors are.
An element of a group acting on a Type is regular. This relies on the availability
of the inverse given by groups, since there is no left_cancel_smul
typeclass.
Any element in Rˣ
is M
-regular.
A unit is M
-regular.