Documentation

Foundation.IntProp.Formula

inductive LO.IntProp.Formula (α : Type u) :
Instances For
    Equations
    Instances For
      instance LO.IntProp.Formula.instRepr {α : Type u_1} [ToString α] :
      Equations
      @[simp]
      theorem LO.IntProp.Formula.and_inj {α : Type u_1} (φ₁ ψ₁ φ₂ ψ₂ : Formula α) :
      φ₁ φ₂ = ψ₁ ψ₂ φ₁ = ψ₁ φ₂ = ψ₂
      @[simp]
      theorem LO.IntProp.Formula.or_inj {α : Type u_1} (φ₁ ψ₁ φ₂ ψ₂ : Formula α) :
      φ₁ φ₂ = ψ₁ ψ₂ φ₁ = ψ₁ φ₂ = ψ₂
      @[simp]
      theorem LO.IntProp.Formula.imp_inj {α : Type u_1} (φ₁ ψ₁ φ₂ ψ₂ : Formula α) :
      φ₁ φ₂ = ψ₁ ψ₂ φ₁ = ψ₁ φ₂ = ψ₂
      @[simp]
      theorem LO.IntProp.Formula.neg_inj {α : Type u_1} (φ ψ : Formula α) :
      φ = ψ φ = ψ
      theorem LO.IntProp.Formula.iff_def {α : Type u_1} (φ ψ : Formula α) :
      φ ψ = (φ ψ) (ψ φ)
      Equations
      Instances For
        @[simp]
        theorem LO.IntProp.Formula.complexity_bot {α : Type u_1} :
        .complexity = 0
        @[simp]
        theorem LO.IntProp.Formula.complexity_top {α : Type u_1} :
        .complexity = 0
        @[simp]
        theorem LO.IntProp.Formula.complexity_atom {α : Type u_1} (a : α) :
        (atom a).complexity = 0
        @[simp]
        theorem LO.IntProp.Formula.complexity_imp {α : Type u_1} (φ ψ : Formula α) :
        (φ ψ).complexity = φ.complexity ψ.complexity + 1
        @[simp]
        theorem LO.IntProp.Formula.complexity_imp' {α : Type u_1} (φ ψ : Formula α) :
        (φ.imp ψ).complexity = φ.complexity ψ.complexity + 1
        @[simp]
        theorem LO.IntProp.Formula.complexity_and {α : Type u_1} (φ ψ : Formula α) :
        (φ ψ).complexity = φ.complexity ψ.complexity + 1
        @[simp]
        theorem LO.IntProp.Formula.complexity_and' {α : Type u_1} (φ ψ : Formula α) :
        (φ.and ψ).complexity = φ.complexity ψ.complexity + 1
        @[simp]
        theorem LO.IntProp.Formula.complexity_or {α : Type u_1} (φ ψ : Formula α) :
        (φ ψ).complexity = φ.complexity ψ.complexity + 1
        @[simp]
        theorem LO.IntProp.Formula.complexity_or' {α : Type u_1} (φ ψ : Formula α) :
        (φ.or ψ).complexity = φ.complexity ψ.complexity + 1
        def LO.IntProp.Formula.cases' {α : Type u_1} {C : Formula αSort w} (hfalsum : C ) (hverum : C ) (hatom : (a : α) → C (atom a)) (hneg : (φ : Formula α) → C (φ)) (himp : (φ ψ : Formula α) → C (φ ψ)) (hand : (φ ψ : Formula α) → C (φ ψ)) (hor : (φ ψ : Formula α) → C (φ ψ)) (φ : Formula α) :
        C φ
        Equations
        Instances For
          def LO.IntProp.Formula.rec' {α : Type u_1} {C : Formula αSort w} (hfalsum : C ) (hverum : C ) (hatom : (a : α) → C (atom a)) (hneg : (φ : Formula α) → C φC (φ)) (himp : (φ ψ : Formula α) → C φC ψC (φ ψ)) (hand : (φ ψ : Formula α) → C φC ψC (φ ψ)) (hor : (φ ψ : Formula α) → C φC ψC (φ ψ)) (φ : Formula α) :
          C φ
          Equations
          Instances For
            def LO.IntProp.Formula.hasDecEq {α : Type u_1} [DecidableEq α] (φ ψ : Formula α) :
            Decidable (φ = ψ)
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def LO.IntProp.Formula.toNat {α : Type u_1} [Encodable α] :
              Formula α
              Equations
              Instances For
                @[irreducible]
                Equations
                Instances For
                  theorem LO.IntProp.Formula.ofNat_toNat {α : Type u_1} [Encodable α] (φ : Formula α) :
                  ofNat φ.toNat = some φ
                  @[simp]
                  theorem LO.IntProp.Formula.subst_atom {α : Type u_1} {s : αFormula α} {a : α} :
                  subst s (atom a) = s a
                  @[simp]
                  theorem LO.IntProp.Formula.subst_and {α : Type u_1} {s : αFormula α} {φ ψ : Formula α} :
                  subst s (φ ψ) = subst s φ subst s ψ
                  @[simp]
                  theorem LO.IntProp.Formula.subst_or {α : Type u_1} {s : αFormula α} {φ ψ : Formula α} :
                  subst s (φ ψ) = subst s φ subst s ψ
                  @[simp]
                  theorem LO.IntProp.Formula.subst_imp {α : Type u_1} {s : αFormula α} {φ ψ : Formula α} :
                  subst s (φ ψ) = subst s φ subst s ψ
                  @[simp]
                  theorem LO.IntProp.Formula.subst_neg {α : Type u_1} {s : αFormula α} {φ : Formula α} :
                  subst s (φ) = subst s φ
                  @[simp]
                  theorem LO.IntProp.Formula.subst_top {α : Type u_1} {s : αFormula α} :
                  @[simp]
                  theorem LO.IntProp.Formula.subst_bot {α : Type u_1} {s : αFormula α} :
                  @[reducible, inline]
                  abbrev LO.IntProp.Theory (α : Type u) :
                  Equations
                  Instances For
                    @[reducible, inline]
                    abbrev LO.IntProp.Context (α : Type u) :
                    Equations
                    Instances For