Documentation

ProvabilityLogic.Gentzen.Grz.Kripke

theorem Model.validate_gentzen_boxT {κ : Type u} [Nonempty κ] {α : Type v} [DecidableEq α] {M : Model κ α} {B : Formula α} {Γ Δ : FormulaFinset α} [Std.Refl Rel] (h : M (insert B Γ Δ)) :
M (insert (B) Γ Δ)
theorem Model.validate_gentzen_boxGrz {κ : Type u} [Nonempty κ] {α : Type v} [DecidableEq α] {M : Model κ α} {A : Formula α} {Γ : FormulaFinset α} [M.IsGrz] (h : M (insert ((A 🡒 A)) Γ.box {A})) :
M (Γ.box {A})
@[reducible, inline]
abbrev LogicGrz.trivial_Grz_model {α : Type u_1} :
Model (Fin 1) α
Equations
Instances For
    noncomputable def Sequent.subfmlsGrz {α : Type v} [DecidableEq α] (S : Sequent α) :
    Equations
    Instances For
      theorem LogicGrz.imp_mem_subfmlsGrz {α : Type v} [DecidableEq α] {A B : Formula α} {S : Sequent α} (h : A 🡒 B S.subfmlsGrz) :
      theorem LogicGrz.box_mem_subfmlsGrz {α : Type v} [DecidableEq α] {A : Formula α} {S : Sequent α} (h : A S.subfmlsGrz) :
      structure LogicGrz.ExpandedSequent {α : Type v} [DecidableEq α] (BS : Sequent α) extends Sequent α :

      A LogicGrz.ProofGentzen-unprovable sequent saturated for impL/impR, closed under the reflexivity rule boxT on its antecedent, and bounded by the subformula closure of a base sequent BS. The bound is deliberately asymmetric: the antecedent may range over the enlarged BS.subfmlsGrz but the succedent stays within the plain BS.subfmls, so that a boxed formula □A in the succedent is guaranteed to have its Grz companion A 🡒 □A inside BS.subfmlsGrz.

      Instances For
        theorem LogicGrz.ExpandedSequent.not_mem_both {α : Type v} [DecidableEq α] {BS : Sequent α} {S : ExpandedSequent BS} {A : Formula α} :
        ¬(A S.ant A S.suc)
        theorem LogicGrz.ExpandedSequent.of_mem_imp_ant {α : Type v} [DecidableEq α] {B : Formula α} {BS : Sequent α} {S : ExpandedSequent BS} {A : Formula α} (h : A 🡒 B S.ant := by grind) :
        A S.suc B S.ant
        theorem LogicGrz.ExpandedSequent.of_mem_imp_suc {α : Type v} [DecidableEq α] {B : Formula α} {BS : Sequent α} {S : ExpandedSequent BS} {A : Formula α} (h : A 🡒 B S.suc := by grind) :
        A S.ant B S.suc
        noncomputable def LogicGrz.ExpandedSequent.lindenbaum_indexed {α : Type v} [DecidableEq α] (S₀ : Sequent α) (S₀_unprovable : ¬⊢ᵍ[Grz] S₀) :

        One step of the Lindenbaum-style saturation for LogicGrz.ProofGentzen: process the given list of formulas, saturating the sequent for impL, impR and boxT while preserving LogicGrz.ProofGentzen-unprovability.

        Equations
        Instances For
          theorem LogicGrz.ExpandedSequent.subset_lindenbaum_indexed {α : Type v} [DecidableEq α] {S₀ : Sequent α} {S₀_unprovable : ¬⊢ᵍ[Grz] S₀} {Γ : FormulaList α} :
          S₀ (lindenbaum_indexed S₀ S₀_unprovable Γ)

          Every step of lindenbaum_indexed only ever extends S₀.

          theorem LogicGrz.ExpandedSequent.bounds_lindenbaum_indexed {α : Type v} [DecidableEq α] {S₀ : Sequent α} {S₀_unprovable : ¬⊢ᵍ[Grz] S₀} {Γ : FormulaList α} {BS : Sequent α} (S₀_ant : S₀.antBS.subfmlsGrz) (S₀_suc : S₀.sucBS.subfmls) :
          (↑(lindenbaum_indexed S₀ S₀_unprovable Γ)).antBS.subfmlsGrz (↑(lindenbaum_indexed S₀ S₀_unprovable Γ)).sucBS.subfmls

          Two-sided invariant of lindenbaum_indexed: if the antecedent of S₀ stays inside BS.subfmlsGrz and its succedent inside BS.subfmls, so do those of the resulting sequent. The bound is asymmetric like ExpandedSequent itself; each membership is derived from the invariant already established for the shorter list together with the closure lemmas for Sequent.subfmlsGrz, so no side condition on Γ is needed.

          theorem LogicGrz.ExpandedSequent.saturated_impL_lindenbaum_indexed {α : Type v} [DecidableEq α] {S₀ : Sequent α} {S₀_unprovable : ¬⊢ᵍ[Grz] S₀} {Γ : FormulaList α} ( : (List.map (fun (x : Formula α) => x.complexity) Γ).SortedLE) :
          have S := lindenbaum_indexed S₀ S₀_unprovable Γ; ∀ {A B : Formula α}, A 🡒 B ΓA 🡒 B (↑S).antA (↑S).suc B (↑S).ant

          impL-saturation part of saturated_lindenbaum_indexed: the antecedent of the saturated sequent is closed under the impL rule for implications from Γ.

          theorem LogicGrz.ExpandedSequent.saturated_impR_lindenbaum_indexed {α : Type v} [DecidableEq α] {S₀ : Sequent α} {S₀_unprovable : ¬⊢ᵍ[Grz] S₀} {Γ : FormulaList α} ( : (List.map (fun (x : Formula α) => x.complexity) Γ).SortedLE) :
          have S := lindenbaum_indexed S₀ S₀_unprovable Γ; ∀ {A B : Formula α}, A 🡒 B ΓA 🡒 B (↑S).sucA (↑S).ant B (↑S).suc

          impR-saturation part of saturated_lindenbaum_indexed: the succedent of the saturated sequent is closed under the impR rule for implications from Γ.

          theorem LogicGrz.ExpandedSequent.saturated_boxT_lindenbaum_indexed {α : Type v} [DecidableEq α] {S₀ : Sequent α} {S₀_unprovable : ¬⊢ᵍ[Grz] S₀} {Γ : FormulaList α} ( : (List.map (fun (x : Formula α) => x.complexity) Γ).SortedLE) :
          have S := lindenbaum_indexed S₀ S₀_unprovable Γ; ∀ {A : Formula α}, A ΓA (↑S).antA (↑S).ant

          boxT-saturation part of saturated_lindenbaum_indexed: the antecedent of the saturated sequent is closed under the boxT rule for boxed formulas from Γ.

          theorem LogicGrz.ExpandedSequent.saturated_lindenbaum_indexed {α : Type v} [DecidableEq α] {S₀ : Sequent α} {S₀_unprovable : ¬⊢ᵍ[Grz] S₀} {Γ : FormulaList α} ( : (List.map (fun (x : Formula α) => x.complexity) Γ).SortedLE) :
          have S := lindenbaum_indexed S₀ S₀_unprovable Γ; (∀ {A B : Formula α}, A 🡒 B ΓA 🡒 B (↑S).antA (↑S).suc B (↑S).ant) (∀ {A B : Formula α}, A 🡒 B ΓA 🡒 B (↑S).sucA (↑S).ant B (↑S).suc) ∀ {A : Formula α}, A ΓA (↑S).antA (↑S).ant

          Saturation of the Lindenbaum construction: the resulting sequent is simultaneously impL-, impR- and boxT-saturated for the formulas listed in Γ.

          noncomputable def LogicGrz.ExpandedSequent.lindenbaum {α : Type v} [DecidableEq α] {BS : Sequent α} [Fact ¬⊢ᵍ[Grz] BS] (S₀ : Sequent α) (S₀_unprovable : ¬⊢ᵍ[Grz] S₀) (S₀_ant : S₀.antBS.subfmlsGrz) (S₀_suc : S₀.sucBS.subfmls) :

          Lindenbaum-style saturation for LogicGrz.ProofGentzen: every unprovable sequent bounded by the subformula closure of BS extends to a saturated, boxT-closed, unprovable sequent whose bounds against BS are still asymmetric. Runs lindenbaum_indexed once over BS.subfmlsGrz sorted by complexity.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            theorem LogicGrz.ExpandedSequent.subset_lindenbaum {α : Type v} [DecidableEq α] {BS : Sequent α} [Fact ¬⊢ᵍ[Grz] BS] {S₀ : Sequent α} {S₀_unprovable : ¬⊢ᵍ[Grz] S₀} {S₀_ant : S₀.antBS.subfmlsGrz} {S₀_suc : S₀.sucBS.subfmls} :
            S₀ (lindenbaum S₀ S₀_unprovable S₀_ant S₀_suc).toSequent
            theorem LogicGrz.ExpandedSequent.ext {α : Type v} [DecidableEq α] {BS : Sequent α} {S T : ExpandedSequent BS} (ha : S.ant = T.ant) (hs : S.suc = T.suc) :
            S = T

            Two ExpandedSequents agree once their underlying antecedent and succedent agree.

            The canonical finite countermodel of an unprovable Grz sequent BS: worlds are the expanded sequents built over BS, an atom holds at a world exactly when it sits in its antecedent, and one world precedes another when its -preimage antecedent is contained in the other's, with the containment forced into equality once it also holds in the reverse direction. Unlike the GL countermodel this relation is reflexive; the reversed-containment clause is exactly what forces antisymmetry.

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

              Truth lemma for the Grz countermodel: membership in the antecedent of an expanded sequent forces the formula, and membership in the succedent refutes it.

              theorem LogicGrz.ProvableGentzen.Kripke.completeness {α : Type v} [DecidableEq α] {S : Sequent α} (h : ∀ {κ : Type v} [inst : Nonempty κ] (M : Model κ α) [M.IsFiniteGrz], M S) :

              Kripke completeness of the cut-free LogicGrz.ProofGentzen: a sequent valid in every finite Grz model is provable.

              theorem LogicGrz.ProvableGentzen.Kripke.soundness {α : Type v} [DecidableEq α] {S : Sequent α} (h : ⊢ᵍ[Grz] S) {κ : Type u_1} [Nonempty κ] (M : Model κ α) [M.IsGrz] :
              M S

              Kripke soundness of the cut-free LogicGrz.ProofGentzen: every provable sequent is valid in every Grz model.

              theorem LogicGrz.ProvableGentzen.Kripke.finite_soundness {α : Type v} [DecidableEq α] {S : Sequent α} (h : ⊢ᵍ[Grz] S) {κ : Type u_1} [Nonempty κ] (M : Model κ α) [M.IsFiniteGrz] :
              M S