Stalnaker (1975): Indicative Conditionals #
This file formalizes [Sta75]'s account of the direct argument, either the butler or
the gardener did it, so if the butler didn't, the gardener did. The indicative conditional
has the selection-function truth condition of [Sta68], and entails the material
conditional without being entailed by it (Conditional.selectionConditional_subset_materialImp,
not_entails_direct). What makes the argument compelling is pragmatic: in a context, an
indicative conditional's selection function keeps to the context set whenever the antecedent
is compatible with it (pragmaticConstraint), and a disjunction is appropriately asserted only
where each disjunct can hold without the other. Under Stalnaker's earlier condition (4) on
selection functions, the constraint says that restricting the selection function to the context
set changes nothing at context worlds (pragmaticConstraint_iff_restrict). Under the
constraint, a proposition accepted in the context is accepted under any compatible antecedent
(selectionConditional_of_accepted), the indicative and the material conditional are accepted
in the same contexts (accepted_iff_material), and so the direct argument, contraposition and
the hypothetical syllogism are reasonable for
indicatives though invalid (direct_argument, contraposition, hypothetical_syllogism).
The appendix's calculus makes reasonable inference a logical notion: a pragmatic
interpretation assigns each sentence a proposition in a context, an appropriateness relation
and a change function obeying two postulates, and an inference is reasonable when every
context in which its premisses are appropriately asserted in sequence comes to entail its
conclusion (PragmaticInterpretation.Reasonable). An entailment whose conclusion expresses
the same proposition in every context is reasonable (Reasonable.of_entails). On the
language of the direct argument, whose contexts carry a
selection function obeying the constraint, the direct argument is reasonable in the language
(direct_argument_reasonable) though not an entailment in it. The fatalist's argument
(fatalism) draws each of its conditional conclusions reasonably within the context that
supposes a disjunct, and fails only by detaching them: constructive dilemma, valid for
entailment (Entails.or), does not hold for reasonable inference.
Implementation notes #
A context of the conditional language is a context set together with a selection function obeying the pragmatic constraint for it, and assertion restricts the selection function to the updated set, so that indicatives conform to the constraint after every assertion. The appropriateness relation encodes the paper's two generalizations, that a disjunction requires each disjunct to be open without the other and that an indicative conditional requires a compatible antecedent, together with the first postulate. Subjunctive conditionals, which suspend the constraint, are outside the language.
References #
The pragmatic constraint #
The pragmatic constraint on a selection function relative to a context set C. At a world of
C, an antecedent true somewhere in C selects a world of C, which Stalnaker glosses as the
worlds of the context set being closer to each other than to any world outside it.
Equations
- Stalnaker1975.pragmaticConstraint s C = ∀ (w : W) (A : Set W), w ∈ C → (A ∩ C).Nonempty → s.sel w A ∈ C
Instances For
The restriction of a selection function to a context obeys the pragmatic constraint for that context.
Under Stalnaker's condition (4), the pragmatic constraint says that restricting the selection function to the context set changes nothing at context worlds.
At a context world, for an antecedent compatible with the context and a selection function meeting the pragmatic constraint, the selection conditional holds whenever the material conditional holds throughout the context.
The indicative conditional in a context #
A proposition accepted in a context is accepted under any antecedent compatible with the context, once the selection function obeys the pragmatic constraint.
The direct argument is reasonable, since in a context accepting the disjunction where the negated first disjunct is open, the indicative conditional is accepted.
In a context compatible with the antecedent, the indicative and the material conditional are accepted together.
Contraposition is reasonable for indicatives, since when the conditional is accepted and the negated consequent is open, the contrapositive is accepted.
The hypothetical syllogism is reasonable for indicatives, since when both conditionals are accepted and the first antecedent is open, the chained conditional is accepted.
Reasonable inference #
A pragmatic interpretation of a language, the paper's appendix, gives the proposition each sentence expresses in a context, an appropriateness relation, and a change function, obeying the two postulates that an appropriate assertion is compatible with the context and that an assertion adds its proposition to the context set.
- contextSet : K → Set W
The context set of a context.
- prop : L → K → Set W
The proposition a sentence expresses in a context.
- appropriate : L → K → Prop
Appropriateness of asserting a sentence in a context.
- change : L → K → K
The context resulting from asserting a sentence.
- appropriate_compatible (P : L) (k : K) : self.appropriate P k → (self.contextSet k ∩ self.prop P k).Nonempty
The first postulate: an appropriate assertion is compatible with the context.
- contextSet_change (P : L) (k : K) : self.contextSet (self.change P k) = self.contextSet k ∩ self.prop P k
The second postulate: an assertion narrows the context set to its proposition.
Instances For
The context after asserting a sequence of sentences.
Instances For
A sequence of sentences is appropriate when each is appropriate in the context the preceding ones produce.
Equations
- I.AppropriateSeq [] x✝ = True
- I.AppropriateSeq (P :: σ) x✝ = (I.appropriate P x✝ ∧ I.AppropriateSeq σ (I.change P x✝))
Instances For
An inference is reasonable when every context in which the premisses are appropriately asserted in sequence comes to entail the conclusion.
Equations
- I.Reasonable σ P = ∀ (k : K), I.AppropriateSeq σ k → I.contextSet (I.changeSeq σ k) ⊆ I.prop P (I.changeSeq σ k)
Instances For
A sentence entails another in the language when the premiss's proposition is included in the conclusion's in every context.
Instances For
A sentence is rigid when it expresses the same proposition in every context.
Instances For
An entailment of a rigid conclusion is a reasonable inference.
Constructive dilemma holds for entailment, since with disjunction interpreted as union, entailments from the disjuncts yield an entailment from the disjunction.
The language of the direct argument #
The sentences are built from atoms by negation, disjunction, and the indicative conditional.
- atom {Atom : Type u_1} (a : Atom) : Sentence Atom
- not {Atom : Type u_1} (P : Sentence Atom) : Sentence Atom
- or {Atom : Type u_1} (P Q : Sentence Atom) : Sentence Atom
- ifThen {Atom : Type u_1} (P Q : Sentence Atom) : Sentence Atom
Instances For
A context is a context set with a selection function obeying the pragmatic constraint for it.
- set : Set W
The context set.
- sel : Conditional.SelectionFunction W
The selection function of the context.
- constraint : pragmaticConstraint self.sel self.set
Indicative conditionals conform to the constraint.
Instances For
The proposition a sentence expresses in a context under a valuation of the atoms.
Equations
- Stalnaker1975.Sentence.prop V (Stalnaker1975.Sentence.atom a) x✝ = V a
- Stalnaker1975.Sentence.prop V P.not x✝ = (Stalnaker1975.Sentence.prop V P x✝)ᶜ
- Stalnaker1975.Sentence.prop V (P.or Q) x✝ = Stalnaker1975.Sentence.prop V P x✝ ∪ Stalnaker1975.Sentence.prop V Q x✝
- Stalnaker1975.Sentence.prop V (P.ifThen Q) x✝ = Conditional.selectionConditional x✝.sel (Stalnaker1975.Sentence.prop V P x✝) (Stalnaker1975.Sentence.prop V Q x✝)
Instances For
An assertion is appropriate when it is compatible with the context, a disjunction moreover requires each disjunct to be open without the other, and an indicative conditional requires a compatible antecedent.
Equations
- One or more equations did not get rendered due to their size.
- Stalnaker1975.Sentence.Appropriate V (P.ifThen Q) x✝ = ((x✝.set ∩ Stalnaker1975.Sentence.prop V P x✝).Nonempty ∧ (x✝.set ∩ Stalnaker1975.Sentence.prop V (P.ifThen Q) x✝).Nonempty)
- Stalnaker1975.Sentence.Appropriate V x✝¹ x✝ = (x✝.set ∩ Stalnaker1975.Sentence.prop V x✝¹ x✝).Nonempty
Instances For
The context after accepting a proposition has the narrowed context set with the selection function restricted to it.
Instances For
The pragmatic interpretation of the language under a valuation.
Equations
- One or more equations did not get rendered due to their size.
Instances For
An inference is reasonable in the language when it is reasonable under every valuation.
Equations
- Stalnaker1975.ReasonableInL W σ P = ∀ (V : Atom → Set W), (Stalnaker1975.interp V).Reasonable σ P
Instances For
A sentence entails another in the language when it does so under every valuation.
Equations
- Stalnaker1975.EntailsInL W P Q = ∀ (V : Atom → Set W), (Stalnaker1975.interp V).Entails P Q
Instances For
The indicative conditional entails the material conditional in the language.
The direct argument is reasonable in the language, since wherever a disjunction of atoms is appropriately asserted, the context comes to accept the conditional from the negated first disjunct to the second.
The direct argument is not an entailment #
Equations
- Stalnaker1975.instDecidableEqSuspect x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Stalnaker1975.instReprSuspect = { reprPrec := Stalnaker1975.instReprSuspect.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
The atoms of the butler-or-gardener argument.
Instances For
Equations
- Stalnaker1975.instDecidableEqCulprit x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Stalnaker1975.instReprCulprit = { reprPrec := Stalnaker1975.instReprCulprit.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
The valuation on which each atom names its suspect.
Equations
Instances For
A selection function that, off the antecedent, reaches for someone else first.
Equations
- One or more equations did not get rendered due to their size.
Instances For
At a world where the butler did it, the butler or the gardener did it holds while if the butler didn't, the gardener did fails: the direct argument is no entailment.
Fatalism #
The atoms of the fatalist's argument are being killed and taking precautions.
Instances For
Equations
- Stalnaker1975.instDecidableEqFate x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
- Stalnaker1975.instReprFate.repr Stalnaker1975.Fate.killed prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Stalnaker1975.Fate.killed")).group prec✝
Instances For
Equations
- Stalnaker1975.instReprFate = { reprPrec := Stalnaker1975.instReprFate.repr }
A world records whether one is killed and whether one takes precautions.
Equations
- Stalnaker1975.Outcome = (Bool × Bool)
Instances For
The valuation of the fatalist's atoms.
Equations
- Stalnaker1975.fateOf Stalnaker1975.Fate.killed = {w : Stalnaker1975.Outcome | w.1 = true}
- Stalnaker1975.fateOf Stalnaker1975.Fate.precautions = {w : Stalnaker1975.Outcome | w.2 = true}
Instances For
A selection function that, off the antecedent, reaches first for survival.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The null context of the fatalist, with a selection function reaching first for survival.
Equations
- Stalnaker1975.fateCtx = { set := Set.univ, sel := Stalnaker1975.survivalFirst, constraint := ⋯ }
Instances For
I will be killed.
Instances For
I take precautions.
Instances For
The fatalist argues I will be killed or not; if I will, then even with precautions I will be killed; if I will not, then even without precautions I will not be; so precautions are ineffective or unnecessary. In the null context the disjunction is appropriate, and each conditional is accepted in the context supposing its disjunct; but the disjunction of the conditionals is not accepted in the context of the disjunctive premiss, since at a world where one is killed without precautions neither conditional holds. Constructive dilemma fails for reasonable inference.