The classical fragment of BSML #
The NE-free fragment of BSML, Aloni's BSML∅, behaves like classical modal logic. A BSML
formula is classically true at a single world, Realize, with the modal clause taken from
ModalLogic.Diamond, and on NE-free formulas team support is classical truth at every world
of the team, in both polarities. Consequence and equivalence then coincide with their classical
definitions, as Aloni and Anttila observe.
Main definitions #
Realize M φ w: classical truth ofφat the worldwofM.ClassicalConsequence: classical modal consequence.
Main results #
eval_iff_forall_realize,support_iff_forall_realize,antiSupport_iff_forall_not_realize: anNE-free formula is supported by a team iff it is true at each of its worlds, and anti-supported iff false at each.support_singleton_iff_realize: the singleton case,{w} ⊨⁺ φ ↔ M, w ⊨ φ.consequence_iff_classicalConsequence: onNE-free formulas, BSML consequence is classical modal consequence.equivalent_iff_classicalConsequence: onNE-free formulas, equivalence is mutual classical consequence.
Implementation notes #
Realize is total: NE is true at every world, since singletons are non-empty, so the
equations of Proposition 2.2.16 are stated for NE-free formulas only, as in the sources.
The proposition is one induction over the polarity parameter of eval, with the split
clauses discharged by Team.mem_tensor_flat and the ◇-support clause by
Team.exists_nonempty_subset_forall_iff. Flatness of the NE-free fragment is also
derived from its closure properties in Properties.lean (isFlat_support_of_neFree).
References #
Classical truth #
Realize M φ w is the classical Kripke truth of φ at the world w. Split disjunction is
pointwise, ◇ is ModalLogic.Diamond over M.accessible, and NE is true.
Equations
- BSML.Realize M (BSML.Formula.atom p) x✝ = M.val p x✝
- BSML.Realize M BSML.Formula.ne x✝ = True
- BSML.Realize M ψ.neg x✝ = ¬BSML.Realize M ψ x✝
- BSML.Realize M (ψ₁.conj ψ₂) x✝ = (BSML.Realize M ψ₁ x✝ ∧ BSML.Realize M ψ₂ x✝)
- BSML.Realize M (ψ₁.disj ψ₂) x✝ = (BSML.Realize M ψ₁ x✝ ∨ BSML.Realize M ψ₂ x✝)
- BSML.Realize M ψ.poss x✝ = ModalLogic.Diamond M.accessible (BSML.Realize M ψ) x✝
Instances For
Equations
- BSML.instDecidableRealize M (BSML.Formula.atom p) x✝ = BSML.instDecidableRealize._aux_1 M p x✝
- BSML.instDecidableRealize M BSML.Formula.ne x✝ = isTrue trivial
- BSML.instDecidableRealize M ψ.neg x✝ = instDecidableNot
- BSML.instDecidableRealize M (ψ₁.conj ψ₂) x✝ = instDecidableAnd
- BSML.instDecidableRealize M (ψ₁.disj ψ₂) x✝ = instDecidableOr
- BSML.instDecidableRealize M ψ.poss x✝ = Finset.decidableExistsAndFinset
The ◇ clause is ModalLogic.Diamond over M.accessible, definitionally.
Support is pointwise truth (Proposition 2.2.16) #
An NE-free formula is supported by t iff it is true at every world of t, and
anti-supported iff it is false at every world of t ([Ant21] Proposition 2.2.16,
both polarities at once).
A singleton team supports an NE-free formula iff its world realizes it,
{w} ⊨⁺ φ ↔ M, w ⊨ φ.
Consequence is classical consequence (Fact 15) #
ψ is a classical modal consequence of φ when every world of every model realizing φ
realizes ψ.
Equations
- BSML.ClassicalConsequence φ ψ = ∀ (M : ModalLogic.KripkeModel W Atom) (w : W), BSML.Realize M φ w → BSML.Realize M ψ w
Instances For
On NE-free formulas BSML consequence is classical modal consequence ([Alo22] Fact 15,
[Ant21] Fact 2.2.17).
On NE-free formulas equivalence is mutual classical consequence ([Ant21]
Fact 2.2.17).