Siptár & Törkenczy (2000): The Phonology of Hungarian #
End-to-end OT analysis of Hungarian vowel harmony, connecting:
- Segment features (
Feature.lean) — Hayes binary feature inventory - Harmony system (
Subregular.Harmony) — trigger/target/transparent predicates - OT constraints (below) — SPREAD and IDENT derived from
System(folded in from the formerHarmony/OT.lean, this file's sole consumer) - Tableaux (
Constraint) —Tableau.ofRanking+optimalselect winner - Hungarian fragments (
Hungarian.VowelHarmony) — concrete vowel segments andhungarianPalatalHarmony
Key results #
ház_back_optimal: SPREAD ≫ IDENT selects back-harmonized suffix for back-vowel stem ház 'house'. The harmonized candidate is the unique winner.papír_transparency_optimal: neutral /i/ in papír is transparent —triggerValuefinds /a/, and SPREAD ≫ IDENT selects back harmony.tűz_front_optimal: front-vowel stem tűz 'fire' → front harmony.faithful_wins_reversed: under IDENT ≫ SPREAD, the faithful (no-change) candidate wins — demonstrating ranking-driven typology.factorial_two_types: the two constraints yield exactly 2 language types (harmony vs. no harmony) across all rankings.
Architecture #
Unlike prior OT study files that use enum candidate types (e.g.,
CoetzeePater2011), this file uses VHCandidate with real Segment
lists directly. This is possible because DecidableEq Segment (via
exhaustive feature comparison) enables native_decide on segment-level
goals. One type system, no enum wrappers.
SPREAD violations: count target segments whose harmony feature value
doesn't match triggerVal.
Equations
- SiptarTorkenczy2000.spreadViolations sys triggerVal suffix = (List.filter (fun (s : Phonology.Segment) => decide (sys.isTarget s) && !s sys.feature == some triggerVal) suffix).length
Instances For
IDENT-[F] violations: count positions where the harmony feature changed between input and output.
Derived from Corr.identViol on the (false, true) edge of a
binary parallel-pair correspondence between the feature-projected
tiers input.map (· sys.feature) and
output.map (· sys.feature). This structurally identifies
IDENT-[F] as IDENT-IO of [McCP95] restricted to
the harmony feature.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A vowel harmony candidate for OT evaluation.
The stem is fixed across candidates; only the suffix varies. For rightward harmony, GEN produces candidates that differ only in the feature values of suffix vowels. The stem determines the trigger value; the suffix is the domain of evaluation.
- stem : List Phonology.Segment
The stem (unchanged across candidates).
- suffixIn : List Phonology.Segment
The underlying (input) suffix.
- suffixOut : List Phonology.Segment
The surface (output) suffix.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
SPREAD as a Constraint: penalizes unharmonized targets in the
output suffix. Returns 0 when the stem has no trigger.
Equations
- SiptarTorkenczy2000.mkSpread sys c = match Subregular.Harmony.triggerValue sys c.stem with | none => 0 | some val => SiptarTorkenczy2000.spreadViolations sys val c.suffixOut
Instances For
IDENT-[F] as a Constraint: penalizes feature changes from
underlying to surface suffix.
Equations
Instances For
After harmonization, a target's harmony feature is set to val.
spreadSuffix produces zero SPREAD violations (when no blockers
intervene). By induction: harmonizeOne fixes each target's feature
value, so no target in the output disagrees with the trigger.
The faithful candidate (no changes) has zero IDENT violations.
Derived from Corr.identity_ident_zero.
IDENT on empty suffixes is zero.
The output of spreadSuffix achieves zero SPREAD violations for the
harmonized candidate. With faithful_zero_ident this captures the OT
trade-off: the faithful candidate has SPREAD > 0, IDENT = 0; the
harmonized candidate has SPREAD = 0, IDENT ≥ 0. Under SPREAD ≫ IDENT,
the harmonized output wins.
SPREAD ≫ IDENT: harmony applies. This is the ranking for Hungarian and other suffix-controlled harmony languages.
Equations
- One or more equations did not get rendered due to their size.
Instances For
IDENT ≫ SPREAD: harmony blocked. This ranking produces a language without vowel harmony (suffixes surface faithfully).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Faithful candidate: suffix archiphoneU surfaces unchanged.
Equations
- SiptarTorkenczy2000.ház_faithful = { stem := [Hungarian.VowelHarmony.a_vowel], suffixIn := [Hungarian.VowelHarmony.archiphoneU], suffixOut := [Hungarian.VowelHarmony.archiphoneU] }
Instances For
Back-harmonized candidate: suffix vowel set to [+back].
Equations
- One or more equations did not get rendered due to their size.
Instances For
Front-harmonized candidate: suffix vowel set to [−back].
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
Equations
- SiptarTorkenczy2000.tűz_faithful = { stem := [Hungarian.VowelHarmony.ü_vowel], suffixIn := [Hungarian.VowelHarmony.archiphoneU], suffixOut := [Hungarian.VowelHarmony.archiphoneU] }
Instances For
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.
Instances For
Equations
Instances For
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.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
ház: SPREAD ≫ IDENT selects back-harmonized suffix as unique winner. [ST00] §3.2.2, class IA-b.
tűz: SPREAD ≫ IDENT selects front-harmonized suffix as unique winner. [ST00] §3.2.2, class IA-f.
papír: neutral /i/ is transparent — back harmony passes through. SPREAD ≫ IDENT selects back-harmonized suffix, same as ház. [ST00] §3.2.2, class IIB-b.
Under IDENT ≫ SPREAD, the faithful candidate wins — no harmony applies. This is the predicted grammar for a language without vowel harmony.
Two constraints produce exactly 2 distinct language types across all rankings: harmony (SPREAD ≫ IDENT) vs. no harmony (IDENT ≫ SPREAD). This matches the typological prediction: suffix harmony is either present or absent, with no intermediate grammars.
The OT-optimal candidate for ház is identical to the output of
spreadSuffix — the direct computation and the OT analysis agree.
The OT-optimal candidate for papír matches spreadSuffix with
the trigger value extracted from the stem. Transparency is derived:
triggerValue skips neutral /i/ and finds /a/.
Hungarian vowel harmony as a generic ConstraintSystem via tableauSystem.
The same softmax-based phonology studies in this directory and the OT studies
here both expose predict : Cand → ℝ; for the deterministic OT case,
predict winner = 1 and predict loser = 0.
ház SPREAD ≫ IDENT tableau as a generic ConstraintSystem.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The OT prediction lifts to a probability claim: under SPREAD ≫ IDENT, the back-harmonized candidate is assigned probability 1.
And the faithful loser is assigned probability 0.
tűz under SPREAD ≫ IDENT: front-harmonized winner gets probability 1.
Equations
- One or more equations did not get rendered due to their size.