Monoid division and local divisors #
MonoidDivides M N—Mis a quotient of a submonoid ofN;MonoidDivides.transshows division is transitive.LocalDivisor M c— the local divisorM_cofMatc: the setcM ∩ Mcwith the productx ∘ y = x · y₀fory = c · y₀and identityc, with itsMonoidandFiniteinstances;LocalDivisor.localDividesshowsM_cdividesM.
References #
- [V. Diekert, M. Kufleitner, B. Steinberg, The Krohn–Rhodes Theorem and Local Divisors, Fundamenta Informaticae 116 (2012); arXiv:1111.1585]
Monoid division #
A monoid M divides a monoid N if M is a quotient of a submonoid of N.
Equivalently, there exists a surjective monoid homomorphism from a submonoid of N onto M.
Equations
- LeanPool.KrohnRhodes.MonoidDivides M N = ∃ (S : Submonoid N) (φ : ↥S →* M), Function.Surjective ⇑φ
Instances For
Monoid division is transitive. If M ≼ N (witnessed by S ≤ N, φ : S ↠ M) and
N ≼ P (witnessed by T ≤ P, ψ : T ↠ N), then M ≼ P. The witnessing submonoid of P is
the image under T ↪ P of the pre-image ψ⁻¹(S) ≤ T; the surjection is φ ∘ (ψ restricted) ∘ (the submonoid iso). This is the standard composition of "quotient of a submonoid"
relations.
The local divisor M_c = cM ∩ Mc #
For c ∈ M, the local divisor (Diekert–Kufleitner–Steinberg) is
M_c := cM ∩ Mc, with the twisted productx ∘ y := x · y₀(anyy₀withy = c·y₀), identityc.
The twisted product is well-defined because for x ∈ Mc and y = c·y₀ the value x·y₀ does
not depend on the choice of y₀. M_c divides M (localDivides). This is the larger
local divisor described in DKS Section 2.5; their decomposition uses the potentially smaller
submonoid cMc ∪ {c}.
The underlying element of M of a local-divisor element.
Instances For
The twisted product x ∘ y = x · y₀ where y = c · y₀ (the value is independent of the
choice of y₀, by x ∈ Mc). Implemented via Classical.choose of the left-membership of y.
Equations
- LeanPool.KrohnRhodes.LocalDivisor.instMul = { mul := fun (x y : LeanPool.KrohnRhodes.LocalDivisor M c) => ⟨x.val * Classical.choose ⋯, ⋯⟩ }
The defining identity for the product: if y.val = c * y₀ for any y₀, then
(x * y).val = x.val * y₀. (Independence of the chosen witness, using x.val ∈ Mc.)
The identity element of the local divisor is c itself (c = c*1 = 1*c ∈ cM ∩ Mc).
Equations
- One or more equations did not get rendered due to their size.
The local divisor is finite when M is (it is a subtype of M).
The local divisor M_c divides M. The witnessing submonoid is
S = {t : M | c·t ∈ Mc} (so that c·t ∈ cM ∩ Mc), and the surjection is γ(t) = c·t.
This is a monoid homomorphism for the twisted product, and every x ∈ cM ∩ Mc is γ(a) for the
witness a of x ∈ cM.