Documentation

Linglib.Semantics.Possessive.Denotation

Possessive-of as a Kleisli arrow #

The possessive denotation in the unified referential currency NominalDenot (Semantics/Reference/Nominal.lean), which is a monad. NP's N is Kleisli bind into the definite possessee of the possessor: re-point the possessor denotation's selector through the possession relation (russellIota of the relation), inheriting the possessor's intrinsic presupposition. So:

Main declarations #

Main statements #

The Kleisli arrow #

noncomputable def Possessive.theOf {Ctx : Type u_1} {W E : Type} (R : EEProp) (possessor : E) :

The unique entity the possessor stands in relation R to, as a NominalDenot: a definite referent (russellIota) with vacuous intrinsic presupposition — definedness is its only presupposition.

Equations
Instances For
    noncomputable def Possessive.applyTo {Ctx : Type u_1} {W E : Type} (nd : Semantics.Reference.NominalDenot Ctx W E) (R : EEProp) :

    NP's N: re-select the possessor denotation through the possession relation R.

    Equations
    Instances For

      Composition laws #

      @[simp]
      theorem Possessive.applyTo_presup {Ctx : Type u_1} {W E : Type} (nd : Semantics.Reference.NominalDenot Ctx W E) (R : EEProp) (c : Ctx) (w : W) :
      (applyTo nd R).presup c w = nd.presup c w

      The possessive's intrinsic presupposition is the possessor's — a possessor pronoun's φ-features ride along to the whole possessive.

      @[simp]
      theorem Possessive.applyTo_selector {Ctx : Type u_1} {W E : Type} (nd : Semantics.Reference.NominalDenot Ctx W E) (R : EEProp) (c : Ctx) (w : W) :
      (applyTo nd R).selector c w = (nd.selector c w).bind fun (p : E) => Semantics.Definiteness.russellIota fun (y : E) => R p y

      The possessive's selector binds the possessor through the iota of the relation: defined exactly when the possessor is defined and has a unique R-possessee.

      theorem Possessive.applyTo_applyTo {Ctx : Type u_1} {W E : Type} (nd : Semantics.Reference.NominalDenot Ctx W E) (R₁ R₂ : EEProp) :
      applyTo (applyTo nd R₁) R₂ = do let pnd applyTo (theOf R₁ p) R₂

      Nesting (John's mother's friend) — from bind associativity.

      Definite carriers as nominal denotations #

      noncomputable def Possessive.Definite.toNominalDenot {Ctx : Type u_1} {E S : Type} (d : Definite E S) :

      A definite possessive carrier as a NominalDenot over its situations: the selector is russellIota of the possessee predicate, always defined because the carrier bears the iota-presupposition (HasIotaWitness).

      Equations
      Instances For