Documentation

Linglib.Morphology.Exponence.Containment.Defs

Vocabularies over containment hierarchies: rules and specificity #

The carrier for the realizational engine of [Bob12]'s comparative-suppletion generalizations, over an arbitrary n-grade containment hierarchy. An SpanRule realizes the initial span [0, spans] of the hierarchy, optionally conditioned on a higher head. One carrier carries two Exponence.Rule views: the Subset reading (SpanRule, applicability is threshold containment) is DM Elsewhere insertion; the Superset reading (SupersetRule, applicability is constituent containment) is nanosyntax spellout, dual à la OrderDual.

Main declarations #

Rules of exponence and derived specificity #

structure Morphology.Containment.SpanRule (n : ) (F : Type u_2) :
Type u_2

A rule of exponence ([Bob12]) over an n-grade containment hierarchy. The rule realizes the initial span [0, spans] — the bare root when spans = 0, a root+heads portmanteau when spans > 0 — and applies only when its optional conditioning head context is present. Latin ([Bob12] (204)): bon is ⟨bon, 0, none⟩, mel- is ⟨mel, 0, some 1⟩, the portmanteau opt- is ⟨opt, 1, some 2⟩.

  • exponent : F

    The phonological exponent inserted for the span.

  • spans : Fin n

    Upper end of the exponed initial span [0, spans].

  • context : Option (Fin n)

    Head whose presence conditions the rule, if any.

