Documentation

Linglib.Core.Morphology.Paradigm

Morphological Paradigm Substrate #

@cite{ackerman-malouf-2013} @cite{rathi-hahn-futrell-2026}

Cross-paper substrate for paradigm-cell-level analyses: inflection classes, paradigm systems, cell distributions, and entropy-based measures over them.

Core.Morphology.ParadigmCell (in MorphRule.lean) is the type for one cell of a paradigm with its features and form; ParadigmSystem here is the whole table with frequency weights, organized by inflection class.

Form parameterization #

InflectionClass n Form and ParadigmSystem n Form are parameterized over the surface-form type. Most consumers use Form := String (the natural representation for actual morphological forms in @cite{ackerman-malouf-2013}'s A&M language sample). The Rathi 2026 toy paradigms use a small [Fintype] form alphabet so that PMF-based entropy operators (Entropy.lean) apply to cell distributions; that integration lives in a sibling PMFCellDistribution.lean file added in a later phase of the unification refactor.

Public API #

iComplexity (the paper-specific average conditional entropy) and LCECHolds (the LCEC threshold predicate) live in AckermanMalouf2013.lean because they are particular aggregations the paper defines, not substrate primitives.

structure Core.Morphology.InflectionClass (numCells : ) (Form : Type u_1) :
Type u_1

An inflection class: function from cell index to surface realization of type Form.

  • realize : Fin numCellsForm
Instances For
    @[implicit_reducible]
    instance Core.Morphology.instBEqInflectionClass {n : } {Form : Type} [BEq Form] :
    BEq (InflectionClass n Form)
    Equations
    structure Core.Morphology.ParadigmSystem (numCells : ) (Form : Type u_1) :
    Type u_1

    A paradigm system: inflection classes paired with frequency weights.

    Instances For
      def Core.Morphology.groupBySum {α : Type} [BEq α] (tagged : List (α × )) :
      List (α × )

      Group a tagged list by key, summing associated ℚ values.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def Core.Morphology.ParadigmSystem.cellDistribution {n : } {Form : Type} [BEq Form] (ps : ParadigmSystem n Form) (c : Fin n) :
        List (Form × )

        Empirical distribution of forms at cell c: pairs each surface form with the total frequency of inflection classes realizing it at c.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def Core.Morphology.ParadigmSystem.jointCellDistribution {n : } {Form : Type} [BEq Form] (ps : ParadigmSystem n Form) (ci cj : Fin n) :
          List ((Form × Form) × )

          Joint empirical distribution of forms at cell pair (ci, cj).

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def Core.Morphology.ParadigmSystem.eComplexity {n : } {Form : Type u_1} (ps : ParadigmSystem n Form) :

            E-complexity (@cite{ackerman-malouf-2013}): the number of inflection classes in the paradigm system.

            Equations
            Instances For
              noncomputable def Core.Morphology.ParadigmSystem.cellEntropy {n : } {Form : Type} [BEq Form] [DecidableEq Form] (ps : ParadigmSystem n Form) (c : Fin n) :

              Shannon entropy of the empirical distribution at cell c (in nats).

              Equations
              Instances For
                noncomputable def Core.Morphology.ParadigmSystem.conditionalCellEntropy {n : } {Form : Type} [BEq Form] [DecidableEq Form] (ps : ParadigmSystem n Form) (ci cj : Fin n) :

                Conditional entropy H(C_i | C_j) of cell ci given cell cj (in nats). The integrand of @cite{ackerman-malouf-2013}'s i-complexity.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  def Core.Morphology.ParadigmSystem.isImplicative {n : } {Form : Type} [BEq Form] [DecidableEq Form] (ps : ParadigmSystem n Form) (ci cj : Fin n) :

                  A cell pair (ci, cj) is implicative iff knowing the form at cj perfectly determines the form at ci (zero conditional entropy).

                  Equations
                  Instances For
                    def Core.Morphology.ParadigmSystem.isTransparent {n : } {Form : Type} [BEq Form] [DecidableEq Form] (ps : ParadigmSystem n Form) :

                    A paradigm is transparent iff every off-diagonal cell pair is implicative — every cell perfectly predicts every other.

                    Equations
                    Instances For
                      def Core.Morphology.ParadigmSystem.fromStems {σ : Type} (stems : List (Stem σ)) (baseMeaning : σ) (numCells : ) (cellExtractor : List (String × Features × σ)Fin numCellsString) :
                      ParadigmSystem numCells String

                      Extract a ParadigmSystem n String from a list of Stems. The cellExtractor function maps each stem's generated forms (with their features and base meaning) to a per-cell surface realization. Specialized to Form := String since Stem's allForms returns String-typed surface forms.

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