Documentation

GL.Split.CutProof

Defining GL-ext proof systems. #

Here we define the GL-ext proof system along with finitization and basic properties. We use the namespace SplitCut to distinguish from our general GL-proofs.

Basic components of the GL-ext proof system. #

Rule applications for the GL-ext proof system.

Instances For

    Endofunctor for the GL-ext proof system.

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

      Given a RuleApp, obtain the non-principal formulas.

      Equations
      Instances For
        theorem SplitCut.fₙ_alternate (r : RuleApp) :
        fₙ r = match r with | RuleApp.skp Δ => Δ | RuleApp.cutₗ Δ A => Δ | RuleApp.cutᵣ Δ A => Δ | RuleApp.wkₗ Δ A a => Δ \ {Sum.inl A} | RuleApp.wkᵣ Δ A a => Δ \ {Sum.inr A} | RuleApp.topₗ Δ a => Δ \ {Sum.inl } | RuleApp.topᵣ Δ a => Δ \ {Sum.inr } | RuleApp.axₗₗ Δ n a => Δ \ {Sum.inl (at n), Sum.inl (na n)} | RuleApp.axₗᵣ Δ n a => Δ \ {Sum.inl (at n), Sum.inr (na n)} | RuleApp.axᵣₗ Δ n a => Δ \ {Sum.inr (at n), Sum.inl (na n)} | RuleApp.axᵣᵣ Δ n a => Δ \ {Sum.inr (at n), Sum.inr (na n)} | RuleApp.andₗ Δ A B a => Δ \ {Sum.inl (A&B)} | RuleApp.andᵣ Δ A B a => Δ \ {Sum.inr (A&B)} | RuleApp.orₗ Δ A B a => Δ \ {Sum.inl (A v B)} | RuleApp.orᵣ Δ A B a => Δ \ {Sum.inr (A v B)} | RuleApp.boxₗ Δ A a => Δ \ {Sum.inl (A)} | RuleApp.boxᵣ Δ A a => Δ \ {Sum.inr (A)}

        Relating principal formulas, non-principal formulas, and the split sequent.

        def SplitCut.r {X : Type} (α : XT.obj X) (x : X) :

        Get RuleApp of a node (first projection).

        Equations
        Instances For
          def SplitCut.p {X : Type} (α : XT.obj X) (x : X) :

          Get premises of a node (second projection).

          Equations
          Instances For
            def SplitCut.edge {X : Type} (α : XT.obj X) (x y : X) :

            Edge relation induced by p.

            Equations
            Instances For
              structure SplitCut.Proof :

              Defininion of GL-ext proof.

              Instances For
                def SplitCut.proves (𝕏 : Proof) (Δ : SplitSequent) :
                Equations
                Instances For
                  Equations
                  Instances For