Documentation

Foundation.FirstOrder.LK.Basic

One-sided sequent calculus for first-order classical logic #

@[reducible, inline]
Equations
Instances For
    Equations
    Instances For
      @[simp]
      theorem FFL.FirstOrder.LK.Sequent.embed_add {L : Language} (Γ Δ : Multiset (Sentence L)) :
      embed (Γ + Δ) = embed Γ + embed Δ

      Derivation for $\mathbf{LK}$ #

      Derivation for $\mathbf{LK}$

      Instances For
        @[simp]
        theorem FFL.FirstOrder.LK.Derivation.height_id {L : Language} {k : ℕ} {r : L.Rel k} {v : Fin k → Semiterm L ℕ 0} :
        (identity r v).height = 0
        @[simp]
        theorem FFL.FirstOrder.LK.Derivation.height_cut {L : Language} {Γ Δ : Sequent L} {φ : Proposition L} (dp : ⊢ᴸᴷ¹ Γ + ⦃φ⦄) (dn : ⊢ᴸᴷ¹ Δ + ⦃∼φ⦄) :
        (dp.cut dn).height = (max dp.height dn.height).succ
        @[simp]
        theorem FFL.FirstOrder.LK.Derivation.height_and {L : Language} {Γ : Sequent L} {φ ψ : Proposition L} (dp : ⊢ᴸᴷ¹ Γ + ⦃φ⦄) (dq : ⊢ᴸᴷ¹ Γ + ⦃ψ⦄) :
        (dp.and dq).height = (max dp.height dq.height).succ
        @[simp]
        @[reducible, inline]
        abbrev FFL.FirstOrder.LK.Derivation.cast {L : Language} {Γ Δ : Sequent L} (d : ⊢ᴸᴷ¹ Δ) (e : Δ = Γ := by abel) :
        Equations
        Instances For
          @[simp]
          theorem FFL.FirstOrder.LK.Derivation.height_cast {L : Language} {Γ Δ : Sequent L} (d : ⊢ᴸᴷ¹ Δ) (e : Δ = Γ) :
          @[instance_reducible]
          Equations
          • One or more equations did not get rendered due to their size.
          def FFL.FirstOrder.LK.Derivation.contra {L : Language} {Γ Δ : Sequent L} [L.DecidableEq] (d : ⊢ᴸᴷ¹ Δ) (t : Multiset.Traversal Γ) (h : Δ ⊆ Γ := by simp) :

          Applies structural rules along supplied traversals (a routine derived rule).

          Equations
          Instances For
            def FFL.FirstOrder.LK.Derivation.tensor {L : Language} {Γ Δ : Sequent L} {φ ψ : Proposition L} (tΓ : Multiset.Traversal Γ) (tΔ : Multiset.Traversal Δ) (dφ : ⊢ᴸᴷ¹ Γ + ⦃φ⦄) (dψ : ⊢ᴸᴷ¹ Δ + ⦃ψ⦄) :
            ⊢ᴸᴷ¹ Γ + Δ + ⦃φ ⋏ ψ⦄
            Equations
            Instances For
              @[instance_reducible]
              Equations
              • One or more equations did not get rendered due to their size.
              @[instance_reducible]
              Equations
              • One or more equations did not get rendered due to their size.
              Equations
              Instances For

                Classical proof system #

                Instances For
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[reducible, inline]
                    Equations
                    Instances For
                      theorem FFL.FirstOrder.LK.Proof.lMap {L₁ : Language} {L₂ : Language} (Φ : L₁.Hom L₂) {φ : Proposition L₁} :
                      structure FFL.FirstOrder.Theory.Proof {L : Language} (T : Theory L) (σ : Sentence L) :
                      Type u_1
                      Instances For

                        A singleton derivation gives a theory proof without using any axioms.

                        Equations
                        Instances For
                          @[instance_reducible]
                          Equations
                          • One or more equations did not get rendered due to their size.
                          @[instance_reducible]
                          Equations
                          • One or more equations did not get rendered due to their size.
                          @[instance_reducible]
                          Equations
                          • One or more equations did not get rendered due to their size.
                          noncomputable def FFL.FirstOrder.Theory.Proof.cut {L : Language} {T : Theory L} {φ : Sentence L} {U : Theory L} (h : T ⊢!* U) (b : U ⊢! φ) :
                          T ⊢! φ

                          Replaces each used axiom by its proof in another theory. This is a routine consequence of implication introduction and modus ponens.

                          Equations
                          Instances For
                            @[instance_reducible]
                            Equations
                            • One or more equations did not get rendered due to their size.
                            theorem FFL.FirstOrder.Theory.Proof.weakerThan_of_le {L : Language} {T U : Theory L} (h : T ⊆ U) :
                            T ⪯ U
                            @[instance_reducible]
                            Equations
                            • One or more equations did not get rendered due to their size.

                            Theory #

                            Equations
                            Instances For
                              @[simp]
                              theorem FFL.FirstOrder.Theory.mem_theory {L : Language} {σ : Sentence L} {T : Theory L} :
                              σ ∈ T.theory ↔ T ⊢ σ