Documentation

Cslib.Logics.Modal.Cube

Modal Logic Cube #

This module formalises the Modal Cube, including all the 15 foundational modal logics and their relationships.

References #

def Cslib.Logic.Modal.K (World : Type u_1) (Atom : Type u_2) :

The modal logic K.

Equations
Instances For
    def Cslib.Logic.Modal.T (World : Type u_1) (Atom : Type u_2) :

    The modal logic T.

    Equations
    Instances For
      def Cslib.Logic.Modal.B (World : Type u_1) (Atom : Type u_2) :

      The modal logic B.

      Equations
      Instances For
        def Cslib.Logic.Modal.Four (World : Type u_1) (Atom : Type u_2) :

        The modal logic 4.

        Equations
        Instances For
          def Cslib.Logic.Modal.Five (World : Type u_1) (Atom : Type u_2) :

          The modal logic 5.

          Equations
          Instances For
            def Cslib.Logic.Modal.K45 (World : Type u_1) (Atom : Type u_2) :

            The modal logic K45.

            Equations
            Instances For
              def Cslib.Logic.Modal.D (World : Type u_1) (Atom : Type u_2) :

              The modal logic D.

              Equations
              Instances For
                def Cslib.Logic.Modal.D4 (World : Type u_1) (Atom : Type u_2) :

                The modal logic D4.

                Equations
                Instances For
                  def Cslib.Logic.Modal.D5 (World : Type u_1) (Atom : Type u_2) :

                  The modal logic D5.

                  Equations
                  Instances For
                    def Cslib.Logic.Modal.D45 (World : Type u_1) (Atom : Type u_2) :

                    The modal logic D45.

                    Equations
                    Instances For
                      def Cslib.Logic.Modal.DB (World : Type u_1) (Atom : Type u_2) :

                      The modal logic DB.

                      Equations
                      Instances For
                        def Cslib.Logic.Modal.TB (World : Type u_1) (Atom : Type u_2) :

                        The modal logic TB.

                        Equations
                        Instances For
                          def Cslib.Logic.Modal.KB5 (World : Type u_1) (Atom : Type u_2) :

                          The modal logic KB5.

                          Equations
                          Instances For
                            def Cslib.Logic.Modal.S4 (World : Type u_1) (Atom : Type u_2) :

                            The modal logic S4.

                            Equations
                            Instances For
                              def Cslib.Logic.Modal.S5 (World : Type u_1) (Atom : Type u_2) :

                              The modal logic S5.

                              Equations
                              Instances For

                                Ordering of Modal Logics #

                                This section proves the essential inclusions of modal logics.

                                The other inclusions in the Modal Cube can be derived from the properties of and , as shown in k_subset_t.

                                theorem Cslib.Logic.Modal.k_subset_d {World : Type u_1} {Atom : Type u_2} :
                                K World Atom D World Atom
                                theorem Cslib.Logic.Modal.k_subset_b {World : Type u_1} {Atom : Type u_2} :
                                K World Atom B World Atom
                                theorem Cslib.Logic.Modal.k_subset_four {World : Type u_1} {Atom : Type u_2} :
                                K World Atom Four World Atom
                                theorem Cslib.Logic.Modal.k_subset_five {World : Type u_1} {Atom : Type u_2} :
                                K World Atom Five World Atom
                                theorem Cslib.Logic.Modal.d_subset_t {World : Type u_1} {Atom : Type u_2} :
                                D World Atom T World Atom
                                theorem Cslib.Logic.Modal.k_subset_t {World : Type u_1} {Atom : Type u_2} :
                                K World Atom T World Atom

                                Validity #

                                This section showcases how to prove the expected validities in the different modal logics.

                                theorem Cslib.Logic.Modal.K.k_valid {World : Type u_1} {Atom : Type u_2} {φ₁ φ₂ : Proposition Atom} :
                                (φ₁.impl φ₂).box.impl (φ₁.box.impl φ₂.box) K World Atom

                                The axiom K is valid in the logic K.

                                theorem Cslib.Logic.Modal.T.t_valid {World : Type u_1} {Atom : Type u_2} {φ : Proposition Atom} :
                                φ.impl φ.diamond T World Atom

                                The axiom T is valid in the logic T.