Instances For
    @[implicit_reducible]
    instance Morphology.Containment.instDecidableEqSpanRule {n✝ : } {F✝ : Type u_2} [DecidableEq F✝] :
    DecidableEq (SpanRule n✝ F✝)
    Equations
    def Morphology.Containment.instDecidableEqSpanRule.decEq {n✝ : } {F✝ : Type u_2} [DecidableEq F✝] (x✝ x✝¹ : SpanRule n✝ F✝) :
    Decidable (x✝ = x✝¹)
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      def Morphology.Containment.instReprSpanRule.repr {n✝ : } {F✝ : Type u_2} [Repr F✝] :
      SpanRule n✝ F✝Std.Format
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[implicit_reducible]
        instance Morphology.Containment.instReprSpanRule {n✝ : } {F✝ : Type u_2} [Repr F✝] :
        Repr (SpanRule n✝ F✝)
        Equations
        def Morphology.Containment.SpanRule.threshold {n : } {F : Type u_1} (it : SpanRule n F) :
        Fin n

        The least grade at which the rule is applicable: everything the rule mentions — exponed span and conditioning context — must be contained in the structure.

        Equations
        Instances For
          def Morphology.Containment.SpanRule.AppliesAt {n : } {F : Type u_1} (it : SpanRule n F) (g : Fin n) :

          A rule applies at grade g when grade g's structure contains everything the rule mentions.

          Equations
          Instances For
            @[implicit_reducible]
            instance Morphology.Containment.SpanRule.instDecidableAppliesAt {n : } {F : Type u_1} (it : SpanRule n F) (g : Fin n) :
            Decidable (it.AppliesAt g)
            Equations
            def Morphology.Containment.SpanRule.MoreSpecific {n : } {F : Type u_1} (it jt : SpanRule n F) :

            A rule it is at least as specific as jt when it applies in a subset of the contexts jt applies in (Pāṇinian specificity).

            Equations
            Instances For

              Over a linear containment hierarchy, applicability sets are nested upward sets, so derived specificity is threshold comparison — the Elsewhere ordering ([Kip73]) is total.

              Well-formedness conditions on vocabularies #

              Each generalization below hypothesizes exactly the conditions it needs; vocabularies violating a condition witness the corresponding unattested pattern (see the worked examples in Studies/Bobaljik2012.lean).

              def Morphology.Containment.Terminal {n : } {F : Type u_1} (v : List (SpanRule n F)) :

              Every rule expones the bare root (no portmanteaux).

              Equations
              Instances For
                @[implicit_reducible]
                instance Morphology.Containment.instDecidableTerminal {n : } {F : Type u_1} (v : List (SpanRule n F)) :
                Decidable (Terminal v)
                Equations
                def Morphology.Containment.Adjacent {n : } {F : Type u_1} (v : List (SpanRule n F)) :

                Conditioning heads are adjacent to the exponed span — [Bob12]'s (tentatively adopted) adjacency condition on contextual allomorphy.

                Equations
                Instances For
                  @[implicit_reducible]
                  instance Morphology.Containment.instDecidableAdjacent {n : } {F : Type u_1} (v : List (SpanRule n F)) :
                  Decidable (Adjacent v)
                  Equations
                  def Morphology.Containment.Antihomophonous {n : } {F : Type u_1} (v : List (SpanRule n F)) :

                  Distinct rules carry distinct exponents — [Bob12]'s Antihomophony assumption (44), closing the loophole where a surface-ABA pattern is really an ABC with accidental A ≡ C homophony.

                  Equations
                  Instances For
                    @[implicit_reducible]
                    instance Morphology.Containment.instDecidableAntihomophonousOfDecidableEq {n : } {F : Type u_1} [DecidableEq F] (v : List (SpanRule n F)) :
                    Decidable (Antihomophonous v)
                    Equations
                    def Morphology.Containment.Grounded {n : } {F : Type u_1} (v : List (SpanRule n F)) :

                    [Bob12]'s markedness condition (202): a context-sensitive rule of exponence involving a node requires a context-free rule involving that node. Under the threshold encoding, this is downward closure of the vocabulary's threshold set.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      @[implicit_reducible]
                      instance Morphology.Containment.instDecidableGrounded {n : } {F : Type u_1} (v : List (SpanRule n F)) :
                      Decidable (Grounded v)
                      Equations
                      def Morphology.Containment.ContextFree {n : } {F : Type u_1} (v : List (SpanRule n F)) :

                      The nanosyntax restriction, in the pointer-free idealization of [Cah09]: entries store bare constituents, with no DM-style contextual environment.

                      Equations
                      Instances For
                        @[implicit_reducible]
                        instance Morphology.Containment.instDecidableContextFree {n : } {F : Type u_1} (v : List (SpanRule n F)) :
                        Decidable (ContextFree v)
                        Equations

                        The Subset reading: DM Elsewhere insertion #

                        The containment engine implements Morphology.Exponence.Rule directly: applicability is threshold containment (the upper set Set.Ici threshold) and derived specificity is threshold comparison.

                        @[implicit_reducible]
                        instance Morphology.Containment.instRuleSpanRuleFin {n : } {F : Type u_1} :
                        Exponence.Rule (SpanRule n F) (Fin n) F
                        Equations
                        @[simp]
                        theorem Morphology.Containment.SpanRule.applies_iff {n : } {F : Type u_1} {it : SpanRule n F} {g : Fin n} :

                        Subset applicability is threshold containment.

                        theorem Morphology.Containment.SpanRule.le_iff {n : } {F : Type u_1} {it jt : SpanRule n F} :
                        it jt it.MoreSpecific jt

                        Containment specificity is the shared core's specificity order.

                        The Superset reading: nanosyntax spellout #

                        One carrier, a dual view: the entry can spell out grade g when its stored constituent contains g (the down-set Set.Iic spans), and smallest-match selection is Pāṇinian specificity under superset matching. A distinct type synonym so the two readings carry different Exponence.Rule instances on one carrier, mirroring OrderDual.

                        def Morphology.Containment.SpanRule.Matches {n : } {F : Type u_1} (it : SpanRule n F) (g : Fin n) :

                        The Superset Principle ([Sta09a]): an entry can spell out grade g when the constituent it stores contains grade g's structure. Anti-monotone in g, dually to AppliesAt.

                        Equations
                        Instances For
                          @[implicit_reducible]
                          instance Morphology.Containment.instDecidableMatches {n : } {F : Type u_1} (it : SpanRule n F) (g : Fin n) :
                          Decidable (it.Matches g)
                          Equations
                          theorem Morphology.Containment.SpanRule.Matches.anti {n : } {F : Type u_1} {it : SpanRule n F} {g g' : Fin n} (h : it.Matches g') (hg : g g') :
                          it.Matches g
                          theorem Morphology.Containment.SpanRule.matches_imp_iff_spans_le {n : } {F : Type u_1} {it jt : SpanRule n F} :
                          (∀ ⦃g : Fin n⦄, it.Matches gjt.Matches g) it.spans jt.spans

                          Minimize Junk derived, dually to SpanRule.moreSpecific_iff_threshold_le: an entry matches in a subset of the structures another matches in iff it stores the smaller constituent — smallest-match selection is Pāṇinian specificity under superset matching.

                          def Morphology.Containment.SupersetRule (n : ) (F : Type u_2) :
                          Type u_2

                          The Superset reading of an exponence rule: an entry spells out grade g when its stored constituent contains g (the down-set Set.Iic spans), dually to the Subset reading of SpanRule.

                          Equations
                          Instances For
                            @[implicit_reducible]
                            Equations
                            • One or more equations did not get rendered due to their size.
                            def Morphology.Containment.SpanRule.superset {n : } {F : Type u_1} (it : SpanRule n F) :

                            Read an exponence rule under the Superset reading.

                            Equations
                            Instances For
                              @[simp]
                              theorem Morphology.Containment.SupersetRule.applies_iff {n : } {F : Type u_1} {it : SupersetRule n F} {g : Fin n} :

                              Superset applicability is constituent containment.

                              theorem Morphology.Containment.SupersetRule.le_iff {n : } {F : Type u_1} {it jt : SupersetRule n F} :
                              it jt it.spans jt.spans

                              Minimize Junk is the Superset reading's specificity order: smaller span = more specific.

                              theorem Morphology.Containment.SpanRule.subset_le_iff_superset_le {n : } {F : Type u_1} {it jt : SpanRule n F} (hit : it.context = none) (hjt : jt.context = none) :
                              it jt jt.superset it.superset

                              Subset/Superset duality over context-free vocabularies (the nanosyntax idealization): DM-style Subset specificity of it over jt is Superset specificity of jt over it. With contextual restrictions the Subset order compares thresholds, not spans, and the duality is only one-directional.