Multitier extensions of subregular classes #
The Boolean closure of tier-projected language families. For a class
๐ : Language ฮฑ โ Prop, the multitier closure IsBTC ๐ closes under finite
โ/โ/แถ the languages that are preimages of a ๐-language under some Boolean
tier projection.
Main definitions #
IsTierBased ๐โ preimages of๐-languages under a Boolean tier projection.IsBTC ๐โ the multitier closure: theBooleanSubalgebra.closureof the tier-projected family, with injectionsIsBTC.base/of_classand closure operationsIsBTC.inter/union/compl.IsBTSL/IsBTSP/IsBTD/IsBTK/IsBTLI/IsBTNโ its six specializations (strictly local, strictly piecewise, definite, reverse definite, generalized definite, finite-or-cofinite).IsBTC.Indistโ tier-indistinguishability, the congruence behind membership refutation.
Main results #
IsBTC.monoโ monotonicity in the base class.IsBTC.mem_iff_of_indistandnot_isBTC_of_indistโ membership respects tier-indistinguishability, yielding the standard non-membership argument.
Implementation notes #
IsTierBased/IsBTC.Indist quantify over Bool tiers T : ฮฑ โ Bool, avoiding an
โ T, โ _ : DecidablePred T, โฆ witness; the Prop-with-[DecidablePred] form used by
tierProject/TSLGrammar converts via T x โ tier x = true.
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.
Equations
- Language.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 subalgebra of
Language ฮฑ generated by the tier-projected family IsTierBased ๐.
Equations
- Language.IsBTC ๐ L = (L โ BooleanSubalgebra.closure {L' : Language ฮฑ | Language.IsTierBased ๐ L'})
Instances For
Base-class injection: a tier-based language lies in the closure.
Tier-based injection into the multitier closure: every
tier-based-for-๐ language is in IsBTC ๐.
Specializations #
One line each. Closure under intersection, union, and complement comes
from IsBTC.inter/union/compl; class injection from IsBTC.of_class.
Multitier strictly local (BTSL): Boolean closure of tier-projected SL_k languages.
Equations
- Language.IsBTSL k = Language.IsBTC fun (x : Language ฮฑ) => x.IsStrictlyLocal k
Instances For
Multitier strictly piecewise (BTSP): Boolean closure of tier-projected SP_k languages.
Equations
- Language.IsBTSP k = Language.IsBTC fun (x : Language ฮฑ) => x.IsStrictlyPiecewise k
Instances For
Multitier definite (BTD): Boolean closure of tier-projected D_k languages.
Equations
- Language.IsBTD k = Language.IsBTC fun (x : Language ฮฑ) => x.IsDefinite k
Instances For
Multitier reverse definite (BTK): Boolean closure of tier-projected RD_k languages.
Equations
- Language.IsBTK k = Language.IsBTC fun (x : Language ฮฑ) => x.IsReverseDefinite k
Instances For
Multitier generalized definite (BTLI): Boolean closure of tier-projected โโ_k languages.
Equations
- Language.IsBTLI k = Language.IsBTC fun (x : Language ฮฑ) => x.IsGeneralizedDefinite k
Instances For
Multitier finite-or-cofinite (BTN): Boolean closure of tier-projected co/finite languages.
Instances For
Cross-class inclusions #
Class containment lifts through the multitier construction: if ๐ โ ๐
pointwise, then IsBTC ๐ โ IsBTC ๐. Specializing the D_k โ โโ_k and
RD_k โ โโ_k inclusions yields BTD โ BTLI and BTK โ BTLI.
D_k โ โโ_k lifts to BTD_k โ BTLI_k.
RD_k โ โโ_k lifts to BTK_k โ BTLI_k.
TSL โ multitier SL #
TSL_k โ BTSL_k: every tier-based strictly local language is in the
multitier closure of strictly local languages. A TSLGrammar witness presents
its language as the preimage of an SL language under the tier projection, hence
IsTierBased (Language.IsStrictlyLocal ยท k), hence in the closure via
IsBTC.base.
Indistinguishability framework for refuting IsBTC membership #
Standard 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. The
IsGeneralizedDefinite k specialization โ sharing length-k prefix-and-suffix
on every tier projection (indist_isGenDef_of_tierAffixes) โ is the common case.
Two words are ๐-tier-indistinguishable iff under every Bool tier
projection, every ๐-language assigns them the same membership.
Equations
- Language.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. Induction on the closure: mem is the defining property
of Indist; bot/sup/compl lift via Iff.rfl/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 (Language.IsGeneralizedDefinite ยท k) โ the standard specialization
for refuting IsBTLI k membership, reducing it to a Bool-tier-parameterised
pair of affix equalities.