Partial Context Change Potentials #
Heim's context change potentials are partial functions on contexts: the
domain condition IS the presupposition ([Hei83]'s "c admits φ",
[Kar74]'s "c satisfies-the-presuppositions-of φ").
PartialCCP P := InfoStateOf P →. InfoStateOf P grounds this in mathlib's
PFun: Part.Dom is admittance, and the satisfaction law for conjunction —
"c admits φ∧ψ iff c admits φ and c[φ] admits ψ" — is the domain condition
of partial-function composition, true by construction (admits_pseq).
ofPartialProp sends a static partial proposition to its Heimian update:
defined iff the context globally satisfies the presupposition (whole-state
admittance, NOT per-world filtering), updating by intersecting with the
assertion. Under this bridge the filtering connectives of
Presupposition/Basic.lean stop being stipulations: andFilter,
impFilter, and orFilter are derived as the admittance conditions of
dynamic conjunction, conditional, and disjunction
(admits_pseq_ofPartialProp etc.).
Main declarations #
PartialCCP,admits,ofCCP,ofPartialProppseq,pneg,pcond,pdisj— the partial-update clauses ([Hei83] gives CCPs for not/and/if; the disjunction clause with ¬φ local context follows [Bea01])admits_pseq— the Karttunen satisfaction law, by constructionadmits_ofPartialProp_iff_presupSatisfied— admittance isContext.presupSatisfiedadmits_pseq_ofPartialProp,admits_pcond_ofPartialProp,admits_pdisj_ofPartialProp— the filtering connectives, derived
A partial context change potential: a partial function on information
states. The domain condition is the presupposition; Part.Dom is
[Hei83]'s admittance.
Equations
Instances For
u.admits s: the update is defined at s ([Hei83]'s "s admits u",
[Kar74]'s satisfaction). This is Part.Dom.
Equations
- u.admits s = (u s).Dom
Instances For
Total CCPs are partial CCPs with trivial presupposition.
Equations
- Semantics.Dynamic.Core.PartialCCP.ofCCP φ s = Part.some (φ s)
Instances For
The Heimian update of a static partial proposition: defined iff every world of the input satisfies the presupposition, updating by intersecting with the assertion.
The whole-state domain condition is what separates admittance from
per-world filtering (updateFromSat): a context containing a single
presupposition-failing world admits nothing, rather than silently
discarding the world.
Equations
- Semantics.Dynamic.Core.PartialCCP.ofPartialProp p s = { Dom := ∀ w ∈ s, p.presup w, get := fun (x : ∀ w ∈ s, p.presup w) => {w : W | w ∈ s ∧ p.assertion w} }
Instances For
Connectives #
Sequencing (dynamic conjunction): s[φ ∧ ψ] = s[φ][ψ]. This is
PFun.comp; the projection behavior of conjunction is the
composition law of partial functions.
Equations
- φ.pseq ψ = PFun.comp ψ φ
Instances For
Heim negation: s[¬φ] = s \ s[φ], defined iff s[φ] is.
Equations
- φ.pneg s = Part.map (fun (x : Semantics.Dynamic.Core.InfoStateOf P) => s \ x) (φ s)
Instances For
Heim conditional: s[if φ, ψ] = s \ (s[φ] \ s[φ][ψ]), defined iff
s[φ] and s[φ][ψ] are.
Equations
- φ.pcond ψ s = (φ s).bind fun (sφ : Semantics.Dynamic.Core.InfoStateOf P) => Part.map (fun (sφψ : Semantics.Dynamic.Core.InfoStateOf P) => s \ (sφ \ sφψ)) (ψ sφ)
Instances For
Disjunction with ¬φ local context for the second disjunct
([Bea01]; [Hei83] gives CCPs only for not/and/if):
s[φ ∨ ψ] = s[φ] ∪ (s \ s[φ])[ψ].
Equations
- φ.pdisj ψ s = (φ s).bind fun (sφ : Semantics.Dynamic.Core.InfoStateOf P) => Part.map (fun (sψ : Semantics.Dynamic.Core.InfoStateOf P) => sφ ∪ sψ) (ψ (s \ sφ))
Instances For
The satisfaction law #
The Karttunen satisfaction law ([Kar74]), by construction:
s admits φ ∧ ψ iff s admits φ and s[φ] admits ψ. The
statement is the domain condition of Part.bind.
The satisfaction law, with admittance of the first conjunct given.
Negation projects: s admits ¬φ iff s admits φ.
Conditional admittance: s admits if φ, ψ iff s admits φ and
s[φ] admits ψ — the same condition as conjunction
([Kar74]).
Disjunction admittance: s admits φ ∨ ψ iff s admits φ and the
¬φ local context s \ s[φ] admits ψ.
The Stalnaker bridge #
Admittance of an atomic update is global presupposition satisfaction.
Admittance is the static layer's Context.presupSatisfied: the dynamic
definedness condition and the satisfaction-theoretic context condition
are one notion.
Filtering connectives, derived #
Under ofPartialProp, the admittance conditions of the dynamic
connectives are pointwise exactly the presuppositions of the filtering
connectives of Presupposition/Basic.lean — Karttunen filtering is the
composition law of partial updates, not a stipulation.
Dynamic conjunction admits s iff s satisfies andFilter's
presupposition pointwise.
Dynamic conditional admits s iff s satisfies impFilter's
presupposition pointwise.
Dynamic disjunction admits s iff s satisfies orFilter's
presupposition pointwise: the ¬φ local context is Karttunen's
negative-antecedent filtering.
Negation projects the atomic presupposition unchanged.