Semiconjugate elements of a semigroup #
Main definitions #
We say that x is semiconjugate to y by a (SemiconjBy a x y), if a * x = y * a.
In this file we provide operations on SemiconjBy _ _ _.
In the names of these operations, we treat a as the “left” argument, and both x and y as
“right” arguments. This way most names in this file agree with the names of the corresponding lemmas
for Commute a b = SemiconjBy a b b. As a side effect, some lemmas have only _right version.
Lean does not immediately recognise these terms as equations, so for rewriting we need syntax like
rw [(h.pow_right 5).eq] rather than just rw [h.pow_right 5].
This file provides only basic operations (mul_left, mul_right, inv_right etc). Other
operations (pow_right, field inverse etc) are in the files that define corresponding notions.
If a semiconjugates a unit x to a unit y, then it semiconjugates x⁻¹ to y⁻¹.
If a semiconjugates an additive unit x to an additive unit y, then it
semiconjugates -x to -y.
If a unit a semiconjugates x to y, then a⁻¹ semiconjugates y to x.
If an additive unit a semiconjugates x to y, then -a semiconjugates y to
x.
a semiconjugates x to a * x * a⁻¹.
a semiconjugates x to a + x + -a.