Documentation

Studies.Icard2012

Icard (2012): Inclusion and Exclusion in Natural Language #

This file formalizes Icard's projectivity calculus, which extends the Monotonicity Calculus from inclusion to the exclusion relations of MacCartney and Manning. The relations, their join and projection tables and the composition of signatures are the library's NaturalLogic substrate, whose implementations this file checks against the printed cells; on top of them it builds the typed language of Section 2, with the projectivity markings of a lexicon's constants, the projectivity of a context (Definition 2.9, Ctx.pro), and the soundness of projectivity marking (Proposition 2.10, Model.soundFor_ctxFun). The calculus 𝒞 of Section 3 is Derives, with the Substitution rule over contexts, and Theorem 3.1 is Derives.sound. The worked example of Section 3.2, that Every job that involves a giant squid is dangerous entails Not every job that involves a cephalopod is safe, is derived from the paper's assumption set by three substitutions and two compositions (derives_squid), and Section 4's correspondence between the signatures and Zwarts's three classes of negative polarity items is Licenses, read off the substrate's strength map Signature.toDEStrength.

Implementation notes #

References #

The printed tables #

The join table (Lemma 1.5), the projection table (Lemma 2.4) and the composition table (Lemma 2.7) are the substrate's join, project and compose; the cells are certified sound and least in Logic/Natural/Soundness.lean and Logic/Natural/Completeness.lean.

The typed language (Sections 2.1 and 2.3) #

inductive Icard2012.Base :

The basic types: predicates, intransitive verbs and truth values.

