Jardine (2019): the expressivity of autosegmental grammars #
[Jar19] defines ASL^g — stringsets given by forbidden-subgraph grammars over
autosegmental representations interpreted through a realization g — and places the
tone class ASL^{gT} in the subregular hierarchy. This file defines the class on
the graph foundation, instantiates it with the tone realization gT, and checks
banned-subgraph constraints over its realizations.
Scope #
Two realizations are checked, against the same forbidden tone melody *HLH:
Autosegmental.AR.realizeuses the project's bridge-onlyconcat(the coproduct), so anH-plateauHⁿstaysnseparateHnodes. Banning*HLHoverAR.realizethen catches only a localH-L-H(three adjacent tonal nodes) —hlh_excluded.Autosegmental.AR.realizeMerged(OCP.lean) is [Jar19]'s OCP-mergingg_T:g_T(Hⁿ)is a singleHnode multiply associated. Banning*HLHoverAR.realizeMergedbecomes genuinely non-local — it forbidsH⁺ L⁺ H⁺for any plateau widths, because the plateaus collapse to single nodes before the melody is read (hlhTier_merged_excludes_plateauvshlhTier_unmerged_admits_plateau).
Subregular placement #
[Jar19] places the bridge-only class ASL strictly inside the star-free
languages. We prove the link-free fragment: when no forbidden subgraph carries
association lines, ASL g₀ B is star-free (AR.ASL.isStarFree_of_link_free)
— over any alphabet, no [Finite S] needed — because such a grammar is a Boolean
combination of per-tier factor constraints, each the inverse image of a star-free
contains-factor language ([Sch65] [McNP71]) along a tier
projection. The *HLH tonal-tier melody hlhTier is one such constraint
(hlhTier_isStarFree).
The genuinely autosegmental case — links coupling the two tiers — is deeper: a forbidden subgraph can match with an unlinked run-end arbitrarily far from its linked core, so a bounded sliding-window scanner over the realization is unsound; a two-tape synchronising aperiodic recognizer is needed, and is left to future work.
The relation-level L = ASL^{gT} equivalences ([Jar19]) remain future work.
The star-free placement in coordinates #
The Autosegmental Strictly Local stringset ASL^g: strings whose realization
avoids every forbidden factor. It is the same construction as the tier-based
strictly local sets — a preimage of a local condition along a free-monoid
homomorphism (TSL = tierProject ⁻¹' SL); the association structure AR.realize
keeps is why [Jar19] finds the two classes incomparable.
Equations
- Autosegmental.AR.ASL g₀ B = {w : List S | Autosegmental.AR.Free (Autosegmental.AR.realize g₀ w) B}
Instances For
For a single link-free forbidden factor, the strings whose realization contains it form a star-free language: the finite intersection of per-tier factor constraints, each the inverse image of a star-free contains-factor language along a tier projection.
Link-free autosegmental SL sets are star-free, on the graph foundation:
when no forbidden factor carries association lines, AR.ASL is
a Boolean combination of per-tier factor constraints.
Equations
- Jardine2019.instDecidableEqToneSym x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Jardine2019.instReprToneSym = { reprPrec := Jardine2019.instReprToneSym.repr }
Equations
- Jardine2019.instReprToneSym.repr Jardine2019.ToneSym.H prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Jardine2019.ToneSym.H")).group prec✝
- Jardine2019.instReprToneSym.repr Jardine2019.ToneSym.L prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Jardine2019.ToneSym.L")).group prec✝
- Jardine2019.instReprToneSym.repr Jardine2019.ToneSym.F prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Jardine2019.ToneSym.F")).group prec✝
Instances For
Equations
- Jardine2019.instDecidableEqMora x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Jardine2019.instReprMora.repr Jardine2019.Mora.μ prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Jardine2019.Mora.μ")).group prec✝
Instances For
Equations
- Jardine2019.instReprMora = { reprPrec := Jardine2019.instReprMora.repr }
Two-tier tone representations (melody over true, morae over false).
Equations
- Jardine2019.TRep = Autosegmental.AR Sigma.fst
Instances For
Link presentations from finite pair lists.
Equations
- Jardine2019.mkL links i j p q = (i = true ∧ j = false ∧ (p, q) ∈ links)
Instances For
Equations
- Jardine2019.instDecidableMkL links i j p q = Jardine2019.instDecidableMkL._aux_1 links i j p q
Build a representation from a tone melody, morae, and links.
Equations
- Jardine2019.mk tones moras links = Autosegmental.AR.ofData (fun (b : Bool) => match b with | true => tones | false => moras) (Jardine2019.mkL links)
Instances For
The forbidden subgraph *HLH ([Jar19] (3)): an H-L-H tone
sequence, three tones each on their own mora.
Equations
- Jardine2019.hlh = Jardine2019.mk [Jardine2019.ToneSym.H, Jardine2019.ToneSym.L, Jardine2019.ToneSym.H] [Jardine2019.Mora.μ, Jardine2019.Mora.μ, Jardine2019.Mora.μ] [(0, 0), (1, 1), (2, 2)]
Instances For
The bridge-only realization: local *HLH #
The realization of a tone string under the bridge-only tensor is, in flattened
presentation, the diagonal literal — one tone per mora (gT (23), with F an
H-L contour). The *HLH verdicts compute through the data-level checker.
HL is admitted (no H-L-H).
The constraint reaches inside longer strings: HHLH is excluded (the
medial H-L-H realizes the forbidden subgraph).
The OCP-merging realization: non-local tone plateauing #
[Jar19]'s g_T is OCP-merging: an H-plateau Hⁿ fuses to a single
H node (AR.collapse). Against the merged forms we ban the
tonal-tier melody *HLH — adjacent tonal nodes, morae unconstrained —
which is where merging buys non-local power: H⁺ L⁺ H⁺ is excluded for any
plateau widths, because the plateaus collapse first.
The forbidden tonal-tier melody *HLH: no morae pinned, no links.
Equations
Instances For
LHHLH is excluded under merging: the HH-plateau fuses, the tone tier
reads L-H-L-H, and the medial H-L-H melody appears.
The non-local power merging buys: the unbounded plateau HH-LL-HH
fuses to tone tier H-L-H, so the melody appears — at any widths.
The same string unmerged is admitted: the plateaus stay apart, the tone
tier reads H-H-L-L-H-H, and no three adjacent nodes spell H-L-H. The
contrast with hlhTier_merged_excludes_plateau is exactly the non-local
expressivity OCP merging adds.
The *HLH tonal-tier melody set is star-free: hlhTier carries no
links, so any grammar built from it falls in the link-free fragment
(AR.ASL.isStarFree_of_link_free) — a concrete instance of
[Jar19]'s ASL ⊊ SF placement.