Element Theory — vowels, glides, and gutturals as elemental bundles #
@cite{kaye-lowenstamm-vergnaud-1985} @cite{backley-2011} @cite{kaye-lowenstamm-1984} @cite{backley-nasukawa-2010}
Element Theory (ET) builds segments from a small inventory of privative primes called elements. Three resonance elements suffice for the vowel/glide system:
- |I| — palatality (front quality); surfaces as [i] in a nucleus, as [j] elsewhere (onset/coda/offglide).
- |U| — labiality (rounding); surfaces as [u] in a nucleus, as [w] elsewhere.
- |A| — aperture (lowness/openness); surfaces as [a]/[ʌ] in a nucleus, and — per @cite{angoujard-1995} and @cite{faust-lampitelli-2026} — as the resonance element of gutturals when associated to a C-slot. Two further elements, |ʔ| (occlusion, glottal closure) and |h| (noise, frication), specify the consonantal "stop" or "fricative" character of laryngeals/pharyngeals/uvulars.
Following @cite{backley-2011} ch. 2, each element in a segment may be the head (most prominent contributor) or an operator (modifier). The contrast between [ʌ] and [a] in the paper (eq. 21) is precisely a headedness contrast: [ʌ] = bare |A|, [a] = headed |A|. The contrast between pharyngeals (ħ, ʕ) and laryngeals/uvulars (ʔ, h, χ, ʁ) is analogously a headedness contrast on the |A| element (eq. 20).
ET as a FeatureBundle instance, not a parallel framework #
Per the design of Theories/Phonology/Featural/Bundle.lean, FeatureBundle F V
is parametric over feature index F and value type V. ET is the
instantiation F := Element, V := Headedness:
noneat elementemeans absent from this segment.some .bareat elementemeans present as operator.some .headedat elementemeans present as head.
Lionnet's Subtonal feature bundle in
Theories/Phonology/Autosegmental/RegisterTier.lean is the
binary-feature instantiation F := Subtonal, V := Bool. Hayes-style
binary features in Theories/Phonology/Featural/Features.lean are
the instantiation F := Feature, V := Bool (after a thin
Segment wrapper).
The shared OCP-merger operation lives at the tier level
(Phonology.Tier.ocpCollapse in OCPMerger.lean) and works
uniformly for all three instantiations. The framework-divergence
between Hayes binary, Lionnet subtonal, and ET privative-with-head
lives at the segment representation level — different (F, V)
choices commit to different theories of what makes two segments
"the same".
Scope #
This file provides the substrate. Per CLAUDE.md fragment-schema
discipline, ET decompositions of specific languages (Tigrinya
gutturals, Tigre vowels) are paper-specific projections and live in
study files (e.g. Phenomena/Phonology/Studies/FaustLampitelli2026.lean),
not in fragment files.
The full Backley 2011 inventory adds tonal elements |H| and |L|
(omitted here — they belong with Phonology.Autosegmental.RegisterTier's
TRN substrate when needed). Charm (@cite{kaye-lowenstamm-vergnaud-1985})
is omitted following @cite{backley-2011}'s textbook synthesis, which
abandoned charm in favour of headedness as the prominence-encoding
device.
The five primes of Element Theory needed for the
vowel/glide/guttural system @cite{kaye-lowenstamm-vergnaud-1985}
@cite{backley-2011}. Tonal elements (H, L) are omitted; they
belong with Autosegmental.RegisterTier's TRN substrate.
- I : Element
Palatality / front quality. Vowel realization [i], glide [j].
- U : Element
Labiality / rounding. Vowel realization [u], glide [w].
- A : Element
Aperture / lowness. Vowel realizations [a]/[ʌ]; consonantal realization is the
[A]-bearing component of gutturals. - glottal : Element
Glottal closure / occlusion (|ʔ|). Distinguishes [ʔ] and the stop component of pharyngeals from continuants.
- noise : Element
Noise / frication (|h|). Distinguishes the fricative component of [h, ħ, χ, ʁ] from pure stops.
Instances For
Equations
- Phonology.ElementTheory.instDecidableEqElement 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.ElementTheory.instHashableElement.hash Phonology.ElementTheory.Element.I = 0
- Phonology.ElementTheory.instHashableElement.hash Phonology.ElementTheory.Element.U = 1
- Phonology.ElementTheory.instHashableElement.hash Phonology.ElementTheory.Element.A = 2
- Phonology.ElementTheory.instHashableElement.hash Phonology.ElementTheory.Element.glottal = 3
- Phonology.ElementTheory.instHashableElement.hash Phonology.ElementTheory.Element.noise = 4
Instances For
Equations
Headedness @cite{backley-2011} ch. 2: each element in a segment can be the head (most prominent) or an operator (modifier).
In the @cite{faust-lampitelli-2026} analysis (eq. 21), the contrast between [ʌ] (bare |A|) and [a] (headed |A|) is the headedness contrast. Eq. (20) extends the same contrast to gutturals: pharyngeals [ħ, ʕ] are headed by |A|, laryngeals [ʔ, h] and uvulars [χ, ʁ] are not.
- bare : Headedness
Operator: present in the segment but not the head.
- headed : Headedness
Head: the most prominent element of the segment.
Instances For
Equations
- Phonology.ElementTheory.instDecidableEqHeadedness 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
Element-Theory bundle: an instance of the parametric
FeatureBundle F V substrate at F := Element, V := Headedness.
A bundle assigns each element either none (absent) or
some .bare (present as operator) or some .headed
(present as head). The set of headed elements is at most a
singleton in canonical Element-Theory analyses (the head is
unique), though this file does not enforce that constraint at
the type level.
Equations
Instances For
The empty ET bundle: no elements. The phonetic realization of an empty bundle in a vocalic position is the language's epenthetic vowel — [ɨ] in Tigrinya/Tigre per @cite{faust-lampitelli-2026} eq. (22).
Instances For
A bundle with one headed element and no operators.
Equations
Instances For
A bundle with one bare-operator element and no head.
Equations
Instances For
A bundle with a head and a single operator.
Equations
- Phonology.ElementTheory.ETBundle.headPlusOp head op f = if f = head then some Phonology.ElementTheory.Headedness.headed else if f = op then some Phonology.ElementTheory.Headedness.bare else none
Instances For
Element e is present in the bundle (head or operator),
regardless of headedness status.
Equations
- b.HasElement e = ((b e).isSome = true)
Instances For
Element e is the head of the bundle.
Equations
- b.IsHead e = (b e = some Phonology.ElementTheory.Headedness.headed)
Instances For
Equations
Following the textual paper (paper §3.3.2 + eq. 34) and @cite{angoujard-1995}: in ET, the |A| element is on a different tier from |I, U|. The A-tier registers only |A|-presence (with headedness); the I/U-tier registers |I|/|U| presence.
This is exactly the parametric tier-projection idea of
Theories/Phonology/Tier.lean's Phonology.Tier.tonal for
tones, instantiated for ET.
Equations
Instances For
The I/U-tier @cite{kaye-lowenstamm-vergnaud-1985}: a pair
(Option Headedness, Option Headedness) for whether |I| and |U|
are specified, and how. Most segments specify at most one of the
two (front vs back); the type-level pair allows for the rare
diphthongs that specify both.
Equations
Instances For
Project a bundle to its A-only stratum: keep |A| (with headedness), erase everything else. The output bundle is the "A-tier projection" of the original.
Equations
Instances For
Project a bundle to its I/U-only stratum: keep |I| and |U|, erase everything else.
Equations
Instances For
Headedness combination for OCP-merger of two adjacent identical
elements: the head wins. Used as the combine argument to
Phonology.Tier.ocpCollapse when collapsing element-tier runs.
For the @cite{faust-lampitelli-2026} guttural-synersis case the
inputs are bundle-identical (two |A|s of the same headedness
flanking a guttural), so the choice of combine is irrelevant —
the default fun a _ => a of ocpCollapse suffices. The
headedWins operation is provided as the substrate-level
convention for cases where headedness mismatches arise.
Equations
- Phonology.ElementTheory.headedWins x✝ Phonology.ElementTheory.Headedness.headed = Phonology.ElementTheory.Headedness.headed
- Phonology.ElementTheory.headedWins Phonology.ElementTheory.Headedness.headed x✝ = Phonology.ElementTheory.Headedness.headed
- Phonology.ElementTheory.headedWins Phonology.ElementTheory.Headedness.bare Phonology.ElementTheory.Headedness.bare = Phonology.ElementTheory.Headedness.bare
Instances For
Bundle-level combine using headedWins element-wise. Idempotent
on identical bundles (so admissible as the combine argument to
Phonology.Tier.ocpCollapse).
Equations
- One or more equations did not get rendered due to their size.