Centralizers of magmas and monoids #
Main definitions #
Submonoid.centralizer: the centralizer of a subset of a monoidAddSubmonoid.centralizer: the centralizer of a subset of an additive monoid
We provide Subgroup.centralizer, AddSubgroup.centralizer in other files.
The centralizer of a subset of a monoid M.
Equations
- Submonoid.centralizer S = { carrier := S.centralizer, mul_mem' := ⋯, one_mem' := ⋯ }
Instances For
The centralizer of a subset of an additive monoid.
Equations
- AddSubmonoid.centralizer S = { carrier := S.addCentralizer, add_mem' := ⋯, zero_mem' := ⋯ }
Instances For
@[simp]
@[simp]
@[implicit_reducible]
instance
Submonoid.decidableMemCentralizer
{M : Type u_1}
{S : Set M}
[Monoid M]
(a : M)
[Decidable (∀ b ∈ S, b * a = a * b)]
:
Decidable (a ∈ centralizer S)
Equations
- Submonoid.decidableMemCentralizer a = decidable_of_iff' (∀ g ∈ S, g * a = a * g) ⋯
@[implicit_reducible]
instance
AddSubmonoid.decidableMemCentralizer
{M : Type u_1}
{S : Set M}
[AddMonoid M]
(a : M)
[Decidable (∀ b ∈ S, b + a = a + b)]
:
Decidable (a ∈ centralizer S)
Equations
- AddSubmonoid.decidableMemCentralizer a = decidable_of_iff' (∀ g ∈ S, g + a = a + g) ⋯
@[simp]
@[simp]
@[simp]
@[simp]
@[reducible, inline, deprecated Submonoid.isMulCommutative_closure (since := "2026-03-09")]
abbrev
Submonoid.closureCommMonoidOfComm
(M : Type u_1)
[Monoid M]
{s : Set M}
(hcomm : ∀ a ∈ s, ∀ b ∈ s, a * b = b * a)
:
CommMonoid ↥(closure s)
If all the elements of a set s commute, then closure s is a commutative monoid.
Equations
Instances For
@[reducible, inline, deprecated Submonoid.isMulCommutative_closure (since := "2026-03-09")]
abbrev
AddSubmonoid.closureAddCommMonoidOfComm
(M : Type u_1)
[AddMonoid M]
{s : Set M}
(hcomm : ∀ a ∈ s, ∀ b ∈ s, a + b = b + a)
:
AddCommMonoid ↥(closure s)
If all the elements of a set s commute, then closure s forms an additive
commutative monoid.
Equations
Instances For
instance
Submonoid.instIsMulCommutative_closure
(M : Type u_1)
[Monoid M]
{S : Type u_2}
[SetLike S M]
[MulMemClass S M]
(s : S)
[IsMulCommutative ↥s]
:
IsMulCommutative ↥(closure ↑s)
instance
AddSubmonoid.instIsAddCommutative_closure
(M : Type u_1)
[AddMonoid M]
{S : Type u_2}
[SetLike S M]
[AddMemClass S M]
(s : S)
[IsAddCommutative ↥s]
:
IsAddCommutative ↥(closure ↑s)