Modal force: necessity (□) or possibility (◇). Reuses Core.Modality.ModalForce.
Instances For
A proposition is a function from worlds to truth values.
Instances For
The set of all worlds (from Attitudes.lean).
Instances For
Modal.Proposition equals Core.Proposition.BProp World.
A semantic theory for modal auxiliaries, with eval : ModalForce -> Proposition -> World -> Bool.
- name : String
Name of the theory.
- citation : String
Academic citation.
- eval : ModalForce → Proposition → Attitudes.Intensional.World → Bool
Core evaluation function: is modal force applied to proposition p true at world w?
Instances For
Necessity operator: □p is true at w.
Equations
- T.necessity p w = T.eval Core.Modality.ModalForce.necessity p w
Instances For
Possibility operator: ◇p is true at w.
Equations
- T.possibility p w = T.eval Core.Modality.ModalForce.possibility p w
Instances For
Weak necessity operator: □wφ is true at w.
Note: For Kratzer semantics, weak necessity differs from strong necessity
in the ordering source, not the quantifier. Use Directive.weakNecessity
(which takes a secondary ordering source) for the proper von Fintel & Iatridou
(2008) semantics. Calling T.eval .weakNecessity on a KratzerTheory returns
the same result as T.eval .necessity — the distinction lives in which
KratzerParams you pass, not in the force enum.
Equations
- T.weakNecessity p w = T.eval Core.Modality.ModalForce.weakNecessity p w
Instances For
Consistency check: □p -> ◇p.
Equations
- T.necessityEntailsPossibility p w = (!T.necessity p w || T.possibility p w)
Instances For
Duality check: □p ↔ ¬◇¬p at world w.
Equations
- T.dualityHolds p w = (T.necessity p w == !T.possibility (fun (w' : Semantics.Attitudes.Intensional.World) => !p w') w)
Instances For
Check duality across all worlds for a proposition.
Equations
- T.checkDuality p = Semantics.Modality.allWorlds'.all fun (w : Semantics.Attitudes.Intensional.World) => T.dualityHolds p w
Instances For
Check consistency across all worlds for a proposition.
Equations
Instances For
A theory is normal iff duality holds universally: ∀ p w, □p ↔ ¬◇¬p.
Equations
- T.isNormal = ∀ (p : Semantics.Modality.Proposition) (w : Semantics.Attitudes.Intensional.World), T.dualityHolds p w = true
Instances For
A theory is consistent iff □p -> ◇p universally (D axiom / seriality).
Equations
- T.isConsistent = ∀ (p : Semantics.Modality.Proposition) (w : Semantics.Attitudes.Intensional.World), T.necessityEntailsPossibility p w = true