Multitier Extensions of Subregular Classes #
Generic Boolean closure of tier-projected language families @cite{lambert-2022} @cite{lambert-2026}. The construction proceeds in two stages:
- Tier-projected family
IsTierBased ๐ L:Lis the preimage under some Boolean tier predicate of a language in๐. - Boolean closure
BoolClosure ๐ L:Lis built from members of๐via finite intersection, union, and complement.
Composing the two: IsBTC ๐ := BoolClosure (IsTierBased ๐) is the
multitier (Boolean tier-projected) closure of ๐. Specializing
yields the six classes Lambert (2026) tabulates:
IsBTSLโ multitier strictly localIsBTSPโ multitier strictly piecewiseIsBTDโ multitier definite (e.g. Uyghur backness harmony per @cite{lambert-2026} ยง4.3, refining @cite{mayer-major-2018})IsBTKโ multitier reverse definiteIsBTLIโ multitier generalized definite (e.g. Karanga Shona tone per @cite{lambert-2026} ยง5.6, refining @cite{jardine-2020})IsBTNโ multitier finite-or-cofinite (e.g. culminativity)
Architecture #
A single generic BoolClosure : (Language ฮฑ โ Prop) โ Language ฮฑ โ Prop
operator pays for itself across the six specializations and across other
"closure-of-X" patterns elsewhere in linglib (IsLocallyTestable is
arguably another instance, though kept structurally distinct for now).
The mathlib analogue is Probability.Kernel.Defs general +
Probability.Kernel.Deterministic specialized โ generic operator at the
top, one-line abbreviations downstream.
Tier representation: Bool, not Prop+DecidablePred #
IsTierBased quantifies over tier predicates T : ฮฑ โ Bool. The Bool
choice avoids the awkward โ T, โ _ : DecidablePred T, โฆ quantifier
shape and gives a decidable filter operation by construction. The
existing tierProject (taking T : ฮฑ โ Prop with [DecidablePred T])
is recoverable via tierProject T = (ยท.filter (decide โ T)); the bridge
to TSLGrammar lives in Tier.lean.
Decidability #
IsBTC ๐ is a Prop-valued classifier; deciding membership of a
specific language requires a finite witness (an automaton, a syntactic
monoid). The decidability story lives in a separate DFA.isBTC style
classifier, deferred to PR-3+.
Boolean closure of a language class #
The Boolean closure of a class of languages ๐: the smallest
predicate containing ๐ and closed under finite intersection, union,
and complement. Free of base-class assumptions; the closure is empty
iff ๐ is empty.
Constructors are the closure operations themselves; derived stability lemmas (top, bot, sdiff, finite intersections, โฆ) live below or follow mechanically from the four primitives.
- base
{ฮฑ : Type u_1}
{๐ : Language ฮฑ โ Prop}
{L : Language ฮฑ}
: ๐ L โ BoolClosure ๐ L
Languages in the base class are in the closure.
- inter
{ฮฑ : Type u_1}
{๐ : Language ฮฑ โ Prop}
{Lโ Lโ : Language ฮฑ}
: BoolClosure ๐ Lโ โ BoolClosure ๐ Lโ โ BoolClosure ๐ (Lโ โ Lโ)
Pairwise intersection (lattice
โ, equiv.Set.intervia theCompleteAtomicBooleanAlgebrainstance derived in mathlib'sLanguage). - union
{ฮฑ : Type u_1}
{๐ : Language ฮฑ โ Prop}
{Lโ Lโ : Language ฮฑ}
: BoolClosure ๐ Lโ โ BoolClosure ๐ Lโ โ BoolClosure ๐ (Lโ โ Lโ)
Pairwise union (lattice
โ; mathlib'sLanguagederives the Boolean algebra, soโis union and+is the same operation under the Kleene algebra alias). - compl
{ฮฑ : Type u_1}
{๐ : Language ฮฑ โ Prop}
{L : Language ฮฑ}
: BoolClosure ๐ L โ BoolClosure ๐ Lแถ
Complement (Boolean algebra
แถ).
Instances For
The Boolean closure is monotone in the base class: enlarging ๐
enlarges the closure.
Tier-based language families #
A language L is tier-based for class ๐ iff there is some
Boolean tier predicate T : ฮฑ โ Bool and some L' : Language ฮฑ with
L' in ๐ such that L is the preimage of L' under projection by
T: w โ L โ w.filter T โ L'.
The Bool tier shape is the existence-friendly form (no instance
quantifier issues). For the Prop+DecidablePred form used by
tierProject and TSLGrammar, convert via T x โ tier x = true
(see Tier.lean's TSLGrammar.ofByClass adapter).
Equations
- Core.Computability.Subregular.IsTierBased ๐ L = โ (T : ฮฑ โ Bool) (L' : Language ฮฑ), L = {w : List ฮฑ | List.filter T w โ L'} โง ๐ L'
Instances For
Class injection: every ๐-language is tier-based for ๐ via the
universal-true tier (no symbols erased). The witness is T = fun _ => true
and L' = L.
Monotonicity in the base class.
Multitier (Boolean tier-projected) closure #
The multitier closure of a class ๐: the Boolean closure of the
tier-projected family. Lambert's B(TC) notation.
Equations
Instances For
Class injection into the multitier closure: every ๐-language
is in IsBTC ๐. Composed of IsTierBased.of_class (universal tier)
and BoolClosure.base.
Tier-based injection into the multitier closure: every
tier-based-for-๐ language is in IsBTC ๐.
Specializations: Lambert (2026) Table 6 #
One line each. Closure under intersection, union, and complement comes
from BoolClosure's constructors; class injection from
IsBTC.of_class.
Multitier strictly local (BTSL): Boolean closure of tier-projected SL_k languages.
Equations
Instances For
Multitier strictly piecewise (BTSP): Boolean closure of tier-projected SP_k languages.
Equations
Instances For
Multitier definite (BTD): Boolean closure of tier-projected D_k languages. Lambert (2026) ยง4.3 places Uyghur backness harmony in this class โ strictly stronger than the multiple-tier-based strictly-local class of @cite{de-santo-graf-2019}.
Equations
Instances For
Multitier reverse definite (BTK): Boolean closure of tier-projected RD_k languages.
Equations
Instances For
Multitier generalized definite (BTLI): Boolean closure of tier-projected โโ_k languages. Lambert (2026) ยง5.6 places Karanga Shona tone in this class (verb-stem domain) โ refining @cite{jardine-2020}.
Equations
Instances For
Multitier finite-or-cofinite (BTN): Boolean closure of tier-projected co/finite languages. Captures culminativity-style constraints when projected to the stress tier.
Equations
Instances For
Cross-class inclusions #
Class containment lifts through the multitier construction: if ๐ โ ๐
pointwise, then IsBTC ๐ โ IsBTC ๐. Specializing yields the standard
inclusions BTSL โ BTSP, BTD โ BTLI, BTK โ BTLI, BTN โ BTLI (per Lambert
(2026) Table 6 and the ยง2.4 small hierarchy diagram).
D_k โ โโ_k lifts to BTD_k โ BTLI_k.
RD_k โ โโ_k lifts to BTK_k โ BTLI_k.
Bridge: TSL โ tier-based SL #
TSL_k = IsTierBased (IsStrictlyLocal k). The
TSLGrammar-witnessed predicate IsTierStrictlyLocal and the generic
preimage-of-SL predicate IsTierBased โ IsStrictlyLocal are co-extensive
on Language ฮฑ. The bridge gives every existing IsTierStrictlyLocal
witness a free IsBTSL corollary via BoolClosure.base.
TSL_k โ BTSL_k: every tier-based strictly local language is in
the multitier closure of strictly local languages. Combines the bridge
with BoolClosure.base.
Indistinguishability framework for refuting IsBTC membership #
Standard mathematical technique for L โ IsBTC ๐: exhibit two words
wโ, wโ that are ๐-tier-indistinguishable (every ๐-language under
every Bool tier projection assigns them the same membership) but differ
in L-membership. Lambert (2026) ยง4.2 (Tsuut'ina) and ยง5.1 (Luganda)
both use this technique with the specialization for
IsGeneralizedDefinite k (sharing length-k prefix-and-suffix on every
tier projection โ see indist_isGenDef_of_tierAffixes).
Two words are ๐-tier-indistinguishable iff under every Bool tier
projection, every ๐-language assigns them the same membership.
Equations
- Core.Computability.Subregular.IsBTC.Indist ๐ wโ wโ = โ (T : ฮฑ โ Bool) (L' : Language ฮฑ), ๐ L' โ (List.filter T wโ โ L' โ List.filter T wโ โ L')
Instances For
Tier-indistinguishability transports through the Boolean closure:
wโ and wโ ๐-tier-indistinguishable implies same membership in every
IsBTC ๐-language. Proof by induction on BoolClosure: base is the
defining property of Indist; inter/union/compl lift via
and_congr/or_congr/not_congr.
Refutation lemma: if wโ โ L and wโ โ L but wโ and wโ are
๐-tier-indistinguishable, then L โ IsBTC ๐.
Shared length-k prefix-and-suffix on every Bool-tier projection
implies IsBTC.Indist (IsGeneralizedDefinite k). This is the standard
specialization Lambert (2026) ยง4.2 / ยง5.1 use for refuting IsBTLI k
membership: producing two words with matching tier-affixes on every
tier reduces to providing a Bool-tier-parameterised pair of equalities.