Documentation

Linglib.Phonology.Autosegmental.AR

Autosegmental representations: the §4.2 axioms and their category #

The well-formedness axioms of [Jar16b] §4.2, each stated on exactly the components it reads (Digraph arcs, SimpleGraph edges, a coloring c : V → ι) and read on a labeled mixed graph at the tier coloring X.tier t. AR t is the full subcategory of Graph S they carve out, monoidal under Graph.concat.

Main definitions #

Main results #

Implementation notes #

The axiom numbering follows the dissertation; [JH15] numbers the NCC and OCP as 4 and 5 and has no saturation axiom. Saturation ([Gol76]'s original well-formedness condition) is stated but never imposed. The arcs are transitively closed ([Jar19]'s reading that A represents the order), so the OCP reads adjacency as the covering relation of the arcs. Axiom 6's word-level form is AR.IsCleanAt (OCP.lean, through the hub OCP.IsClean); relating Axiom 5 to the coordinate IsNonCrossing is the TODO.

TODO #

structure Autosegmental.IsTierOrdered {V : Type u_1} {ι : Type u_3} (A : Digraph V) (c : Vι) extends IsStrictOrder V A.Adj :

The arcs A are tier-internal and strictly totally order each fiber of c (Axioms 1–2).

  • irrefl (a : V) : ¬A.Adj a a
  • trans (a b c : V) : A.Adj a bA.Adj b cA.Adj a c
  • tier_eq v w : V : A.Adj v wc v = c w

    Arcs never leave a tier.

  • total v w : V : v wc v = c wA.Adj v w A.Adj w v

    Distinct same-tier vertices are arc-comparable.

