Documentation

GL.Logic.Semantics

Semantics of GL #

Here we supply the semantics of GL.

structure Model (α : Type) :

Kripke models for GL (note: we add the transitivity and con_wf conditions directly into our definition of a model, i.e. this is not a general definition of a Krike model!)

Instances For
    instance instModelIsIrref {α : Type} (M : Model α) :

    GL Models are irreflexive.

    def evaluate {α : Type} :
    Model α × αFormulaProp

    Standard semantics for Kripke models.

    Equations
    Instances For
      theorem evaluate_neg {α : Type} (M : Model α) (u : α) (φ : Formula) :
      @[simp]
      theorem evaluate_and {α : Type} (M : Model α) (u : α) (φ ψ : Formula) :
      evaluate (M, u) (φ&ψ) evaluate (M, u) φ evaluate (M, u) ψ
      @[simp]
      theorem evaluate_imp {α : Type} (M : Model α) (u : α) (φ ψ : Formula) :
      evaluate (M, u) (~φ v ψ) evaluate (M, u) φevaluate (M, u) ψ
      def evaluateSeq {α : Type} :
      Model α × αSequentProp

      note: sequent are read disjunctively!

      Equations
      Instances For
        def evaluateSSeq {α : Type} :
        Model α × αSplitSequentProp

        note: ignores the left/right annotation.

        Equations
        Instances For
          Equations
          Instances For
            Equations
            Instances For
              Equations
              Instances For
                Equations
                Instances For
                  def modelSubstitution {α : Type} (M : Model α) (n : ) (φ : Formula) :

                  Model construction for substitution lemma.

                  Equations
                  Instances For
                    theorem substitution_lemma {α : Type} (M : Model α) (u : α) (n : ) (ψ φ : Formula) :

                    Substitution Lemma for modal logic!

                    theorem single_preserves_validity (n : ) (φ ψ : Formula) :
                    φsingle n ψ φ

                    Corollary of substitution lemma: If φ valid, then φ[ψ/n] is valid

                    theorem single_preserves_sem_equiv (n : ) (χ φ ψ : Formula) (φ_equiv_ψ : ((~φ v ψ)&~ψ v φ)) :
                    ((~single n χ φ v single n χ ψ)&~single n χ ψ v single n χ φ)

                    Corollary of substitution lemma: If φ ⟷ ψ valid, then φ[χ/n] ⟷ ψ[χ/n] is valid.