Common Ground #
@cite{stalnaker-1974} @cite{stalnaker-2002}
Framework-agnostic context management following @cite{stalnaker-1974}: context sets, common ground as proposition lists, and decidable variants.
Multi-agent epistemic operators (knowledge, belief, common knowledge)
are in Theories/Semantics/Modality/EpistemicLogic.lean.
A context set is a predicate on worlds compatible with the common ground.
Equations
- Core.CommonGround.ContextSet W = (W → Prop)
Instances For
The trivial context: all worlds possible.
Equations
Instances For
The absurd context: no worlds possible.
Equations
Instances For
A world is in the context set.
Instances For
The context set is non-empty.
Instances For
A context entails a proposition iff it holds at all worlds in the context.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
A proposition is compatible with a context if it holds at some world.
Equations
- c.compatible p = ∃ (w : W), c w ∧ p w = true
Instances For
Update a context with a proposition: keep only worlds where it holds.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Update restricts the context.
Updated context entails the update proposition.
Updating with what's already entailed doesn't change the context.
Intersection of contexts: worlds in both.
Instances For
Union of contexts: worlds in either.
Instances For
Equations
Equations
Create a context from a single proposition: worlds where it holds.
Equations
- Core.CommonGround.ContextSet.fromProp p w = (p w = true)
Instances For
Entailment is monotonic: smaller context entails more.
Update is monotonic in the context.
The context set determined by a common ground.
Equations
- cg.contextSet w = ((cg.propositions.all fun (p : BProp W) => p w) = true)
Instances For
Empty common ground (no shared beliefs).
Instances For
Empty CG gives trivial context set.
Adding a proposition restricts the context set.
Decidable context set: all worlds compatible with common knowledge.
Mirrors ContextSet but uses Bool instead of Prop, enabling computation.
Equations
- Core.CommonGround.BContextSet W = (W → Bool)
Instances For
Coerce a decidable context set to its classical (Prop-valued) counterpart.
Instances For
The trivial context: all worlds possible.
Equations
Instances For
The absurd context: no worlds possible.
Equations
Instances For
Update a decidable context with a decidable proposition.
Instances For
Filter a list of worlds to those compatible with the context.
Equations
- c.filterWorlds worlds = List.filter c worlds
Instances For
Trivial context set coerces to classical trivial.
Update corresponds to classical update under coercion.
HasContextSet: Uniform Access to Context Sets #
@cite{ginzburg-2012} @cite{stalnaker-2002} @cite{krifka-2015}
Common ground appears in many guises across discourse theories:
CG W (@cite{stalnaker-2002}), CommitmentSlate W (@cite{krifka-2015}),
CommitmentSpace W (commitment trees), DistributionalCG W (probabilistic),
DGB (dialogue gameboard FACTS), and InfoState (TTR gameboard).
All of these induce a context set — the set of worlds compatible with
accumulated information.
HasContextSet provides uniform extraction, enabling framework-agnostic
discourse operations and bridge theorems connecting the representations.
A discourse state from which a context set can be extracted.
Every discourse state representation (Stalnaker CG, Krifka commitment spaces, Ginzburg DGB, distributional CG, TTR gameboard) projects to a context set: the worlds compatible with the state's accumulated information.
- toContextSet : S → ContextSet W
Instances
A discourse state entails a proposition if the context set does.
Equations
Instances For
Updating a discourse state's context set with a proposition.
Equations
Instances For
Entailment via HasContextSet reduces to ContextSet.entails.
Equations
- Core.CommonGround.instHasContextSetContextSet = { toContextSet := id }
Equations
- Core.CommonGround.instHasContextSetCG = { toContextSet := Core.CommonGround.CG.contextSet }
Equations
The CG instance agrees with CG.contextSet.
Adding to CG restricts the HasContextSet extraction.