Centralizers in semigroups, as subsemigroups. #
Main definitions #
Subsemigroup.centralizer
: the centralizer of a subset of a semigroupAddSubsemigroup.centralizer
: the centralizer of a subset of an additive semigroup
We provide Monoid.centralizer
, AddMonoid.centralizer
, Subgroup.centralizer
, and
AddSubgroup.centralizer
in other files.
The centralizer of a subset of a semigroup M
.
Equations
- Subsemigroup.centralizer S = { carrier := S.centralizer, mul_mem' := ⋯ }
Instances For
The centralizer of a subset of an additive semigroup.
Equations
- AddSubsemigroup.centralizer S = { carrier := S.addCentralizer, add_mem' := ⋯ }
Instances For
@[simp]
theorem
Subsemigroup.coe_centralizer
{M : Type u_1}
(S : Set M)
[Semigroup M]
:
↑(Subsemigroup.centralizer S) = S.centralizer
@[simp]
theorem
AddSubsemigroup.coe_centralizer
{M : Type u_1}
(S : Set M)
[AddSemigroup M]
:
↑(AddSubsemigroup.centralizer S) = S.addCentralizer
instance
Subsemigroup.decidableMemCentralizer
{M : Type u_1}
{S : Set M}
[Semigroup M]
(a : M)
[Decidable (∀ b ∈ S, b * a = a * b)]
:
Equations
- Subsemigroup.decidableMemCentralizer a = decidable_of_iff' (∀ g ∈ S, g * a = a * g) ⋯
instance
AddSubsemigroup.decidableMemCentralizer
{M : Type u_1}
{S : Set M}
[AddSemigroup M]
(a : M)
[Decidable (∀ b ∈ S, b + a = a + b)]
:
Equations
- AddSubsemigroup.decidableMemCentralizer a = decidable_of_iff' (∀ g ∈ S, g + a = a + g) ⋯
@[simp]
theorem
Subsemigroup.centralizer_eq_top_iff_subset
{M : Type u_1}
[Semigroup M]
{s : Set M}
:
Subsemigroup.centralizer s = ⊤ ↔ s ⊆ ↑(Subsemigroup.center M)
@[simp]
theorem
AddSubsemigroup.centralizer_eq_top_iff_subset
{M : Type u_1}
[AddSemigroup M]
{s : Set M}
:
AddSubsemigroup.centralizer s = ⊤ ↔ s ⊆ ↑(AddSubsemigroup.center M)
@[simp]
theorem
Subsemigroup.centralizer_univ
(M : Type u_1)
[Semigroup M]
:
Subsemigroup.centralizer Set.univ = Subsemigroup.center M
@[simp]
theorem
AddSubsemigroup.centralizer_univ
(M : Type u_1)
[AddSemigroup M]
:
AddSubsemigroup.centralizer Set.univ = AddSubsemigroup.center M
theorem
AddSubsemigroup.closure_le_centralizer_centralizer
{M : Type u_1}
[AddSemigroup M]
(s : Set M)
:
@[reducible, inline]
abbrev
AddSubsemigroup.closureAddCommSemigroupOfComm
(M : Type u_1)
[AddSemigroup M]
{s : Set M}
(hcomm : ∀ a ∈ s, ∀ b ∈ s, a + b = b + a)
:
If all the elements of a set s
commute, then closure s
forms an additive
commutative semigroup.