Power operations on monoids and groups #
The power operation on monoids and groups.
We separate this from group, because it depends on ℕ,
which in turn depends on other parts of algebra.
This module contains lemmas about a ^ n and n • a, where n : ℕ or n : ℤ.
Further lemmas can be found in Algebra.GroupPower.Lemmas.
The analogous results for groups with zero can be found in Algebra.GroupWithZero.Power.
Notation #
a ^ nis used as notation forPow.pow a n; in this filen : ℕorn : ℤ.n • ais used as notation forSMul.smul n a; in this filen : ℕorn : ℤ.
Implementation details #
We adopt the convention that 0^0 = 1.
Commutativity #
First we prove some facts about SemiconjBy and Commute. They do not require any theory about
pow and/or nsmul and will be useful later in this file.
Monoids #
theorem
eq_zero_or_one_of_sq_eq_self
{M : Type u}
[CancelMonoidWithZero M]
{x : M}
(hx : x ^ 2 = x)
:
Commutative (additive) monoid #
abbrev
zsmul_zero.match_1
(motive : ℤ → Prop)
:
∀ (x : ℤ), (∀ (n : ℕ), motive (Int.ofNat n)) → (∀ (n : ℕ), motive (Int.negSucc n)) → motive x
Equations
- (_ : motive x) = (_ : motive x)
Instances For
@[simp]
theorem
AddCommute.zsmul_add
{α : Type u_1}
[SubtractionMonoid α]
{a : α}
{b : α}
(h : AddCommute a b)
(i : ℤ)
:
@[simp]
theorem
AddSemiconjBy.zsmul_right
{G : Type w}
[AddGroup G]
{a : G}
{x : G}
{y : G}
(h : AddSemiconjBy a x y)
(m : ℤ)
:
AddSemiconjBy a (m • x) (m • y)
@[simp]
theorem
SemiconjBy.zpow_right
{G : Type w}
[Group G]
{a : G}
{x : G}
{y : G}
(h : SemiconjBy a x y)
(m : ℤ)
:
SemiconjBy a (x ^ m) (y ^ m)
@[simp]
theorem
AddCommute.zsmul_right
{G : Type w}
[AddGroup G]
{a : G}
{b : G}
(h : AddCommute a b)
(m : ℤ)
:
AddCommute a (m • b)
@[simp]
theorem
AddCommute.zsmul_left
{G : Type w}
[AddGroup G]
{a : G}
{b : G}
(h : AddCommute a b)
(m : ℤ)
:
AddCommute (m • a) b
theorem
AddCommute.zsmul_zsmul
{G : Type w}
[AddGroup G]
{a : G}
{b : G}
(h : AddCommute a b)
(m : ℤ)
(n : ℤ)
:
AddCommute (m • a) (n • b)
theorem
AddCommute.zsmul_zsmul_self
{G : Type w}
[AddGroup G]
(a : G)
(m : ℤ)
(n : ℤ)
:
AddCommute (m • a) (n • a)