Vowel harmony: pattern-level vocabulary #
The theory-neutral vocabulary of vowel harmony, anchored on
[RvdH24b]: the typological enums and Pattern, the
descriptive object mechanisms derive. At a finite alphabet a pattern presents
a TSL₂ grammar (Pattern.harmonic_iff_mem_tsl). Segment-level participation
cannot express parasitic harmony ((8b)) or configuration-dependent blocking
(Yakut); those need the general forbidden-pairs machinery.
Main definitions #
Participation,Direction,ControlType,Domain,HarmonyType: the typological enums.Pattern: valuation, participation, descriptors;Pattern.Harmonicis the surface semantics — tier-adjacent compatibility with blocker imposition and icy absorption.
Main results #
Pattern.harmonic_insert_transparent: transparency interrupts harmlessly.Pattern.harmonic_iff_agreeOn: with all segments participating, the chain and pairwise formulations coincide.
How a segment participates in harmony ([RvdH24b] §1.3).
- participating : Participation
Alternates and propagates.
- transparent : Participation
Skipped harmlessly (neutral).
- opaque : Participation
Does not undergo; imposes its value on what follows ((8c)).
- icyTarget : Participation
Undergoes without passing on ([jurgec-2011]'s absorbing vowels).
Instances For
Equations
- Phonology.Harmony.instDecidableEqParticipation x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- Phonology.Harmony.instDecidableEqDirection x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Phonology.Harmony.instReprDirection = { reprPrec := Phonology.Harmony.instReprDirection.repr }
Who determines the harmonic value ([RvdH24b] §1.2.4).
- rootControlled
{V : Type u}
: ControlType V
Roots do not alternate; affixes harmonize to them (morphologically determined).
- dominantRecessive
{V : Type u}
(dominant : V)
: ControlType V
A designated value wins regardless of position (phonologically determined).
- affixControlled
{V : Type u}
: ControlType V
Posed as an open question by the chapter: metaphony and umlaut, where stress attracts the harmonic value.
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Phonology.Harmony.instDecidableEqControlType.decEq Phonology.Harmony.ControlType.rootControlled Phonology.Harmony.ControlType.rootControlled = isTrue ⋯
- Phonology.Harmony.instDecidableEqControlType.decEq Phonology.Harmony.ControlType.rootControlled (Phonology.Harmony.ControlType.dominantRecessive dominant) = isFalse ⋯
- Phonology.Harmony.instDecidableEqControlType.decEq Phonology.Harmony.ControlType.rootControlled Phonology.Harmony.ControlType.affixControlled = isFalse ⋯
- Phonology.Harmony.instDecidableEqControlType.decEq (Phonology.Harmony.ControlType.dominantRecessive dominant) Phonology.Harmony.ControlType.rootControlled = isFalse ⋯
- Phonology.Harmony.instDecidableEqControlType.decEq (Phonology.Harmony.ControlType.dominantRecessive dominant) Phonology.Harmony.ControlType.affixControlled = isFalse ⋯
- Phonology.Harmony.instDecidableEqControlType.decEq Phonology.Harmony.ControlType.affixControlled Phonology.Harmony.ControlType.rootControlled = isFalse ⋯
- Phonology.Harmony.instDecidableEqControlType.decEq Phonology.Harmony.ControlType.affixControlled (Phonology.Harmony.ControlType.dominantRecessive dominant) = isFalse ⋯
- Phonology.Harmony.instDecidableEqControlType.decEq Phonology.Harmony.ControlType.affixControlled Phonology.Harmony.ControlType.affixControlled = isTrue ⋯
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- Phonology.Harmony.instDecidableEqDomain x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Phonology.Harmony.instReprDomain = { reprPrec := Phonology.Harmony.instReprDomain.repr }
The feature types of [RvdH24b] §1.5; tonal harmony is unattested.
- palatal : HarmonyType
- labial : HarmonyType
- height : HarmonyType
- tongueRoot : HarmonyType
[ATR]/[RTR]; see
Phonology/Harmony/TongueRoot.lean. - tenseLax : HarmonyType
- nasal : HarmonyType
- emphasis : HarmonyType
Post-velar harmony.
- retroflex : HarmonyType
- total : HarmonyType
Echo/copy harmony: all features.
Instances For
Equations
- Phonology.Harmony.instDecidableEqHarmonyType 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
Patterns and their surface semantics #
The descriptive object every mechanism must derive: harmony creates likeness among the participating vowels of a domain ((2) of [RvdH24b]). The undergoer/blocker/transparent decomposition follows [ARGH24]: transparent segments are skipped; opaque blockers do not undergo but impose their transmitted value on what follows ((8c)); icy targets undergo without passing on ([jurgec-2011]).
A harmony pattern over segment type α with harmonic values in V.
- value : α → Option V
The valuation;
none= no harmonic counterpart. For opaque and icy segments, the value transmitted (not necessarily the phonetic one). - participation : α → Participation
Stored independently of the valuation: neutral vowels' transparent-vs-opaque behavior is not predictable (§1.3.2). Discipline:
value s = none → participation s ≠ .participating. - direction : Direction
- domain : Domain
- control : ControlType V
Instances For
Tier membership: everything but transparent segments.
Equations
- p.OnTier s = (p.participation s ≠ Phonology.Harmony.Participation.transparent)
Instances For
Equations
- Phonology.Harmony.instDecidablePredOnTier p s = id inferInstance
Adjacent compatibility, left to right: an opaque right member is exempt (blockers do not undergo), an icy left member is exempt (no passing on); otherwise the values agree. Deliberately asymmetric.
Equations
- p.Compatible a b = (p.participation a = Phonology.Harmony.Participation.icyTarget ∨ p.participation b = Phonology.Harmony.Participation.opaque ∨ p.value a = p.value b)
Instances For
Equations
- Phonology.Harmony.instDecidableRelCompatibleOfDecidableEq p a b = id inferInstance
Surface harmonicity: the tier is a chain of compatible segments.
Equations
- p.Harmonic w = List.IsChain p.Compatible (p.tier w)
Instances For
Equations
- Phonology.Harmony.instDecidableHarmonicOfDecidableEq p w = id inferInstance
Transparency interrupts harmlessly ([RvdH24b] §1.3.2).
With all segments participating, the chain and pairwise formulations coincide (value-agreement is transitive).