Documentation

Linglib.Syntax.Minimalist.SyntacticObject.Term

Terms, containment, and c-command #

This file develops the theory of terms of syntactic objects: containment as a closure of the daughter relation, the multisets of terms and accessible terms that enumerate it, and sisterhood and c-command relative to a root. Containment lowers the vertex count, which makes it a well-founded strict order and decides it.

Main definitions #

Main results #

Implementation notes #

Syntactic objects are values, not occurrences: a term sitting at two vertices is one object of multiplicity two in terms, and containment and c-command relate values, so the two daughters of merge x x are not sisters.

References #

Immediate containment #

y is one of x's root daughters.

Equations
Instances For

    Containment #

    Containment, the transitive closure of immediate containment.

    Equations
    Instances For

      Reflexive containment, the reflexive transitive closure of immediate containment.

      Equations
      Instances For

        The vertex count grades containment #

        Being a proper term is well-founded: an object has finitely many terms.

        Terms #

        The subtrees of a syntactic object are its terms, hence syntactic objects.

        The terms of a syntactic object, itself included.

        Equations
        Instances For
          @[simp]
          theorem Minimalist.SyntacticObject.map_val_terms (s : SyntacticObject) :
          Multiset.map Subtype.val s.terms = (↑s).subtrees
          @[simp]
          @[simp]
          @[simp]

          The terms of x are the objects it reflexively contains.

          One term per vertex.

          @[instance_reducible]
          Equations

          Accessible terms #

          The accessible terms, the terms at the non-root vertices.

          Equations
          Instances For
            @[simp]

            The accessible terms of x are the objects it contains.

            One accessible term per edge.

            @[instance_reducible]
            Equations

            C-command #

            x and y are sisters in root when they are distinct daughters of some term of root.

            Equations
            Instances For
              @[instance_reducible]
              instance Minimalist.SyntacticObject.instDecidableSisters (root x y : SyntacticObject) :
              Decidable (root.Sisters x y)
              Equations
              theorem Minimalist.SyntacticObject.Sisters.mem_left {x y root : SyntacticObject} (h : root.Sisters x y) :
              x ∈ root.terms

              x c-commands y in root when a sister of x contains or equals y.

              Equations
              Instances For
                @[instance_reducible]
                Equations

                Sisters c-command each other.

                theorem Minimalist.SyntacticObject.CCommands.mem_terms {x y root : SyntacticObject} (h : root.CCommands x y) :
                y ∈ root.terms

                A c-commanded object is a term of the root.

                The c-command domain of x in root, the search space of a probe sitting at x.

                Equations
                Instances For

                  x c-commands y in root and y does not c-command x.

                  Equations
                  Instances For
                    @[instance_reducible]
                    Equations

                    Sisters never asymmetrically c-command each other.