Documentation

Linglib.Semantics.Entailment.PositionProfile

Per-position signature profiles for two-place operators #

Linguistic operators carry one entailment signature per argument position — every is anti-additive in its restrictor and monotone in its scope, no is anti-additive in both ([PW06] §5.8–5.9, [vB84]). Sig₂ records a signature pair, Sig₂.SoundFor says each component is sound for the corresponding section, and EntailmentSig.SoundFor.comp₂ composes an outer context into both positions at once — the shape of locality computations like K&L's not ∘ every-scope. The "DE on a constant parameter" idiom (adversatives, conditional antecedents) is the special case of reading one section of a Sig₂.SoundFor.

The GQ bridges connect the profile to the existing per-position machinery in Quantification: the four DoubleMono cells realize mono/anti profiles, and Left/RightAntiAdditive are sectionwise IsAntiAdditive at the Prop instance. every_sem and no_sem get certified profiles as worked instances.

Main declarations #

A per-position signature profile for a two-place operator. For determiners the positions are restrictor and scope; under the restrictor analysis of conditionals, antecedent and consequent.

Instances For
    def NaturalLogic.instDecidableEqSig₂.decEq (x✝ x✝¹ : Sig₂) :
    Decidable (x✝ = x✝¹)
    Equations
    Instances For
      @[implicit_reducible]
      Equations
      def NaturalLogic.instReprSig₂.repr :
      Sig₂Std.Format
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def NaturalLogic.Sig₂.SoundFor {α : Type u_1} {β : Type u_2} {γ : Type u_3} [Lattice α] [BoundedOrder α] [Lattice β] [BoundedOrder β] [Lattice γ] [BoundedOrder γ] (σ : Sig₂) (f : αβγ) :

        A profile is sound for a two-place operator when each component signature is sound for the corresponding section (the other argument held constant — K&L's "DE on a constant parameter" pattern, made positional).

        Equations
        Instances For
          theorem NaturalLogic.EntailmentSig.SoundFor.comp₂ {α : Type u_1} {β : Type u_2} {γ : Type u_3} {δ : Type u_4} [Lattice α] [BoundedOrder α] [Lattice β] [BoundedOrder β] [Lattice γ] [BoundedOrder γ] [Lattice δ] [BoundedOrder δ] {ψ : EntailmentSig} {g : γδ} {σ : Sig₂} {f : αβγ} (hg : ψ.SoundFor g) (hf : σ.SoundFor f) :
          { restrictor := ψ * σ.restrictor, scope := ψ * σ.scope }.SoundFor fun (x : α) (y : β) => g (f x y)

          Composing a sound outer context into a sound two-place operator composes the profile componentwise — the two-place form of EntailmentSig.SoundFor.comp.

          Bridges to the GQ machinery #

          ↑MON↑ (e.g. some): both positions monotone.

          ↓MON↑ (e.g. every): restrictor antitone, scope monotone.

          ↑MON↓ (e.g. not all): restrictor monotone, scope antitone.

          ↓MON↓ (e.g. no): both positions antitone.

          LeftAntiAdditive ([PW06] §5.9) is sectionwise anti-additivity in the restrictor, at the Prop instance.

          RightAntiAdditive is sectionwise anti-additivity in the scope.

          Certified determiner profiles #

          Every realizes ↓MON↑ as a certified profile, the restrictor side derived from left anti-additivity (every_laa).

          No realizes ↓MON↓, both positions via anti-additivity (no_laa, no_raa).

          Worked composition: not every #

          Propositional negation realizes the anti-morphism row at the Prop instance.