Documentation

Linglib.Phonology.Segmental.Defs

Segmental representation: definitions #

The distinctive feature and the segment built over it. A feature is one of the 26 binary distinctive features of Hayes's chart, or one of the tongue-root features [ATR] and [RTR] of Halle, Vaux and Wolfe; a segment is a partial specification of those features — each +, −, or unspecified — ordered by specificity (the unification-grammar subsumption order, inherited as a feature bundle), with the unspecified archisegment least and natural-class generalization as meet.

This file collects definitions only — the feature inventory, the segment and its valuation/construction/change API, the natural-class predicates, and the sonority scales. The theorems about them live in Phonology/Segmental/Basic.lean.

References #

Feature inventory #

A binary distinctive phonological feature, following [Hay09]'s segmental inventory. (The stress and length features are excluded: [Hay09] treats stress as a syllable-level property, not a segmental feature.) [ATR], the tongue-root feature of the sub-Saharan harmony systems, is the one feature [Hay09] names among the vowel features but leaves off his chart, noting that whether it is the same feature as [tense] is unsettled; it is kept distinct here. [RTR], the other tongue-root feature of [HVW00], distinguishes the pharyngealized consonants, which the PHOIBLE chart codes by it.

Instances For
    @[instance_reducible]
    Equations
    @[instance_reducible]
    Equations
    def Phonology.instReprFeature.repr :
    Feature → ℕ → Std.Format
    Equations
    Instances For

      Enumeration #

      All features, in declaration order.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[instance_reducible]

        allFeatures is the canonical enumeration: completeness is the Fintype law, not a theorem re-proved beside it.

        Equations

        The segment bundle #

        @[reducible, inline]

        A segment: a partial specification of the distinctive features — each feature is +, −, or left unspecified. Segments are ordered by specificity: one refines another when it agrees on every feature the other commits to, and possibly more. The fully unspecified segment is least; the most specific class common to two segments is their meet.

        Equations
        Instances For

          Valuation #

          def Phonology.Segment.HasValue (s : Segment) (f : Feature) (v : Bool) :

          Does feature f have value v?

          Equations
          Instances For
            @[instance_reducible]
            instance Phonology.Segment.instDecidableHasValue (s : Segment) (f : Feature) (v : Bool) :
            Decidable (s.HasValue f v)
            Equations

            A segment is unspecified for feature f iff its value there is none.

            Equations
            Instances For

              Construction #

              def Phonology.Segment.ofSpecs (specs : List (Feature × Bool)) :

              The segment read off a list of (feature, value) pairs. Unmentioned features are unspecified, giving natural-class semantics: ofSpecs [(continuant, false)] lies below every [−cont] segment.

              Equations
              Instances For

                Natural-class predicates #

                Language-neutral natural-class membership predicates, by the SPE feature decompositions standard since [CH68] and codified in textbook form by [Hay09]. Pure substrate: they project information already encoded in a segment, consumed by per-language Fragment files rather than redefined locally.

                A segment is a vowel iff it is [+syllabic].

                Equations
                Instances For
                  @[instance_reducible]
                  Equations

                  A segment is a consonant iff it is [+consonantal].

                  Equations
                  Instances For
                    @[instance_reducible]
                    Equations

                    A segment is an obstruent iff it is [+cons, -son].

                    Equations
                    Instances For
                      @[instance_reducible]
                      Equations

                      A segment is an oral stop iff it is [+cons, -son, -cont].

                      Equations
                      Instances For
                        @[instance_reducible]
                        Equations

                        A segment is a fricative iff it is [+cons, -son, +cont].

                        Equations
                        Instances For
                          @[instance_reducible]
                          Equations

                          A segment is a nasal iff it is [+nasal].

                          Equations
                          Instances For
                            @[instance_reducible]
                            Equations

                            A segment is a liquid iff it is [+cons, +son] and one of [+lateral], [+trill], [+tap] — the lateral /l/, the trill /r/, and the flap /ɾ/ under one class.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              @[instance_reducible]
                              Equations

                              A segment is a sibilant iff it is [+strident]. [strident] is a coronal feature, so the sibilants are the strident coronal fricatives and affricates.

                              Equations
                              Instances For

                                A segment is a glide iff it is [-cons, -syllabic, +approximant].

                                Equations
                                Instances For
                                  @[instance_reducible]
                                  Equations

                                  Feature changes #

                                  Three-valued (+ / − / ∅) specification is standard in [Kea88], [IO95], and [Ste95]; fillFromContext is default-fill, preserving existing values per [Kip82] [Arc88], while setFeature overrides. The Latin coda /l/ analysis in [Sen15] is a worked example.

                                  Set feature f to value v, overriding any existing specification. For default-fill semantics that only assign when f is currently unspecified, use fillFromContext.

                                  Equations
                                  Instances For

                                    In categorical feature spreading from context, the target s, when unspecified for f, takes the f-value of ctx, and already-specified targets and features other than f are untouched. When ctx is itself unspecified for f, the target stays unspecified.

                                    This is a [Kea88] context rule: the target acquires a categorical feature value from its neighbour and that value blocks further interactions. It is distinct from her gradient phonetic interpolation (her unspecified /h/ example), in which an unspecified segment stays unspecified and the phonetics builds a continuous trajectory through it; gradient phonetic interpolation is out of scope at this categorical-featural substrate.

                                    Equations
                                    Instances For

                                      The segment kept on the features in C and unspecified on the rest.

                                      Equations
                                      Instances For

                                        The coarse two-way classification of a segment, the commonest conditioning environment for morph-variant selection (pre-consonantal vs pre-vocalic).

                                        • consonant : Class

                                          A consonant.

                                        • vowel : Class

                                          A vowel.

                                        Instances For
                                          @[instance_reducible]
                                          Equations
                                          def Phonology.Segment.instReprClass.repr :
                                          Class → ℕ → Std.Format
                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For
                                            @[instance_reducible]
                                            Equations
                                            • One or more equations did not get rendered due to their size.

                                            A segment's coarse class is vowel when it is [+syllabic] and consonant otherwise.

                                            Equations
                                            Instances For

                                              Sonority #

                                              The abstract sonority hierarchy ([Cle90]): what the synchronic grammar operates on, ordering segments from least to most sonorous.

                                              RankClass
                                              0Stop
                                              1Fricative
                                              2Nasal
                                              3Liquid
                                              4Glide
                                              5Vowel

                                              For the finer 8-level scale that splits obstruents by voice, see Sonority.Class.

                                              Instances For
                                                @[instance_reducible]
                                                Equations
                                                def Phonology.instReprSonority.repr :
                                                Sonority → ℕ → Std.Format
                                                Equations
                                                Instances For
                                                  @[instance_reducible]
                                                  Equations
                                                  @[instance_reducible]
                                                  Equations

                                                  The sonority of a segment, read off its features ([Hay09], [Cle90]).

                                                  Equations
                                                  • One or more equations did not get rendered due to their size.
                                                  Instances For

                                                    The Parker sonority scale #

                                                    The 8-level Parker sonority partition ([Par02]) — a refinement of Sonority that splits obstruents by [±continuant] and [±voice]. This is the sonority scale; it is distinct from the natural-class predicates above (Segment.IsVowel &c.), which are feature membership.

                                                    Crucially [Par02] ranks voiced stops above voiceless fricatives (vds = 3 > vlf = 2) — his intensity-based default universal, reversible in particular languages. It is the scale on which sonority-conditioned variation such as Tarifit intrusive vowels is stated ([AZ25b]).

                                                    Instances For
                                                      @[instance_reducible]
                                                      Equations
                                                      def Phonology.Sonority.instReprClass.repr :
                                                      Class → ℕ → Std.Format
                                                      Equations
                                                      • One or more equations did not get rendered due to their size.
                                                      Instances For

                                                        The voiceless obstruent classes.

                                                        Equations
                                                        Instances For

                                                          A segment's class on the Parker eight-level scale refines Sonority.ofSegment by splitting the obstruents by [±voice] ([Par02]).

                                                          Equations
                                                          • One or more equations did not get rendered due to their size.
                                                          Instances For