Documentation

Linglib.Syntax.Minimalist.Feature.Slot

Feature-checking slots #

A feature-checking slot records the state of one feature dimension on a lexical item. Under Agree a dimension is in one of three states: absent, when the item lacks it; unvalued, a probe, present but valueless (Chomsky's unvalued feature, which searches for a goal); and valued v. A determinate slot of Core/Order/Flat.lean has two states, bottom or a value, so a checking slot is a flat slot with a new bottom below it: WithBot (Flat α), as EReal is WithBot (WithTop ℝ). Its subsumption order is therefore absent < unvalued < valued v with distinct values incomparable, the per-slot order the bundle subsumption order is built from.

Following Marcolli, Chomsky and Berwick, the free-Merge core keeps the features of a syntactic object atomic, and the valued/unvalued apparatus belongs to the Agree layer, so slots are kept general here, polymorphic in the value type, and decoupled from the SyntacticObject carrier.

Main definitions #

References #

@[reducible, inline]
abbrev Minimalist.FeatureSlot (α : Type u_1) :
Type u_1

A feature-checking slot for value type α is absent, unvalued (a probe), or valued v: a flat slot with a new bottom below it.

Equations
Instances For
    @[reducible, match_pattern, inline]

    An item lacking the dimension has the absent slot.

    Equations
    Instances For
      @[reducible, match_pattern, inline]

      A probe has the unvalued slot, present but valueless.

      Equations
      Instances For
        @[reducible, match_pattern, inline]
        abbrev Minimalist.FeatureSlot.valued {α : Type u_1} (v : α) :

        The valued v slot carries the value v.

        Equations
        Instances For
          def Minimalist.FeatureSlot.rec' {α : Type u_1} {motive : FeatureSlot α → Sort u_2} (absent : motive absent) (unvalued : motive unvalued) (valued : (v : α) → motive (valued v)) (s : FeatureSlot α) :
          motive s

          A slot is absent, unvalued, or valued.

          Equations
          Instances For
            @[simp]
            @[simp]
            theorem Minimalist.FeatureSlot.valued_ne_absent {α : Type u_1} (v : α) :
            @[simp]
            @[simp]
            theorem Minimalist.FeatureSlot.valued_inj {α : Type u_1} {v w : α} :
            valued v = valued w ↔ v = w

            The slot specifies a present feature, that is, it is not absent.

            Equations
            Instances For

              The slot is a probe (present but unvalued).

              Equations
              Instances For

                The slot carries a value.

                Equations
                Instances For
                  def Minimalist.FeatureSlot.value? {α : Type u_1} :
                  FeatureSlot α → Option α

                  The value of a slot, when it is valued.

                  Equations
                  Instances For

                    Valuing a slot with v fills it when it is unvalued and leaves an absent or valued slot as it is.

                    Equations
                    Instances For
                      @[simp]
                      theorem Minimalist.FeatureSlot.valueWith_valued {α : Type u_1} (v w : α) :
                      theorem Minimalist.FeatureSlot.valueWith_of_ne_unvalued {α : Type u_1} (v : α) {s : FeatureSlot α} (h : s ≠ unvalued) :
                      valueWith v s = s
                      theorem Minimalist.FeatureSlot.le_valueWith {α : Type u_1} (v : α) (s : FeatureSlot α) :
                      s ≤ valueWith v s

                      Valuation is inflationary in the subsumption order.

                      @[simp]
                      theorem Minimalist.FeatureSlot.isSpecified_iff_ne_bot {α : Type u_1} {s : FeatureSlot α} :
                      s.isSpecified = true ↔ s ≠ ⊥