Lamont, O'Hara and Smith (2019): Weakly deterministic transformations are subregular #
Unbounded tonal plateauing turns every toneless unit between two high tones into a high tone, so the fate of a target depends on material unboundedly far away on both sides. Heinz and Lai, and Jardine after them, conjectured that such maps are not weakly deterministic. Lamont, O'Hara and Smith show that plateauing is weakly deterministic in Heinz and Lai's sense (Figure 1). A left-to-right pass that preserves length and alphabet rewrites every HLH as HHH, so that HLH never survives it, and then writes HLH as a code for an H with another H to its left; a right-to-left pass decodes it.
Main definitions #
markLeft,resolveRight: the transducers A and B of Figure 1
Main results #
utp_map_eq_resolve_mark: B after A computes plateauinglength_markLeft_run: A preserves lengthutp_isWeaklyDeterministic: plateauing is weakly deterministic
Implementation notes #
- A toneless unit is
Tone.TBU.O, the paper's L. SinceSubsequentialTransducer.runRightreverses the run, B's blocks are written reversed. The figure gives B no H transition fromq4; A never writes an H there, and B keeps it. - The proof splits a word into Ls, an H, blocks
Lʲ H, and Ls. A writes each block as H, HH orLʲ⁻² HLH, and B, reading right to left, holds back at most one H. - Not formalized: §2, where first-last plateauing and double-edged spread are shown regular but not weakly deterministic by a counting argument, and the characterization of Theorem 3.1.
References #
The transducers #
Equations
- LamontOHaraSmith2019.instDecidableEqMarkState x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
The transitions of A.
Equations
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q0 Tone.TBU.O = LamontOHaraSmith2019.MarkState.q0
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q0 Tone.TBU.H = LamontOHaraSmith2019.MarkState.q1
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q1 Tone.TBU.H = LamontOHaraSmith2019.MarkState.q1
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q1 Tone.TBU.O = LamontOHaraSmith2019.MarkState.q2
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q2 Tone.TBU.H = LamontOHaraSmith2019.MarkState.q1
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q2 Tone.TBU.O = LamontOHaraSmith2019.MarkState.q3
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q3 Tone.TBU.O = LamontOHaraSmith2019.MarkState.q3
- LamontOHaraSmith2019.markStep LamontOHaraSmith2019.MarkState.q3 Tone.TBU.H = LamontOHaraSmith2019.MarkState.q1
Instances For
The blocks A writes.
Equations
- LamontOHaraSmith2019.markOutput LamontOHaraSmith2019.MarkState.q0 x✝ = [x✝]
- LamontOHaraSmith2019.markOutput LamontOHaraSmith2019.MarkState.q1 Tone.TBU.H = [Tone.TBU.H]
- LamontOHaraSmith2019.markOutput LamontOHaraSmith2019.MarkState.q1 Tone.TBU.O = []
- LamontOHaraSmith2019.markOutput LamontOHaraSmith2019.MarkState.q2 Tone.TBU.H = [Tone.TBU.H, Tone.TBU.H]
- LamontOHaraSmith2019.markOutput LamontOHaraSmith2019.MarkState.q2 Tone.TBU.O = []
- LamontOHaraSmith2019.markOutput LamontOHaraSmith2019.MarkState.q3 Tone.TBU.O = [Tone.TBU.O]
- LamontOHaraSmith2019.markOutput LamontOHaraSmith2019.MarkState.q3 Tone.TBU.H = [Tone.TBU.H, Tone.TBU.O, Tone.TBU.H]
Instances For
What A writes at the end of the word, the Ls it holds back.
Equations
Instances For
Transducer A of Figure 1, the left-to-right pass.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Reading right to left, B is in q0 before any H, in q1 holding back an H, in q2 holding
back an L and an H, in q3 inside a plateau, and in q4 past the last code.
- q0 : ResolveState
- q1 : ResolveState
- q2 : ResolveState
- q3 : ResolveState
- q4 : ResolveState
Instances For
Equations
- LamontOHaraSmith2019.instDecidableEqResolveState x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
The transitions of B.
Equations
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q0 Tone.TBU.O = LamontOHaraSmith2019.ResolveState.q0
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q0 Tone.TBU.H = LamontOHaraSmith2019.ResolveState.q1
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q1 Tone.TBU.H = LamontOHaraSmith2019.ResolveState.q1
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q1 Tone.TBU.O = LamontOHaraSmith2019.ResolveState.q2
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q2 Tone.TBU.O = LamontOHaraSmith2019.ResolveState.q4
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q2 Tone.TBU.H = LamontOHaraSmith2019.ResolveState.q3
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q3 Tone.TBU.O = LamontOHaraSmith2019.ResolveState.q3
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q3 Tone.TBU.H = LamontOHaraSmith2019.ResolveState.q1
- LamontOHaraSmith2019.resolveStep LamontOHaraSmith2019.ResolveState.q4 x✝ = LamontOHaraSmith2019.ResolveState.q4
Instances For
The blocks B writes, each reversed.
Equations
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q0 Tone.TBU.O = [Tone.TBU.O]
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q0 Tone.TBU.H = []
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q1 Tone.TBU.H = [Tone.TBU.H]
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q1 Tone.TBU.O = []
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q2 Tone.TBU.O = [Tone.TBU.H, Tone.TBU.O, Tone.TBU.O]
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q2 Tone.TBU.H = [Tone.TBU.H, Tone.TBU.H, Tone.TBU.H]
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q3 Tone.TBU.O = [Tone.TBU.H]
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q3 Tone.TBU.H = []
- LamontOHaraSmith2019.resolveOutput LamontOHaraSmith2019.ResolveState.q4 x✝ = [x✝]
Instances For
What B writes at the end of the word, reversed.
Equations
Instances For
Transducer B of Figure 1, the right-to-left pass, as run by runRight.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The first pass #
The second pass #
Plateauing #
B after A computes unbounded tonal plateauing (Figure 1).
A preserves length.
Unbounded tonal plateauing is weakly deterministic in Heinz and Lai's sense.