Documentation

Linglib.Core.Logic.Intensional.Defs

Polymorphic Kripke Foundation #

@cite{kripke-1963}

The bare foundation for accessibility-restricted modal logic, parameterised by {W : Type*} — no Frame, no Entity, no type system. This file holds the definitions and very simple lemmas that the rest of Core.Logic.Intensional (including Montague's S5 box/diamond in Quantification.lean and the modal-axiom theorems in RestrictedModality.lean) builds on.

Defs.lean is the foundation file in mathlib's sense: just the data and the relationships among frame conditions. Modal axiom correspondence theorems (K/T/D/4/B/5), monotonicity, distribution, restriction, the Logic lattice, and the Gallin hierarchy live in RestrictedModality.lean.

@[reducible, inline]

An accessibility relation on worlds. R w v means world v is accessible from world w.

Equations
Instances For
    @[reducible, inline]
    abbrev Core.Logic.Intensional.AgentAccessRel (W : Type u_1) (E : Type u_2) :
    Type (max u_2 u_1)

    Agent-indexed accessibility relation: each agent has their own accessibility relation over worlds.

    Equations
    Instances For

      Universal accessibility: every world is accessible from every world.

      Equations
      Instances For

        Empty accessibility: no world is accessible from any world.

        Equations
        Instances For

          Reflexive (identity) accessibility: each world accesses only itself.

          Equations
          Instances For

            Reflexivity: every world accesses itself.

            Equations
            Instances For

              Seriality: every world accesses at least one world.

              Equations
              Instances For

                Transitivity.

                Equations
                Instances For

                  Symmetry.

                  Equations
                  Instances For

                    Euclideanness.

                    Equations
                    Instances For

                      S5 frames are equivalence relations.

                      S4 frames are preorders.

                      M implies D (reflexive implies serial).

                      M + 5 implies B.

                      M + 5 implies 4.

                      def Core.Logic.Intensional.boxR {W : Type u_1} (R : AccessRel W) (p : WProp) (w : W) :

                      Restricted necessity: □_R p at world w holds iff p v for all v accessible from w.

                      ⟦□_R φ⟧^w = 1 iff ⟦φ⟧^v = 1 for all v with R(w,v).

                      This is the Kripke generalization of DWP's Rule B.13 (box); the Core.Logic.Intensional.box operator in Quantification.lean is the universal-accessibility special case.

                      Equations
                      Instances For
                        def Core.Logic.Intensional.diamondR {W : Type u_1} (R : AccessRel W) (p : WProp) (w : W) :

                        Restricted possibility: ◇_R p at world w holds iff p v for some v accessible from w. Dual of boxR.

                        Equations
                        Instances For
                          theorem Core.Logic.Intensional.boxR_neg_diamondR {W : Type u_1} (R : AccessRel W) (p : WProp) (w : W) :
                          boxR R p w = ¬diamondR R (fun (v : W) => ¬p v) w

                          □_R p ↔ ¬◇_R ¬p — restricted modal duality.

                          theorem Core.Logic.Intensional.diamondR_neg_boxR {W : Type u_1} (R : AccessRel W) (p : WProp) (w : W) :
                          diamondR R p w = ¬boxR R (fun (v : W) => ¬p v) w

                          ◇_R p ↔ ¬□_R ¬p — dual form.