Documentation

Linglib.Syntax.Minimalist.Agree.Coordination

Coordination resolution over a dual-feature system #

This file defines resolution of gender features on a coordinate structure in a dual-feature system: a nominal's features are interpretable, sent to LF, or uninterpretable, sent to PF, and resolution is the composition of percolation, which collects one feature set from each conjunct at the coordination, with conversion, which intersects the interpretable sets so that the group bears exactly the features every member has. Uninterpretable sets are not intersected; they are realized set by set, and realization converges only when every set receives the same exponent. A feature geometry records, for each node, the nodes it entails, and a geometry satisfies mismatch resolution when every pair of its nodes resolves to something without default insertion.

Main definitions #

Main statements #

References #

A feature value annotated for interpretability.

Instances For
    def Minimalist.Coordination.instDecidableEqAnnotated.decEq {F✝ : Type u_3} [DecidableEq F✝] (x✝ x✝¹ : Annotated F✝) :
    Decidable (x✝ = x✝¹)
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      def Minimalist.Coordination.instReprAnnotated.repr {F✝ : Type u_3} [Repr F✝] :
      Annotated F✝Std.Format
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[instance_reducible]
        instance Minimalist.Coordination.instReprAnnotated {F✝ : Type u_3} [Repr F✝] :
        Repr (Annotated F✝)
        Equations
        @[reducible, inline]

        The gender features of a nominal, interpretable and uninterpretable.

        Equations
        Instances For
          def Minimalist.Coordination.percolate {F : Type u_1} (fs : Bundle F) :
          List F

          The interpretable values of a bundle: what percolates to LF-bound resolution.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def Minimalist.Coordination.percolateU {F : Type u_1} (fs : Bundle F) :
            List F

            The uninterpretable values of a bundle.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def Minimalist.Coordination.interpretable {F : Type u_1} (vs : List F) :

              Interpretable annotation of every value in a list.

              Equations
              Instances For
                def Minimalist.Coordination.uninterpretable {F : Type u_1} (vs : List F) :

                Uninterpretable annotation of every value in a list.

                Equations
                Instances For
                  @[simp]
                  @[simp]
                  theorem Minimalist.Coordination.percolate_append {F : Type u_1} (fs gs : Bundle F) :
                  percolate (fs ++ gs) = percolate fs ++ percolate gs
                  @[simp]
                  theorem Minimalist.Coordination.percolateU_append {F : Type u_1} (fs gs : Bundle F) :
                  percolateU (fs ++ gs) = percolateU fs ++ percolateU gs
                  @[simp]
                  def Minimalist.Coordination.redundancy {F : Type u_1} (iFs uFs : List F) :
                  List F

                  The redundancy rule at Transfer: interpretable values fill an empty uninterpretable slot.

                  Equations
                  Instances For
                    @[simp]
                    theorem Minimalist.Coordination.redundancy_nil {F : Type u_1} (iFs : List F) :
                    redundancy iFs [] = iFs
                    theorem Minimalist.Coordination.redundancy_of_ne_nil {F : Type u_1} (iFs : List F) {uFs : List F} (h : uFs []) :
                    redundancy iFs uFs = uFs
                    def Minimalist.Coordination.realizeAll {F : Type u_1} {E : Type u_2} [DecidableEq E] (realize : List FOption E) :
                    List (List F)Option E

                    Realization of a family of feature sets: the exponent they all receive, if they agree.

                    Equations
                    Instances For
                      @[simp]
                      theorem Minimalist.Coordination.realizeAll_singleton {F : Type u_1} {E : Type u_2} [DecidableEq E] (realize : List FOption E) (s : List F) :
                      realizeAll realize [s] = realize s
                      theorem Minimalist.Coordination.realizeAll_pair {F : Type u_1} {E : Type u_2} [DecidableEq E] (realize : List FOption E) (s t : List F) :
                      realizeAll realize [s, t] = if realize t = realize s then realize s else none
                      def Minimalist.Coordination.conversion {F : Type u_1} [DecidableEq F] (xs ys : List F) :
                      List F

                      Conversion: the values shared by two percolated sets, in the order of the first.

                      Equations
                      Instances For
                        theorem Minimalist.Coordination.mem_conversion {F : Type u_1} [DecidableEq F] {xs ys : List F} {v : F} :
                        v conversion xs ys v xs v ys
                        @[simp]
                        theorem Minimalist.Coordination.conversion_self {F : Type u_1} [DecidableEq F] (xs : List F) :
                        conversion xs xs = xs
                        def Minimalist.Coordination.resolve {F : Type u_1} [DecidableEq F] (fs gs : Bundle F) :
                        Option (List F)

                        Resolution of two conjuncts: the shared interpretable values, none if there are none.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def Minimalist.Coordination.resolveN {F : Type u_1} [DecidableEq F] (bundles : List (Bundle F)) :
                          Option (List F)

                          Resolution of a family of conjuncts by iterated conversion.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            theorem Minimalist.Coordination.resolveN_binary {F : Type u_1} [DecidableEq F] (fs gs : Bundle F) :
                            resolveN [fs, gs] = resolve fs gs
                            theorem Minimalist.Coordination.resolve_self {F : Type u_1} [DecidableEq F] (fs : Bundle F) (h : percolate fs []) :
                            resolve fs fs = some (percolate fs)

                            Uniform conjuncts resolve to their shared features.

                            theorem Minimalist.Coordination.resolve_singleton {F : Type u_1} [DecidableEq F] (x y : F) (i j : Interpretability) :
                            resolve [{ value := x, interp := i }] [{ value := y, interp := j }] = if i = Interpretability.interpretable j = Interpretability.interpretable x = y then some [x] else none

                            Single-feature conjuncts resolve to their feature exactly when both are interpretable and match.

                            def Minimalist.Coordination.MismatchResolutionOn {F : Type u_1} [DecidableEq F] (bundles : List (Bundle F)) :

                            Every pair of bundles resolves without default insertion.

                            Equations
                            Instances For
                              structure Minimalist.Coordination.Geometry (F : Type u_3) :
                              Type u_3

                              A feature geometry: for each node, the nodes it entails, itself included.

                              • nodes : List F

                                The nodes.

                              • above : FList F

                                The closure of a node under entailment.

                              Instances For

                                a entails b when b's closure lies within a's.

                                Equations
                                Instances For
                                  @[instance_reducible]
                                  instance Minimalist.Coordination.Geometry.instDecidableEntails {F : Type u_1} [DecidableEq F] (G : Geometry F) (a b : F) :
                                  Decidable (G.Entails a b)
                                  Equations

                                  Every pair of nodes resolves without default insertion.

                                  Equations
                                  Instances For