Veltman (1996): Defaults in Update Semantics #
This file formalizes the paper of Veltman, which treats normally φ as an update of an agent's
expectations rather than a sentence about them. The framework of section 1, acceptance as a fixed
point of the update, the three notions of validity and additivity, with Propositions 1.2 and 1.3,
is Semantics/Dynamic/Consequence.lean.
Section 2 studies might on sets of worlds, whose updates of Definition 2.3 are CCP.up,
CCP.neg and CCP.might. The test might φ satisfies Strengthening, Idempotence and Monotony,
Lemma 2.8, might_le, might_idem and might_monotone, but not Persistence, so the system is
not additive, not_isLowerSet_might and not_isAdditive_might. Examples 2.7 show that
consistency depends on the order of the text, consistent_might_neg and
not_consistent_up_might_neg, and that validity₁ is neither right nor left monotone. On the
fragment without might validity is classical, valid₁_up_iff.
A state of section 3 pairs an expectation pattern, a preorder on worlds, with the agent's knowledge
of the facts; normally φ refines the pattern in favour of the φ-worlds and presumably φ tests
whether φ holds in the optimal worlds. That system is DynamicSemantics.ExpState, and Examples
3.10 are stated here as verdicts of validity₁ on the paper's four worlds, together with the
rain-or-snow contrast by which normally (p ∨ q) is stronger than normally p, rain_or_snow and
normally_not_normally_or. Rules and facts are additive, so a rule that follows under validity₁
follows under validity₃ as well, ex310_rule_persists_valid₃, while the default inference
normally p ⊩ presumably p is valid₁ but neither valid₂ nor valid₃, not_valid₂_presumably and
not_valid₃_presumably, which is why Veltman concentrates on validity₁.
Section 4 adds the restricted rules if φ, then normally ψ. An expectation frame assigns a pattern
to every domain of worlds, Definition 4.2, Frame; a world is normal in a domain when it is
top-ranked in every subdomain containing it, Definition 4.3, Normal; a frame is coherent when
every nonempty domain has a normal world, Coherent; accepting a rule refines the pattern at the
rule's domain and crashes when the result is incoherent, Definitions 4.5 and 4.6, rule; and a set
of defaults applies within the agent's information when every domain extending it has a normal
world complying with them, Definition 4.9, Applies. The optimal worlds comply with a maximal
applicable set of defaults, Definition 4.13, State.optimal, computed over the accepted rules by
Proposition 4.14. Validity is validity₁, Valid. Proved in general are the refinement clause of
Definition 4.5, Frame.ofRules_cons_self and Frame.ofRules_cons_of_ne, Proposition 4.7,
coherent acceptance being applicability of the new rule within its own domain,
coherent_cons_iff, Conditional Identity and Conjunction of Consequents, rule_self and
conjConsequents, and the section 5 observation that Weakening the Consequent never crashes a
state, weakenConsequent_coherent. Checked on the paper's eight worlds are Examples 4.8 and 4.11,
the Nixon diamond, the student who is presumably an unemployed adult, Independence, defeasible
Modus Tollens, Modus Ponens over Modus Tollens on a cyclic net, the failure of Hypothetical
Syllogism, Contraposition and Strengthening the Antecedent beside their defeasible versions, and
the near-validity of Strengthening with a Consequent and Disjunction of Antecedents.
Implementation notes #
The update with normally φ of DynamicSemantics.ExpState does not crash, so the second clause of
Example 3.10(i) is stated as the failure of the acceptability condition, ex310_conflict.
Every frame an agent reaches from the minimal state is the total frame refined by the rules it has
accepted, so a frame of section 4 is presented by its list of rules, Frame.ofRules, which makes
coherence, normality, applicability and the optimal worlds decidable and lets each verdict be
checked by decide over the atoms p, q and r. Acceptance then compares the facts and the
frames of two states rather than their presentations, so Valid is
DynamicSemantics.EntailsFrom ⊤ read up to presentation. The comparison with the default logics
of Asher and Morreau in section 5 is discussed in the paper and not formalized.
References #
Might (§2) #
The test might φ never adds possibilities (Lemma 2.8(i)).
The test might φ is idempotent (Lemma 2.8(ii)).
The test might φ is monotone when φ is (Lemma 2.8(iii)).
A text is consistent when updating some state with it does not yield the absurd state (Definition 2.4).
Equations
- Veltman1996.Consistent ψs = ∃ (σ : Set W), (List.foldl (fun (σ : Set W) (ψ : DynamicSemantics.CCP W) => ψ σ) σ ψs).Nonempty
Instances For
Might ¬p, p is consistent, but p, might ¬p is not (Example 2.7(i)).
Right monotonicity fails: might ¬p ⊩ might ¬p, but might ¬p, p ⊮ might ¬p (Example 2.7(ii)).
Left monotonicity fails: ⊩ might p, but ¬p ⊮ might p (Example 2.7(iii)).
Might p is not persistent: the minimal state accepts it, but the more informed state that has learnt ¬p does not (§2).
So might p is not additive, although it satisfies Strengthening, Idempotence and Monotony (§2).
On the fragment without might validity is classical: the conclusion holds at every world at which all the premises hold (§2).
Rules with exceptions (§3) #
Equations
- Veltman1996.instDecidableEqPQWorld x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Veltman1996.atomP Veltman1996.PQWorld.w₁ = True
- Veltman1996.atomP Veltman1996.PQWorld.w₃ = True
- Veltman1996.atomP x✝ = False
Instances For
Equations
- Veltman1996.atomQ Veltman1996.PQWorld.w₂ = True
- Veltman1996.atomQ Veltman1996.PQWorld.w₃ = True
- Veltman1996.atomQ x✝ = False
Instances For
The minimal state 0.
Equations
Instances For
The opposite rule is then unacceptable, since no normal world of 0[normally p] is a
¬p-world (3.10(i)). The update with normally does not crash here, so this is the
acceptability condition rather than the crash.
Normally p ⊩ presumably p (3.10(ii)).
The default inference normally p ⊩ presumably p is not valid₂, since a state may already know
that p fails, and Veltman concentrates on validity₁ for this reason (§1.3).
Nor is it valid₃: a state that knows ¬p accepts normally p without presuming p.
Exceptions defeat presumptions, normally p, ¬p ⊮ presumably p (3.10(ii)).
Exceptions do not defeat the rule, normally p, ¬p ⊩ normally p (3.10(ii)).
Rules and facts are additive, so the persistence of the rule holds under every notion of validity (Proposition 1.3), unlike the presumption.
Irrelevant information does not block a presumption, normally p, q ⊩ presumably p (3.10(iii)).
Information to the contrary does, normally p, q, ¬p ⊮ presumably p (3.10(iii)).
Two rules each yield their presumption, normally p, normally q ⊩ presumably p (3.10(iv)).
An exception to one rule defeats its presumption, normally p, normally q, ¬p ⊮ presumably p (3.10(iv)).
But not the other rule's, since two rules are independent, normally p, normally q, ¬p ⊩ presumably q (3.10(iv)).
The state normally p, normally q, ¬(p ∧ q) is ambiguous and presumes neither p nor q
(3.10(v)).
Normally it rains; it is not raining; so presumably it snows is invalid, but normally it
rains or snows; it is not raining; so presumably it snows is valid (§3), because a rule normally
(p ∨ q) says what to expect when p fails.
Hence normally p ⊮ normally (p ∨ q), since the second rule further refines the pattern.
Rules for exceptions (§4) #
Equations
- Veltman1996.instDecidableEqRule.decEq { domain := a, default := a_1 } { domain := b, default := b_1 } = if h : a = b then h ▸ if h : a_1 = b_1 then h ▸ isTrue ⋯ else isFalse ⋯ else isFalse ⋯
Instances For
An expectation frame assigns to every domain d a pattern on d (Definition 4.2).
Equations
- Veltman1996.Frame W = ((d : Finset W) → Preorder ↥d)
Instances For
The frame presented by a list of rules assigns to d the total pattern refined by the defaults
of the rules with domain d (Proposition 4.14).
Equations
- Veltman1996.Frame.ofRules R d = Preorder.ofCriteria (fun (w : ↥d) (r : Veltman1996.Rule W) => ↑w ∈ r.default) {r : Veltman1996.Rule W | r ∈ R ∧ r.domain = d}
Instances For
At the rule's own domain the pattern is the old one refined with r.default (Definition
4.5(ii)(b)).
A world w is normal in πd when w ∈ d and w is at least as normal as every world of every
subdomain of d containing it, under that subdomain's pattern (Definition 4.3(i)).
Equations
- Veltman1996.Normal π d w = (w ∈ d ∧ ∀ d' ⊆ d, ∀ (hw : w ∈ d') (v : W) (hv : v ∈ d'), ⟨w, hw⟩ ≤ ⟨v, hv⟩)
Instances For
In a presented frame, only the rules' own domains can disqualify a world.
Accepting a rule can only remove normal worlds.
Equations
- Veltman1996.instDecidableRelSubtypeMemFinsetLe_studies R d w v = decidable_of_iff (∀ r ∈ R, r.domain = d → ↑v ∈ r.default → ↑w ∈ r.default) ⋯
The normal worlds nπd (Definition 4.3(ii)).
Equations
- Veltman1996.normal π d = Finset.filter (Veltman1996.Normal π d) d
Instances For
w complies with the defaults D (Definition 4.9(i)).
Equations
- Veltman1996.Complies w D = ∀ r ∈ D, w ∈ r.domain → w ∈ r.default
Instances For
Equations
A proposition e is a default in πd when d ∩ e ≠ ∅ and πd ∘ e = πd, that is, when πd
already respects e (Definition 4.2(ii)).
Equations
- Veltman1996.IsDefault π d e = ((d ∩ e).Nonempty ∧ DynamicSemantics.ExpState.Respects (π d) fun (w : ↥d) => ↑w ∈ e)
Instances For
Every accepted rule with a nonempty domain-default intersection is a default of the presented frame.
Conjunction of Consequents holds, since once φ ⇝ ψ and φ ⇝ χ have been accepted the pattern
at ⟦φ⟧ respects ψ ∧ χ, so φ ⇝ (ψ ∧ χ) refines nothing.
A frame is coherent when every nonempty domain has a normal world (Definition 4.3(iii)).
Equations
- Veltman1996.Coherent π = ∀ (d : Finset W), d.Nonempty → (Veltman1996.normal π d).Nonempty
Instances For
The defaults D jointly apply within s when every domain extending s has a normal world
complying with them (Definition 4.9(ii)).
Equations
- Veltman1996.Applies π D s = ∀ (d : Finset W), s ⊆ d → ∃ w ∈ Veltman1996.normal π d, Veltman1996.Complies w D
Instances For
A coherent frame stays coherent under a new rule r with r.domain ∩ r.default ≠ ∅ iff r
applies within its own domain, which means that no domain extending r.domain has all its normal
worlds in r.domain \ r.default (Proposition 4.7).
Weakening the Consequent is almost valid (§5). A state that has accepted φ ⇝ ψ never crashes
on φ ⇝ (ψ ∨ χ), since any normal world of a domain extending ⟦φ⟧ that lies in ⟦φ⟧ already
satisfies ψ.
Equations
- Veltman1996.instDecidableEqFrameOfRules R R' = decidable_of_iff (∀ (d : Finset W) (w v : ↥d), w ≤ v ↔ w ≤ v) ⋯
Equations
- Veltman1996.instDecidableCoherent π = { decide := decide (∀ a ∈ Finset.univ, (fun (d : Finset W) => d.Nonempty → (Veltman1996.normal π d).Nonempty) a), reflects_decide := ⋯ }
A state (π, s) consists of the frame, presented by the accepted rules, and the agent's
knowledge of the facts (Definition 4.4).
- rules : List (Rule W)
- info : Finset W
Instances For
Equations
- Veltman1996.instDecidableEqState.decEq { rules := a, info := a_1 } { rules := b, info := b_1 } = if h : a = b then h ▸ if h : a_1 = b_1 then h ▸ isTrue ⋯ else isFalse ⋯ else isFalse ⋯
Instances For
The minimal state 0 has the total frame and every world possible.
Equations
- Veltman1996.State.init = { rules := [], info := Finset.univ }
Instances For
The frame of a state.
Equations
Instances For
D is a maximal applicable set of defaults in σ (Definition 4.13(i)), over the
accepted rules (Proposition 4.14).
Equations
- σ.MaximalApplicable D = (Veltman1996.Applies σ.frame D σ.info ∧ ∀ r ∈ σ.rules, Veltman1996.Applies σ.frame (r :: D) σ.info → r ∈ D)
Instances For
Equations
- One or more equations did not get rendered due to their size.
The optimal worlds mσ are the worlds of s complying with a maximal applicable set of
defaults (Definition 4.13(ii)).
Equations
- σ.optimal = {w ∈ σ.info | ∃ D ∈ σ.rules.sublists, σ.MaximalApplicable D ∧ Veltman1996.Complies w D}
Instances For
The update σ[φ ⇝ ψ] refines the frame at ⟦φ⟧ with ⟦ψ⟧, and crashes if ⟦φ⟧ ∩ ⟦ψ⟧ = ∅ or
the refined frame is incoherent (Definition 4.6).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Normally ψ is (ψ ∨ ¬ψ) ⇝ ψ (Definition 4.1).
Equations
- Veltman1996.normally ψ = Veltman1996.rule (ψ ∪ ψᶜ) ψ
Instances For
The update σ[φ] for a factual φ eliminates the ¬φ-worlds, and crashes if none remain.
Equations
- Veltman1996.fact φ σ = if (σ.info ∩ φ).Nonempty then { rules := σ.rules, info := σ.info ∩ φ } else Veltman1996.State.absurd
Instances For
The update σ[presumably φ] is a test that passes iff φ holds in every optimal world
(Definition 4.13(iii)).
Equations
- Veltman1996.presumably φ σ = if σ.optimal ⊆ φ then σ else Veltman1996.State.absurd
Instances For
An argument is valid₁ when the minimal state updated with the premises in order accepts the conclusion (§1.2).
Equations
- Veltman1996.Valid prems concl = (List.foldl (fun (σ : Veltman1996.State W) (φ : Veltman1996.State W → Veltman1996.State W) => φ σ) Veltman1996.State.init prems).Accepts concl
Instances For
Conditional Identity holds, since φ ⇝ φ refines nothing and is accepted in the minimal state
for nonempty φ.
Veltman's eight worlds #
The world wᵢ is the set of atoms whose bits are set in i, so w₀ = ∅, w₁ = {p}, w₂ = {q}, w₃ = {p, q}, w₄ = {r}, …, w₇ = {p, q, r}.
Equations
- Veltman1996.World = Fin 8
Instances For
Equations
- Veltman1996.p = {x : Veltman1996.World | ↑x % 2 = 1}
Instances For
Equations
- Veltman1996.q = {x : Veltman1996.World | ↑x / 2 % 2 = 1}
Instances For
Equations
- Veltman1996.r = {x : Veltman1996.World | ↑x / 4 % 2 = 1}
Instances For
An exception to normally p for q is acceptable, but a further exception for ¬q is not,
being one exception too many, and neither is normally q on top of it (Examples 4.8(i)–(iii)).
The more specific rule takes precedence, and an exception to an exception restores the general verdict (Examples 4.11(i)–(iii), the verdicts of §4).
Comparisons (§5) #
Defeasible Modus Tollens is valid, p ⇝ q, ¬q ⊩ presumably ¬p.
Strengthening with a Consequent and Disjunction of Antecedents are almost valid, since the derived rule never crashes the state, though it is not accepted.