Instances For
    def Autosegmental.NoInternalAssoc {V : Type u_1} (E : SimpleGraph V) (A : Digraph V) :

    No association edge links arc-related vertices (Axiom 3).

    Equations
    Instances For
      def Autosegmental.IsSaturated {V : Type u_1} (E : SimpleGraph V) :

      Every vertex meets an association edge (Axiom 4, full specification).

      Equations
      Instances For
        def Autosegmental.IsPlanar {V : Type u_1} (E : SimpleGraph V) (A : Digraph V) :

        No two association edges straddle in opposite precedence order (Axiom 5, the NCC).

        Equations
        • Autosegmental.IsPlanar E A = ∀ ⦃v v' w w' : V⦄, E.Adj v v'E.Adj w w'A.Adj v w¬A.Adj w' v'
        Instances For
          def Autosegmental.IsOCPClean {V : Type u_1} {S : Type u_2} {ι : Type u_3} (A : Digraph V) ( : VS) (t : Sι) (m : ι) :

          Precedence-adjacent vertices on melody tier m bear distinct labels (Axiom 6, the OCP).

          Equations
          • Autosegmental.IsOCPClean A t m = ∀ ⦃v w : V⦄, A.Adj v w(∀ (u : V), ¬(A.Adj v u A.Adj u w))t ( v) = m v w
          Instances For

            Axiom preservation under the graph operations #

            theorem Autosegmental.Graph.isTierOrdered_empty {S : Type u_2} {ι : Type u_3} (t : Sι) :
            theorem Autosegmental.Graph.isTierOrdered_concat {S : Type u_2} {ι : Type u_3} {X : Graph S} {Y : Graph S} (t : Sι) (h₁ : IsTierOrdered X.arcs (tier t X)) (h₂ : IsTierOrdered Y.arcs (tier t Y)) :
            IsTierOrdered (concat t X Y).arcs (tier t (concat t X Y))

            The concatenation of tier-ordered graphs is tier-ordered.

            theorem Autosegmental.Graph.noInternalAssoc_concat {S : Type u_2} {ι : Type u_3} {X : Graph S} {Y : Graph S} (t : Sι) (h₁ : NoInternalAssoc X.edges X.arcs) (h₂ : NoInternalAssoc Y.edges Y.arcs) :

            The concatenation of graphs with no internal association has no internal association.

            theorem Autosegmental.Graph.isPlanar_concat {S : Type u_2} {ι : Type u_3} {X : Graph S} {Y : Graph S} (t : Sι) (h₁ : IsPlanar X.edges X.arcs) (h₂ : IsPlanar Y.edges Y.arcs) :
            IsPlanar (concat t X Y).edges (concat t X Y).arcs

            The concatenation of planar graphs is planar; this is the headline result of [Jar19].

            theorem Autosegmental.Graph.not_isTierOrdered_sum {S : Type u_2} {ι : Type u_3} {X : Graph S} {Y : Graph S} (t : Sι) (v : X.V) (w : Y.V) (htier : tier t X v = tier t Y w) :
            ¬IsTierOrdered (X.sum Y).arcs (tier t (X.sum Y))

            The bridge-free sum of graphs sharing a tier is never tier-ordered, so Axiom 2 forces the bridges in concat.

            The category of autosegmental representations #

            @[reducible, inline]
            abbrev Autosegmental.AR {S : Type u_2} {ι : Type u_3} (t : Sι) :
            Type (max u_2 (u_4 + 1))

            The category of autosegmental representations over a tier assignment, given by the full subcategory on Axioms 1–3 of [Jar16b] §4.2. These are the formal literature's ARs ([Jar19], [CJ19]).

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

              The monoidal structure: morpheme concatenation #

              def Autosegmental.AR.tierColoring {S : Type u_2} {ι : Type u_3} {t : Sι} (X : AR t) :
              X.obj.edges.Coloring ι

              The tier map is a proper coloring of the association graph; Goldsmith's bipartite two-tier geometry is the two-colorable case.

              Equations
              Instances For
                theorem Autosegmental.AR.edges_colorable {S : Type u_2} {ι : Type u_3} {t : Sι} [Fintype ι] (X : AR t) :
                X.obj.edges.Colorable (Fintype.card ι)

                Tier arity bounds the chromatic number of the association pattern.

                def Autosegmental.AR.mkIso {S : Type u_2} {ι : Type u_3} {t : Sι} {X Y : AR t} (e : X.obj.Iso Y.obj) :
                X Y

                A graph isomorphism as an isomorphism of representations.

                Equations
                Instances For
                  theorem Autosegmental.AR.hom_ext {S : Type u_2} {ι : Type u_3} {t : Sι} {X Y : AR t} {f g : X Y} (h : ∀ (v : X.obj.V), f.hom.toFun v = g.hom.toFun v) :
                  f = g

                  Componentwise extensionality for representation morphisms.

                  @[instance_reducible]
                  instance Autosegmental.AR.instMonoidalStruct {S : Type u₁} {ι : Type u₂} {t : Sι} :
                  CategoryTheory.MonoidalCategoryStruct (AR t)

                  The monoidal structure with morpheme concatenation as tensor and the empty representation as unit. The universes are pinned because autobinding would split the instance head into a max; @[simps] feeds the tensor rewrites in NormalForm.lean.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  @[simp]
                  theorem Autosegmental.AR.tensorHom_def {S : Type u₁} {ι : Type u₂} {t : Sι} {X₁✝ Y₁✝ X₂✝ Y₂✝ : AR t} (f : X₁✝ Y₁✝) (g : X₂✝ Y₂✝) :
                  CategoryTheory.MonoidalCategoryStruct.tensorHom f g = CategoryTheory.InducedCategory.homMk (Graph.Hom.concatMap t f.hom g.hom)
                  @[simp]
                  theorem Autosegmental.AR.leftUnitor_def {S : Type u₁} {ι : Type u₂} {t : Sι} (X : AR t) :
                  CategoryTheory.MonoidalCategoryStruct.leftUnitor X = mkIso (Graph.emptyConcatIso t X.obj)
                  @[simp]
                  theorem Autosegmental.AR.tensorUnit_obj {S : Type u₁} {ι : Type u₂} {t : Sι} :
                  (CategoryTheory.MonoidalCategoryStruct.tensorUnit (AR t)).obj = Graph.empty S
                  @[simp]
                  theorem Autosegmental.AR.associator_def {S : Type u₁} {ι : Type u₂} {t : Sι} (X Y Z : AR t) :
                  CategoryTheory.MonoidalCategoryStruct.associator X Y Z = mkIso (Graph.concatAssocIso t X.obj Y.obj Z.obj)
                  @[simp]
                  theorem Autosegmental.AR.whiskerRight_def {S : Type u₁} {ι : Type u₂} {t : Sι} {X₁✝ X₂✝ : AR t} (f : X₁✝ X₂✝) (Y : AR t) :
                  CategoryTheory.MonoidalCategoryStruct.whiskerRight f Y = CategoryTheory.InducedCategory.homMk (Graph.Hom.concatMap t f.hom (Graph.Hom.id Y.obj))
                  @[simp]
                  theorem Autosegmental.AR.tensorObj_obj {S : Type u₁} {ι : Type u₂} {t : Sι} (X Y : AR t) :
                  (CategoryTheory.MonoidalCategoryStruct.tensorObj X Y).obj = Graph.concat t X.obj Y.obj
                  @[simp]
                  theorem Autosegmental.AR.whiskerLeft_def {S : Type u₁} {ι : Type u₂} {t : Sι} (X x✝ x✝¹ : AR t) (f : x✝ x✝¹) :
                  CategoryTheory.MonoidalCategoryStruct.whiskerLeft X f = CategoryTheory.InducedCategory.homMk (Graph.Hom.concatMap t (Graph.Hom.id X.obj) f.hom)
                  @[simp]
                  theorem Autosegmental.AR.rightUnitor_def {S : Type u₁} {ι : Type u₂} {t : Sι} (X : AR t) :
                  CategoryTheory.MonoidalCategoryStruct.rightUnitor X = mkIso (Graph.concatEmptyIso t X.obj)
                  @[instance_reducible]
                  instance Autosegmental.AR.instMonoidalCategory {S : Type u_2} {ι : Type u_3} {t : Sι} :
                  CategoryTheory.MonoidalCategory (AR t)

                  The category of autosegmental representations is monoidal under concatenation; the coherence laws are [JH15] Theorems 1 and 3.

                  Equations
                  def Autosegmental.AR.precPreserving {S : Type u_2} {ι : Type u_3} {t : Sι} :
                  CategoryTheory.MorphismProperty (AR t)

                  Precedence preservation on representations: the classical morphisms of the theory, as a monoidally-stable wide subcategory of the broad category.

                  Equations
                  Instances For
                    instance Autosegmental.AR.instIsMonoidalStablePrecPreserving {S : Type u_2} {ι : Type u_3} {t : Sι} :
                    precPreserving.IsMonoidalStable