Documentation

Cslib.Logics.Modal.LogicalEquivalence

Logical Equivalence in Modal Logic #

This module defines logical equivalence for modal propositions. The definitions are parametric on the class of models under consideration.

We also instantiate LogicalEquivalence for Modal Logic K, i.e., equivalence for the class of all models.

def Cslib.Logic.Modal.Proposition.Equiv {World : Type u_1} {Atom : Type u_2} (S : Set (Model World Atom)) (φ₁ φ₂ : Proposition Atom) :

The modal propositions φ₁ and φ₂ are equivalent in the class of models S.

Equations
Instances For

    The modal propositions φ₁ and φ₂ are equivalent in the class of models S.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The modal propositions φ₁ and φ₂ are equivalent in the class of models S.

      Equations
      Instances For
        theorem Cslib.Logic.Modal.Proposition.equiv_def {World : Type u_1} {Atom : Type u_2} (S : Set (Model World Atom)) (φ₁ φ₂ : Proposition Atom) :
        Equiv S φ₁ φ₂ mS, ∀ (w : World), InferenceSystem.derivation InferenceSystem.Default { m := m, w := w, φ := φ₁.iff φ₂ }
        theorem Cslib.Logic.Modal.Proposition.equiv_iff {World : Type u_1} {Atom : Type u_2} (S : Set (Model World Atom)) (φ₁ φ₂ : Proposition Atom) :
        Equiv S φ₁ φ₂ mS, ∀ (w : World), InferenceSystem.derivation InferenceSystem.Default { m := m, w := w, φ := φ₁ } InferenceSystem.derivation InferenceSystem.Default { m := m, w := w, φ := φ₂ }
        theorem Cslib.Logic.Modal.Proposition.equiv_valid {World : Type u_1} {Atom : Type u_2} (S : Set (Model World Atom)) (φ₁ φ₂ : Proposition Atom) (h : Equiv S φ₁ φ₂) :
        valid S φ₁ valid S φ₂

        Propositional contexts.

        Instances For
          def Cslib.Logic.Modal.Proposition.Context.fill {Atom : Type u_1} (c : Context Atom) (φ : Proposition Atom) :

          Replaces a hole in a propositional context with a proposition.

          Equations
          Instances For
            instance Cslib.Logic.Modal.instIsEquivPropositionEquiv {World : Type u_1} {Atom : Type u_2} (S : Set (Model World Atom)) :

            Logical equivalence is an equivalence relation.

            instance Cslib.Logic.Modal.instCongruencePropositionEquiv {World : Type u_1} {Atom : Type u_2} (S : Set (Model World Atom)) :

            Logical equivalence is a congruence.

            structure Cslib.Logic.Modal.Satisfies.Context (World : Type u_1) (Atom : Type u_2) :
            Type (max u_1 u_2)

            Judgemental contexts.

            • m : Model World Atom

              The model to consider.

            • w : World

              The world to check propositions against.

            Instances For
              def Cslib.Logic.Modal.Satisfies.Context.fill {World : Type u_1} {Atom : Type u_2} (c : Context World Atom) (φ : Proposition Atom) :
              Judgement World Atom

              Fills a judgemental context with a proposition.

              Equations
              Instances For
                theorem Cslib.Logic.Modal.Satisfies.Context.fill_def {World : Type u_1} {Atom : Type u_2} {φ : Proposition Atom} {c : Context World Atom} :
                { m := c.m, w := c.w, φ := φ } = c<[φ]
                @[implicit_reducible]

                Logical equivalence for Modal Logic K. That is, no assumptions on models are made.

                Equations