Documentation

Linglib.Semantics.Entailment.Basic

Finite-world test fixture for entailment #

Thin shim over Set / compl / / from mathlib, specialized to a 4-element World enum. Consumers in Linglib.Semantics.Entailment.* use the World type + a handful of test propositions to write by decide test cases for monotonicity, polarity, and presupposition machinery.

The general (polymorphic) monotonicity theorems live in Linglib.Semantics.Quantification.Quantifier (every_scope_up, some_scope_up, no_scope_down, every_restrictor_down). This file provides only the finite-world fixture.

Reference: [vB86], [Lad80], [BC81].

A small finite set of worlds for decidable reasoning.

Instances For
    @[implicit_reducible]
    Equations
    @[implicit_reducible]
    Equations
    def Entailment.instReprWorld.repr :
    WorldStd.Format
    Equations
    Instances For
      def Entailment.entails :
      Set WorldSet WorldProp

      Semantic entailment: thin alias for Set inclusion (p ⊆ q).

      Equations
      Instances For
        @[implicit_reducible]
        instance Entailment.instDecidableEntailsOfDecidablePredWorldMemSet (p q : Set World) [DecidablePred fun (x : World) => x p] [DecidablePred fun (x : World) => x q] :
        Decidable (entails p q)
        Equations
        def Entailment.pnot :
        Set WorldSet World

        Negation: thin alias for set complement.

        Equations
        Instances For
          def Entailment.pand :
          Set WorldSet WorldSet World

          Conjunction: thin alias for set intersection.

          Equations
          Instances For
            def Entailment.por :
            Set WorldSet WorldSet World

            Disjunction: thin alias for set union.

            Equations
            Instances For
              @[implicit_reducible]
              instance Entailment.instDecidablePredWorldMemSetPnot (p : Set World) [DecidablePred fun (x : World) => x p] :
              DecidablePred fun (x : World) => x pnot p
              Equations
              @[implicit_reducible]
              instance Entailment.instDecidablePredWorldMemSetPand (p q : Set World) [DecidablePred fun (x : World) => x p] [DecidablePred fun (x : World) => x q] :
              DecidablePred fun (x : World) => x pand p q
              Equations
              @[implicit_reducible]
              instance Entailment.instDecidablePredWorldMemSetPor (p q : Set World) [DecidablePred fun (x : World) => x p] [DecidablePred fun (x : World) => x q] :
              DecidablePred fun (x : World) => x por p q
              Equations

              Proposition true only in w0.

              Equations
              Instances For

                Proposition true in w0 and w1.

                Equations
                Instances For

                  Proposition true in w0, w1, w2.

                  Equations
                  Instances For

                    Proposition true everywhere.

                    Equations
                    Instances For

                      Proposition false everywhere.

                      Equations
                      Instances For
                        @[implicit_reducible]
                        instance Entailment.instDecidablePredWorldMemSetP0 :
                        DecidablePred fun (x : World) => x p0
                        Equations
                        @[implicit_reducible]
                        instance Entailment.instDecidablePredWorldMemSetP01 :
                        DecidablePred fun (x : World) => x p01
                        Equations
                        @[implicit_reducible]
                        instance Entailment.instDecidablePredWorldMemSetP012 :
                        DecidablePred fun (x : World) => x p012
                        Equations
                        @[implicit_reducible]
                        instance Entailment.instDecidablePredWorldMemSetPAll :
                        DecidablePred fun (x : World) => x pAll
                        Equations
                        @[implicit_reducible]
                        instance Entailment.instDecidablePredWorldMemSetPNone :
                        DecidablePred fun (x : World) => x pNone
                        Equations