Tier-based strictly local languages (TSL_k) #
A language is tier-based strictly k-local when its membership is determined by
SL_k membership of its projection onto a tier — a decidable subalphabet T.
Off-tier symbols are erased before the SL_k test, so the constraint applies to
tier-adjacent factors while arbitrary off-tier material may intervene.
Main definitions #
tierProject T: keep the symbols satisfyingT, erase the rest. ThebyClassspecialization of the keystoneTierProjection.apply(Subregular.TierProjection).TSLGrammar k α: a decidable tier together with anSL_kgrammar read on the projection.IsTierStrictlyLocal k L:Lis generated by someTSLGrammar k α.
Main results #
Language.IsStrictlyLocal.toIsTierStrictlyLocal:SL_k ⊆ TSL_k, via the universal tier (projection is the identity).
Tier projection: keep the symbols satisfying the tier predicate T,
erase the rest. The single-alphabet byClass specialization of the keystone
erasing string homomorphism TierProjection.apply
(Subregular.TierProjection), so the autosegmental and subregular
tiers are one definition rather than two joined by a bridge.
Equations
- Subregular.tierProject T xs = (TierProjection.byClass T).apply xs
Instances For
tierProject reduces to List.filter (via TierProjection.apply_byClass).
Projection by the universal tier is the identity.
A tier-based strictly k-local grammar: a decidable tier (subset
of α) plus an SL grammar interpreted on the projected string. The tier
predicate is carried as an instance field via [DecidablePred tier] so
projection at use sites picks up the decidability automatically.
- tier : α → Prop
The membership predicate selecting which symbols stay on the tier. Symbols failing
tierare erased before the SL test. - decTier : DecidablePred self.tier
Decidability of
tier, needed to define projection. - permitted : SLGrammar α
The
SLgrammar read on the projected string: its permitted factors.
Instances For
The language generated by a TSL grammar: the preimage, under tier
projection, of the SL_k language of permitted.
Equations
- G.lang = Subregular.tierProject G.tier ⁻¹' SLGrammar.language k G.permitted
Instances For
A language is tier-based strictly k-local iff some
TSLGrammar k α generates it.
Equations
- Language.IsTierStrictlyLocal k L = ∃ (G : Subregular.TSLGrammar k α), G.lang = L
Instances For
The language of a TSLGrammar is tier-based strictly local: the
introduction rule for Language.IsTierStrictlyLocal.
Inclusions #
SL_k ⊆ TSL_k: take the universal tier (every symbol on tier), so
projection is the identity and the TSL grammar's lang reduces to the
underlying SL grammar's lang.
Tier erasure as a monoid hom, and star-freeness #
Tier erasure as a monoid hom FreeMonoid α →* FreeMonoid α: the byClass T
specialization of the keystone bundled hom TierProjection.applyHom. The monoid-hom laws
are inherited from applyHom rather than re-proved, since tierProject T is by definition
TierProjection.apply (TierProjection.byClass T).
Equations
Instances For
Tier-based strictly local languages are star-free ([HRT11]). Over a
finite alphabet, a TSL language is the inverse image of an SL_k language under the
tier-erasure homomorphism, and star-freeness is closed under inverse homomorphism
(IsStarFree.comap), so TSL_k ⊆ SF.