The languages of a pseudovariety #
This file defines the languages of a pseudovariety: for a pseudovariety V of finite monoids, the
languages whose syntactic monoid lies in V, and for a pseudovariety of finite semigroups, the
languages whose syntactic semigroup lies in V. Over each alphabet these languages form a Boolean
algebra closed under quotients and inverse homomorphisms of free monoids, respectively free
semigroups. These are Eilenberg's *-varieties and +-varieties of languages.
Main definitions #
Monoid.Pseudovariety.langs,Semigroup.Pseudovariety.langs: the languages of a pseudovariety.Monoid.Pseudovariety.toBooleanSubalgebra: the languages ofVover an alphabet, as a Boolean subalgebra.
Main results #
Monoid.Pseudovariety.langs_of_recognizes,Semigroup.Pseudovariety.langs_of_recognizes: a language recognized by a member ofVlies inV.langs.langs_leftQuotient,langs_rightQuotient,langs_comapon both sides: closure under quotients and inverse homomorphisms.
Implementation notes #
A free semigroup has no erasing homomorphisms, so the semigroup side is closed only under inverse images of homomorphisms between free semigroups.
References #
The languages of a pseudovariety V are those whose syntactic monoid lies in V.
Equations
- V.langs L = V.mem L.SyntacticMonoid
Instances For
The languages of V are upward closed in the order of syntactic congruences.
A language recognized by a member of V lies in V.langs.
The languages of V are closed under inverse homomorphisms of free monoids.
The languages of V over α, as a Boolean subalgebra of Language α.
Equations
- V.toBooleanSubalgebra α = { carrier := {L : Language α | V.langs L}, supClosed' := ⋯, infClosed' := ⋯, compl_mem' := ⋯, bot_mem' := ⋯ }
Instances For
The languages of a pseudovariety V are those whose syntactic semigroup lies in V.
Equations
- V.langs L = V.mem L.SyntacticSemigroup
Instances For
The languages of V are upward closed in the order of syntactic congruences.
A language recognized by a member of V lies in V.langs.
The languages of V are closed under inverse homomorphisms of free semigroups. A free
semigroup has no erasing homomorphisms, which is the difference from the monoid case.