Instances For
    @[instance_reducible]
    instance Icard2012.instDecidableEqBase :
    DecidableEq Base
    Equations
    inductive Icard2012.Ty :

    Unmarked types.

    Instances For
      def Icard2012.instDecidableEqTy.decEq (x✝ x✝¹ : Ty) :
      Decidable (x✝ = x✝¹)
      Equations
      Instances For
        structure Icard2012.Lexicon (κ : Type u_1) :
        Type u_1

        A lexicon: the constants' types and the projectivity markings of their arrows, outermost first (Definition 2.1).

        Instances For
          inductive Icard2012.Term {κ : Type u_1} (L : Lexicon κ) :
          Ty → Type u_1

          Terms of the language (Definition 2.8): constants and applications.

          Instances For
            def Icard2012.Term.marks {κ : Type u_1} {L : Lexicon κ} {τ : Ty} :

            The markings a term still carries: applying a term consumes its outermost marking.

            Equations
            Instances For
              def Icard2012.Term.top {κ : Type u_1} {L : Lexicon κ} {τ : Ty} (t : Term L τ) :

              The topmost projectivity of a term (Section 2.4): its outermost marking, • when it has none.

              Equations
              Instances For
                inductive Icard2012.Ctx {κ : Type u_1} (L : Lexicon κ) (σ : Ty) :
                Ty → Type u_1

                A context (Section 2.4): a term with one hole of type σ, in function or argument position.

                Instances For
                  def Icard2012.Ctx.fill {κ : Type u_1} {L : Lexicon κ} {σ τ : Ty} :
                  Ctx L σ τ → Term L σ → Term L τ

                  Filling the hole of a context.

                  Equations
                  Instances For
                    def Icard2012.Ctx.pro {κ : Type u_1} {L : Lexicon κ} {σ τ : Ty} :

                    The projectivity of a context (Definition 2.9): the identity marking at the hole, the context's own projectivity into the function position, and the function's topmost projectivity composed with the argument's into the argument position.

                    Equations
                    Instances For

                      Models (Definition 2.8) #

                      The domain of a basic type is a Boolean algebra and that of an arrow all functions, the Boolean lattice of Proposition 1.1; a constant denotes a function of its signature whose values again are (Definition 2.2).

                      def Icard2012.Dom (B : Base → Type u) :
                      Ty → Type u

                      The domains of the unmarked types.

                      Equations
                      Instances For
                        @[reducible]
                        def Icard2012.Dom.booleanAlgebra {B : Base → Type u} [(b : Base) → BooleanAlgebra (B b)] (τ : Ty) :
                        BooleanAlgebra (Dom B τ)

                        The Boolean algebra of a domain: that of the basic type, or the pointwise one on functions.

                        Equations
                        Instances For
                          @[reducible]
                          instance Icard2012.Dom.instBooleanAlgebra {B : Base → Type u} [(b : Base) → BooleanAlgebra (B b)] (τ : Ty) :
                          BooleanAlgebra (Dom B τ)
                          Equations
                          def Icard2012.Mem {B : Base → Type u} [(b : Base) → BooleanAlgebra (B b)] :
                          List NaturalLogic.Signature → (τ : Ty) → Dom B τ → Prop

                          A value of a type is of the given markings when it is a function of the first marking whose values are of the remaining ones (Definition 2.2).

                          Equations
                          Instances For
                            structure Icard2012.Model {κ : Type u_1} (L : Lexicon κ) :
                            Type (max (u + 1) u_1)

                            A model of the language: domains for the basic types and a denotation for each constant of its markings.

                            Instances For
                              def Icard2012.Model.eval {κ : Type u_1} {L : Lexicon κ} (M : Model L) {τ : Ty} :
                              Term L τ → Dom M.B τ

                              The denotation of a term.

                              Equations
                              Instances For
                                def Icard2012.Model.ctxFun {κ : Type u_1} {L : Lexicon κ} {σ : Ty} (M : Model L) {τ : Ty} :
                                Ctx L σ τ → Dom M.B σ → Dom M.B τ

                                The function a context denotes (Section 2.4).

                                Equations
                                Instances For
                                  theorem Icard2012.Model.eval_fill {κ : Type u_1} {L : Lexicon κ} {σ : Ty} (M : Model L) {τ : Ty} (c : Ctx L σ τ) (s : Term L σ) :
                                  M.eval (c.fill s) = M.ctxFun c (M.eval s)
                                  theorem Icard2012.Model.mem_eval {κ : Type u_1} {L : Lexicon κ} (M : Model L) {τ : Ty} (t : Term L τ) :
                                  Mem t.marks τ (M.eval t)

                                  Every term denotes a value of its markings.

                                  theorem Icard2012.Model.soundFor_ctxFun {κ : Type u_1} {L : Lexicon κ} {σ : Ty} (M : Model L) {τ : Ty} (c : Ctx L σ τ) :

                                  Soundness of projectivity marking (Proposition 2.10): a context denotes a function of its projectivity.

                                  The calculus 𝒞 (Section 3.1) #

                                  inductive Icard2012.Derives {κ : Type u_1} {L : Lexicon κ} (Γ : {τ : Ty} → Term L τ → NaturalLogic.Relation → Term L τ → Prop) {τ : Ty} :
                                  Term L τ → NaturalLogic.Relation → Term L τ → Prop

                                  The projectivity calculus 𝒞: Reflexivity, the four Symmetry rules, Absurdity, Composition along the join, and Substitution through a context with the projection of the relation, deriving relational statements between terms of a type from an assumption set.

                                  Instances For
                                    theorem Icard2012.Derives.sound {κ : Type u_1} {L : Lexicon κ} (M : Model L) {Γ : {τ : Ty} → Term L τ → NaturalLogic.Relation → Term L τ → Prop} (hΓ : ∀ {τ : Ty} {t t' : Term L τ} {R : NaturalLogic.Relation}, Γ t R t' → R.Holds (M.eval t) (M.eval t')) (hv : ∀ {τ : Ty} (t : Term L τ), M.eval t ≠ ⊥) {τ : Ty} {t t' : Term L τ} {R : NaturalLogic.Relation} (h : Derives (fun {τ : Ty} => Γ) t R t') :
                                    R.Holds (M.eval t) (M.eval t')

                                    Soundness of 𝒞 (Theorem 3.1): a derivable statement holds in every model of the assumptions in which no term denotes ⊥; Composition is Lemma 1.6, Substitution Corollary 2.12, and Absurdity needs the nonvacuity.

                                    The worked example (Section 3.2) #

                                    The constants of the fragment.

                                    Instances For
                                      @[instance_reducible]
                                      Equations

                                      The fragment's lexicon: every is anti-additive then multiplicative, some additive twice, no anti-additive twice, not every additive then anti-multiplicative, and the adjectives, copula, verb and relativizer morphisms.

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For

                                        A constant as a term.

                                        Equations
                                        Instances For

                                          no ⊑ not every needs no extra postulate: Composition on no | every and every ^ not every, with | ⋈ ^ = ⊑.

                                          Q job that involves a N is A, for a determiner q, a noun n and an adjective a.

                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For

                                            The context of the adjective: its projectivity is top(every(job…)) ∘ top(is) = ⊞.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For

                                              The context of the noun under a, with the adjective already safe: its projectivity is top(every) ∘ top(that) ∘ top(involves) ∘ top(a) = ◇.

                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For

                                                The context of the determiner, under no function: projectivity ⊕⊞.

                                                Equations
                                                • One or more equations did not get rendered due to their size.
                                                Instances For

                                                  The main example: Every job that involves a giant squid is dangerous ⊑ Not every job that involves a cephalopod is safe (the paper misprints giant squid in the conclusion). Substituting safe for dangerous under ⊞ keeps |, cephalopod for giant squid under ◇ turns ⊑ into ⊒, and not every for every under ⊕⊞ keeps ^; Composition then gives | ⋈ ⊒ = | and | ⋈ ^ = ⊑.

                                                  Negative polarity items (Section 4) #

                                                  The three classes of [Zwa98] are the signatures' downward half: weak items need an antitone context, strong ones an anti-additive context and superstrong ones an anti-morphic one.

                                                  A signature licenses an item of a Zwarts class when the strength of negation it realizes, Signature.toDEStrength, is at least as strong.

                                                  Equations
                                                  Instances For

                                                    A downward signature licenses the weak items.