Documentation

Linglib.Semantics.Exhaustification.Finite

Exhaustification over finite world types #

Over a Fintype of worlds, with propositions as Finsets, compatibility, maximal compatibility, innocent excludability and the cell are decidable: every compatible set lies in excludables, so maximality is a search over its powerset. innocent packages innocent exclusion as an Excluder, and the structural theorems compute innocent.exh and tolerant.exh for alternative sets of a given shape. preFilter_can_create_implicature witnesses that removing a symmetric alternative before exclusion strengthens the result.

References #

Coercion #

def Exhaustification.asSetOfSets {W : Type u_1} (E : Finset (Finset W)) :
Set (Set W)

The alternatives of a finite family, as sets.

Equations
Instances For
    @[simp]
    theorem Exhaustification.mem_asSetOfSets {W : Type u_1} {E : Finset (Finset W)} {s : Set W} :
    s asSetOfSets E aE, a = s
    theorem Exhaustification.coe_univ_sdiff {W : Type u_1} [Fintype W] [DecidableEq W] (a : Finset W) :
    (Finset.univ \ a) = (↑a)

    The complement of a Finset, as a set.

    theorem Exhaustification.mem_inf_id_iff {W : Type u_1} [Fintype W] [DecidableEq W] {s : Finset (Finset W)} {w : W} :
    w s.inf id as, w a

    Membership in the intersection of a finite family.

    Compatible sets #

    def Exhaustification.excludables {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
    Finset (Finset W)

    The prejacent with the complement of every alternative: every compatible set lies in it.

    Equations
    Instances For
      theorem Exhaustification.isCompatible_iff_finset {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) (E : Finset (Finset W)) :
      IsCompatible (asSetOfSets ALT) (↑φ) (asSetOfSets E) Eexcludables ALT φ φ E (E.inf id).Nonempty

      Compatibility over finite families is a Finset condition.

      @[instance_reducible]
      instance Exhaustification.decidableIsCompatible {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) (E : Finset (Finset W)) :
      Decidable (IsCompatible (asSetOfSets ALT) (↑φ) (asSetOfSets E))
      Equations
      theorem Exhaustification.isMCSet_iff_finset {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) (E : Finset (Finset W)) :
      IsMCSet (asSetOfSets ALT) (↑φ) (asSetOfSets E) IsCompatible (asSetOfSets ALT) (↑φ) (asSetOfSets E) E'(excludables ALT φ).powerset, IsCompatible (asSetOfSets ALT) (↑φ) (asSetOfSets E')EE'E'E

      Maximal compatibility is a search over the powerset of excludables.

      @[instance_reducible]
      instance Exhaustification.decidableIsMCSet {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) (E : Finset (Finset W)) :
      Decidable (IsMCSet (asSetOfSets ALT) (↑φ) (asSetOfSets E))
      Equations
      • One or more equations did not get rendered due to their size.
      def Exhaustification.ieFinset {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
      Finset (Finset W)

      The propositions in every maximal compatible set, computed within excludables.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def Exhaustification.innocentlyExcludable {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
        Finset (Finset W)

        The innocently excludable alternatives of a finite family.

        Equations
        Instances For
          theorem Exhaustification.innocentlyExcludable_subset {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
          innocentlyExcludable ALT φALT
          theorem Exhaustification.self_mem_ieFinset {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
          φ ieFinset ALT φ

          The prejacent lies in every maximal compatible set.

          Innocent excludability #

          theorem Exhaustification.isInnocentlyExcludable_iff {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ a : Finset W) :
          IsInnocentlyExcludable (asSetOfSets ALT) φ a a innocentlyExcludable ALT φ

          Innocent excludability over a finite family is membership in innocentlyExcludable.

          @[instance_reducible]
          instance Exhaustification.decidableIsInnocentlyExcludable {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ a : Finset W) :
          Decidable (IsInnocentlyExcludable (asSetOfSets ALT) φ a)

          Innocent excludability is decidable over finite families.

          Equations

          The cell #

          def Exhaustification.cellFinset {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
          Finset W

          The cell of the prejacent, as a Finset.

          Equations
          Instances For
            theorem Exhaustification.mem_cellFinset_iff {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) (w : W) :
            w cellFinset ALT φ cell (asSetOfSets ALT) (↑φ) w

            Membership in cellFinset is membership in the cell.

            @[instance_reducible]
            instance Exhaustification.decidableCell {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) (w : W) :
            Decidable (cell (asSetOfSets ALT) (↑φ) w)

            The cell is decidable over finite families.

            Equations

            The innocent excluder #

            def Exhaustification.innocent {W : Type u_2} [Fintype W] [DecidableEq W] :

            The innocent excluder ([Fox07]): innocent.exh ALT φ is exhIE over finite worlds.

            Equations
            Instances For
              theorem Exhaustification.innocent_exh_eq_phi_of_innocentlyExcludable_empty {W : Type u_1} [Fintype W] [DecidableEq W] {ALT : Finset (Finset W)} {φ : Finset W} (h : innocentlyExcludable ALT φ = ) :
              innocent.exh ALT φ = φ

              With nothing innocently excludable, exhaustification is vacuous.

              Tolerant exhaustification #

              theorem Exhaustification.tolerant_exh_eq_empty_of_covered {W : Type u_1} [Fintype W] [DecidableEq W] {ALT : Finset (Finset W)} {φ : Finset W} (h : wφ, αALT, ¬φα w α) :
              tolerant.exh ALT φ =

              Tolerant exhaustification is contradictory when every prejacent world lies in a non-entailed alternative.

              theorem Exhaustification.covered_of_tolerant_exh_eq_empty {W : Type u_1} [Fintype W] [DecidableEq W] {ALT : Finset (Finset W)} {φ : Finset W} (h : tolerant.exh ALT φ = ) (w : W) (hw : w φ) :
              αALT, ¬φα w α

              A contradictory tolerant exhaustification covers the prejacent by non-entailed alternatives.

              theorem Exhaustification.tolerant_exh_eq_empty_iff {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
              tolerant.exh ALT φ = wφ, αALT, ¬φα w α

              Tolerant exhaustification is contradictory iff the non-entailed alternatives cover the prejacent.

              Innocent exhaustification #

              theorem Exhaustification.tolerant_exh_subset_innocent_exh {W : Type u_1} [Fintype W] [DecidableEq W] (ALT : Finset (Finset W)) (φ : Finset W) :
              tolerant.exh ALT φinnocent.exh ALT φ

              The tolerant excluder denies every alternative the innocent one does.

              theorem Exhaustification.innocent_exh_pairwise_disjoint_partial {W : Type u_1} [Fintype W] [DecidableEq W] {ALT : Finset (Finset W)} {φ : Finset W} (hcompat : (φ \ ALT.sup id).Nonempty) :
              innocent.exh ALT φ = φ \ ALT.sup id

              When some prejacent world lies in no alternative, every alternative is innocently excludable and exhaustification removes their union.

              theorem Exhaustification.innocent_exh_singleton_proper {W : Type u_1} [Fintype W] [DecidableEq W] {α φ : Finset W} (h : αφ) :
              innocent.exh {α} φ = φ \ α

              A single alternative strictly below the prejacent is denied.

              theorem Exhaustification.innocent_exh_erase_entailed {W : Type u_1} [Fintype W] [DecidableEq W] {ALT : Finset (Finset W)} {a φ : Finset W} (h_entails : φa) (hphi_nonempty : φ.Nonempty) :
              innocent.exh ALT φ = innocent.exh (ALT.erase a) φ

              An alternative entailed by the prejacent can be dropped without changing the exhaustification.

              Filtering alternatives can strengthen #

              theorem Exhaustification.preFilter_can_create_implicature :
              ∃ (E : Excluder Bool) (ALT : Finset (Finset Bool)) (φ : Finset Bool) (ψ : Finset Bool) (P : Finset BoolBool), ¬E.exh ALT φψ (E.preFilter P).exh ALT φψ

              Filtering the alternatives before exclusion can license an implicature the unfiltered excluder does not: removing one of two symmetric alternatives makes the other excludable ([FK11]'s formal alternative source can break symmetry).