Documentation

Studies.EgreRossiSprenger2026c

Égré, Rossi and Sprenger (2026): Conditionals, Presupposition, and Logic: Avoid Void #

Égré, Rossi and Sprenger answer the objection that a trivalent theory of conditionals cannot share its third value with a trivalent theory of presupposition, since an indicative does not presuppose its antecedent. The answer is a principle of felicitous assertion, Avoid Void: a sentence that is void at every world of the context cannot be asserted. On their conditional–modal semantics, with an update that collapses when the sentence is nowhere true, a conditional then presupposes that its antecedent is possible but not that it is true, and presuppositions project through negation, might and the antecedent of a conditional. Karttunen's filtering conditions for conjunction, the conditional and disjunction come out of sequential context update over the symmetric Cooper connectives, not of the truth tables. Written into consequence, Avoid Void blocks inferring if A, C from not A.

Main statements #

Implementation notes #

TODO #

References #

Update and the conditional #

noncomputable def EgreRossiSprenger2026c.update {W : Type u_1} (s : Set W) (φ : EgreRossiSprenger2026b.Sentence W) :
Set W

The update s[A] of Definition 3.2 keeps the worlds of s where A is not false, provided A is true somewhere in s, and otherwise collapses to ∅.

Equations
Instances For

    The conditional asserts its consequent at the context updated with its antecedent, and is void where the world drops out of the update (§2).

    Equations
    Instances For
      theorem EgreRossiSprenger2026c.update_of_exists {W : Type u_1} {s : Set W} {φ : EgreRossiSprenger2026b.Sentence W} (h : ∃ w ∈ s, φ s w = 1) :
      theorem EgreRossiSprenger2026c.update_of_not_exists {W : Type u_1} {s : Set W} {φ : EgreRossiSprenger2026b.Sentence W} (h : ¬∃ w ∈ s, φ s w = 1) :
      update s φ = ∅
      theorem EgreRossiSprenger2026c.mem_update {W : Type u_1} {s : Set W} {φ : EgreRossiSprenger2026b.Sentence W} {w : W} :
      w ∈ update s φ ↔ (w ∈ s ∧ 0 ≤ φ s w) ∧ ∃ w' ∈ s, φ s w' = 1
      theorem EgreRossiSprenger2026c.update_nonempty_iff {W : Type u_1} {s : Set W} {φ : EgreRossiSprenger2026b.Sentence W} :
      (update s φ).Nonempty ↔ ∃ w ∈ s, φ s w = 1

      An update survives exactly when the sentence is true somewhere in the context.

      theorem EgreRossiSprenger2026c.update_congr {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} (h : φ s = ψ s) :
      update s φ = update s ψ

      The update reads the sentence only at the context itself.

      theorem EgreRossiSprenger2026c.update_zero {W : Type u_1} (s : Set W) :
      update s 0 = ∅
      @[simp]

      On a classical sentence the update is intersection, collapsed or not.

      theorem EgreRossiSprenger2026c.cond_apply_of_mem {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} {w : W} (h : w ∈ update s φ) :
      cond φ ψ s w = ψ (update s φ) w
      theorem EgreRossiSprenger2026c.cond_apply_of_notMem {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} {w : W} (h : w ∉ update s φ) :
      cond φ ψ s w = 0
      theorem EgreRossiSprenger2026c.cond_apply_of_not_exists {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} (h : ¬∃ w ∈ s, φ s w = 1) (w : W) :
      cond φ ψ s w = 0

      A conditional whose antecedent is nowhere true in the context is void throughout it.

      theorem EgreRossiSprenger2026c.neg_cond {W : Type u_1} (φ ψ : EgreRossiSprenger2026b.Sentence W) :
      -cond φ ψ = cond φ (-ψ)

      Negation commutes with the conditional (Negation Commutation, §2).

      With a classical antecedent and a context-free consequent, the conditional is Cooper's at every world of the context, as §2 represents it.

      Where p is false throughout the context, (p → q) → r is void throughout it, while [Coo68]'s table and (p ⊃ q) → r both give it the value of r, so the conditional is not Cooper's on the conditional language, and Left-Nesting, valid for Cooper valuations ([ERS26b]), fails.

      Acceptance and Avoid Void #

      A sentence avoids void in a context when it is not void at every world of it; by Avoid Void a sentence can be felicitously asserted only in a context where it avoids void.

      Equations
      Instances For

        A context accepts a sentence when the sentence is false at none of its worlds and avoids void in it (Definition 3.1).

        Equations
        Instances For
          theorem EgreRossiSprenger2026c.accepts_iff {W : Type u_1} {s : Set W} {φ : EgreRossiSprenger2026b.Sentence W} :
          Accepts s φ ↔ (∀ w ∈ s, 0 ≤ φ s w) ∧ ∃ w ∈ s, φ s w = 1

          The empty context accepts nothing.

          theorem EgreRossiSprenger2026c.accepts_ofSet_iff' {W : Type u_1} {s p : Set W} :
          Accepts s (EgreRossiSprenger2026b.Sentence.ofSet p) ↔ s.Nonempty ∧ s ⊆ p

          Accepting A is accepting □A (§3, after Definition 3.1).

          theorem EgreRossiSprenger2026c.accepts_dia_iff {W : Type u_1} {s : Set W} {φ : EgreRossiSprenger2026b.Sentence W} :
          Accepts s φ.dia ↔ ∃ w ∈ s, φ s w = 1

          A context accepts ◇A exactly when A is true somewhere in it.

          theorem EgreRossiSprenger2026c.accepts_cond_iff {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} :
          Accepts s (cond φ ψ) ↔ Accepts (update s φ) ψ

          A context accepts A → B iff its update with A accepts B (Proposition 3.3, the Ramsey test).

          Presupposition #

          A presupposes B when every context not accepting B makes A void at all its worlds, which by Avoid Void makes A unassertable there (Definition 4.1).

          Equations
          Instances For

            An elementary presupposition carrier with presupposition B and content C takes the value of C in a context accepting B, and is void throughout any other (Definition 4.2).

            Equations
            Instances For
              theorem EgreRossiSprenger2026c.Presupposes.not_avoidsVoid {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} (h : Presupposes φ ψ) (hs : ¬Accepts s ψ) :
              ¬AvoidsVoid s φ
              theorem EgreRossiSprenger2026c.update_carrier {W : Type u_1} (s : Set W) (ψ χ : EgreRossiSprenger2026b.Sentence W) :
              update s (carrier ψ χ) = if Accepts s ψ then update s χ else ∅

              Updating with a carrier is updating with its content in a context that accepts its presupposition, and collapses in any other.

              A presupposition projects through negation (Proposition 5.1).

              A presupposition projects through might (Proposition 5.1).

              A presupposition of the antecedent projects from a conditional (Proposition 5.1).

              theorem EgreRossiSprenger2026c.not_avoidsVoid_of_presupposes {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} (h : Presupposes φ ψ) (hs : ¬Accepts s ψ) (χ : EgreRossiSprenger2026b.Sentence W) :
              ¬AvoidsVoid s (-φ) ∧ ¬AvoidsVoid s φ.dia ∧ ¬AvoidsVoid s (cond φ χ)

              Where a presupposition of A fails, asserting ¬A, ◇A or A → C violates Avoid Void (Proposition 5.1).

              A conditional presupposes that its antecedent is possible (Fact 4.3).

              The compatibility presupposition projects through negation, might and the antecedent of a conditional (Fact 4.6).

              theorem EgreRossiSprenger2026c.not_presupposes_cond_antecedent {W : Type u_1} {φ ψ : EgreRossiSprenger2026b.Sentence W} (hψ : ψ.ContextFree) {w₁ w₂ : W} (h₁ : φ {w₁, w₂} w₁ = 1) (h₁' : ψ {w₁, w₂} w₁ = 1) (h₂ : φ {w₁, w₂} w₂ = -1) :
              ¬Presupposes (cond φ ψ) φ

              With a context-free consequent, a conditional does not presuppose its antecedent, as a context where antecedent and consequent are true at one world and the antecedent is false at the other shows (Fact 4.4, first claim).

              theorem EgreRossiSprenger2026c.not_presupposes_cond_neg {W : Type u_1} {φ ψ : EgreRossiSprenger2026b.Sentence W} (hψ : ψ.ContextFree) {w₁ : W} (h₁ : φ {w₁} w₁ = 1) (h₁' : ψ {w₁} w₁ = 1) :
              ¬Presupposes (cond φ ψ) (-φ) ∧ ¬Presupposes (cond φ ψ) (-φ).dia

              Nor does it presuppose the negation of its antecedent or the possibility of that negation (Fact 4.4, second and third claims).

              With a classical antecedent and consequent, a conditional avoids void exactly when its antecedent is compatible with the context, [Sta75]'s condition on asserting an indicative.

              The Cooper conjunction does not filter, since A ∧ B can be true where the presupposition of B fails (§5.1, example (25)).

              Quantified sentences (Fact 4.5) #

              The quantifiers over a domain shared by the worlds of the context are Cooper's conjunction and disjunction generalized to the instances, forallHaug and existsHaug.

              Universal quantification, the generalized Cooper conjunction of the instances.

              Equations
              Instances For

                Existential quantification, the generalized Cooper disjunction of the instances.

                Equations
                Instances For

                  Restricted universal and existential sentences presuppose that their restrictor is possibly nonempty, the counterpart of Fact 4.3 for quantifier restriction.

                  A context can fail to accept ∃xAx at one world while an A that is a B makes ∀x(Ax → Bx) and ∃x(Ax → Bx) true at another, so Fact 4.5 fails as printed.

                  theorem EgreRossiSprenger2026c.forallInstances_singleton {W : Type u_1} {D : Type} (A B : D → Set W) (w : W) :
                  forallInstances (fun (d : D) => cond (EgreRossiSprenger2026b.Sentence.ofSet (A d)) (EgreRossiSprenger2026b.Sentence.ofSet (B d))) {w} w = Belnap1970.restrictedForall (fun (d : D) => w ∈ A d) fun (d : D) => w ∈ B d

                  At a single world the restricted universal is [Bel70]'s restricted quantification, whose existential presupposition is bound to the world.

                  Updates on complex sentences (Proposition 5.2) #

                  theorem EgreRossiSprenger2026c.update_cond_nonempty_iff {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} :
                  (update s (cond φ ψ)).Nonempty ↔ (update (update s φ) ψ).Nonempty

                  An update on A → B survives exactly when the update on A and then on B does.

                  theorem EgreRossiSprenger2026c.update_cond_eq_empty_iff {W : Type u_1} {s : Set W} {φ ψ : EgreRossiSprenger2026b.Sentence W} :
                  update s (cond φ ψ) = ∅ ↔ update s φ = ∅ ∨ update (update s φ) ψ = ∅

                  An update on A → B collapses exactly when the update on A or its update on B does (Proposition 5.2, first case).

                  For a classical antecedent and a never void consequent, a surviving update on A → B removes from the context the worlds that the update on A and then on ¬B keeps (Proposition 5.2).

                  For classical disjuncts, with ¬A ∧ B possible, the update on A ∨ B is the update on ¬A → B (Proposition 5.2, (3)).

                  Projection by sequential update (§5.3–5.5) #

                  An interpreter updates on the first argument of a connective and evaluates the second in the result, in s[A] for a conjunction or a conditional and in s[¬A] for a disjunction; the assertion is felicitous when neither step collapses. For elementary carriers this is exactly admittance under [Pet79]'s filtering connectives together with the possibility of the content in [Kar74a]'s local context, though the connectives are Cooper's symmetric ones.

                  noncomputable def EgreRossiSprenger2026c.ofTrigger {W : Type u_1} {Atom : Type u_2} (I : Atom → Set W) (p p' : Atom) :

                  The elementary carrier of a trigger of the propositional fragment, presupposing I p and asserting I p'.

                  Equations
                  Instances For
                    theorem EgreRossiSprenger2026c.ofTrigger_singleton {W : Type u_1} {Atom : Type u_2} (I : Atom → Set W) (p p' : Atom) (w : W) :

                    At a single world the carrier is the trigger's local value, defined where the presupposition holds, so the global and the local treatments of presupposition part only in larger contexts.

                    Sequential update of an elementary conjunction, conditional or disjunction is felicitous exactly when the context admits it under [Pet79]'s filtering connectives and the content of its second argument is possible in [Kar74a]'s local context (§5.3–5.5).

                    Epistemic contradictions (§5.3, footnote 6) #

                    Sequential update on ¬p ∧ ◇p collapses (§5.3).

                    No context accepts ¬p ∧ ◇p (footnote 6).

                    theorem EgreRossiSprenger2026c.update_neg_conj_dia {W : Type u_1} {s p : Set W} (h : (s ∩ p).Nonempty) (h' : (s \ p).Nonempty) :

                    The update of Definition 3.2 on ¬p ∧ ◇p keeps the ¬p-worlds where p is open (footnote 6).

                    Where p holds at one world and fails at the other, Definition 3.2 updates ¬p ∧ ◇p to the second world, at which the sentence is then false, while the update of [ERS26c] collapses (footnote 6).

                    The earlier update #

                    Fact 4.3 rests on the collapse of Definition 3.2 at a sentence that is nowhere true. The update of [ERS26c] keeps the non-false worlds unless the update is self-defeating, and on it a conditional whose antecedent is void throughout the context takes its consequent's value.

                    Under the update of [ERS26c], A → B does not presuppose ◇A, since with A void everywhere no context accepts ◇A, yet A → ⊤ is true.

                    theorem EgreRossiSprenger2026c.cond_zero_left {W : Type u_1} (ψ : EgreRossiSprenger2026b.Sentence W) (s : Set W) (w : W) :
                    cond 0 ψ s w = 0

                    Under Definition 3.2 the same conditional is void throughout every context.

                    Inference (§6) #

                    C-validity is the consequence of [ERS26c], preservation of non-falsity at every context. Avoid Void enters consequence in two ways: C♭ preserves acceptance in the sense of Definition 3.1, and C# adds to C-validity that some premise-compatible context–world pair does not void the conclusion.

                    An inference is C♭-valid when every context accepting the premises accepts the conclusion.

                    Equations
                    Instances For

                      An inference is C#-valid when it is C-valid and not every context–world pair at which the premises are not false voids the conclusion (Definition 6.1).

                      Equations
                      Instances For
                        theorem EgreRossiSprenger2026c.entailsSharp_iff {W : Type u_1} {Γ : Set (EgreRossiSprenger2026b.Sentence W)} {ψ : EgreRossiSprenger2026b.Sentence W} :
                        EntailsSharp Γ ψ ↔ EgreRossiSprenger2026b.Entails Γ ψ ∧ ∃ (s : Set W), ∃ w ∈ s, (∀ φ ∈ Γ, 0 ≤ φ s w) ∧ ψ s w ≠ 0
                        theorem EgreRossiSprenger2026c.entailsSharp_iff_of_contextFree {W : Type u_1} {Γ : Set (EgreRossiSprenger2026b.Sentence W)} {ψ : EgreRossiSprenger2026b.Sentence W} (hΓ : ∀ φ ∈ Γ, φ.ContextFree) (hψ : ψ.ContextFree) :
                        EntailsSharp Γ ψ ↔ EgreRossiSprenger2026b.Entails Γ ψ ∧ ∃ (s : Set W), ∃ w ∈ s, (∀ φ ∈ Γ, 0 ≤ φ s w) ∧ ψ s w = 1

                        For context-free premises and conclusion, Definition 6.1's second clause is its gloss, that given C-validity some premise-compatible pair makes the conclusion true.

                        The gloss fails beyond context-free sentences, since p C#-entails ◇¬p → ⊥, which is true at no context–world pair.

                        False Antecedents, ¬A ⊨ A → C, is C-valid.

                        False Antecedents is not C♭-valid for a contingent classical antecedent.

                        False Antecedents is not C#-valid for a classical antecedent, since wherever ¬A is not false A → C is void.

                        theorem EgreRossiSprenger2026c.entailsFlat_neg_cond {W : Type u_1} (φ ψ : EgreRossiSprenger2026b.Sentence W) :
                        EntailsFlat {-cond φ ψ} (cond φ (-ψ)) ∧ EntailsFlat {cond φ (-ψ)} (-cond φ ψ)

                        Negation Commutation stays C♭-valid.

                        Or-to-If is not C♭-valid, since a context can accept p ∨ q by making p true and q false throughout, which voids ¬p → q.

                        Or-to-If is C#-valid when ¬p ∧ q is possible.

                        [Gib81]'s notes p → q and p → ¬q are accepted together by no context, so in C♭ they entail anything (§6, (33)–(34)).

                        Reductio from conflicting conditionals, p → q, p → ¬q ⊨ ¬p, is C#-valid when p can fail.

                        [vF99a]'s Strawson entailment between trivalent propositions is the strict-tolerant validity of [CERvR12], under which the conclusion is tolerantly true wherever the premise is strictly true (§6).