Documentation

Foundation.IntProp.Formula

Equations
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
@[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
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
def LO.IntProp.Formula.hasDecEq {α : Type u_1} [DecidableEq α] (φ ψ : Formula α) :
Decidable (φ = ψ)
Equations
  • One or more equations did not get rendered due to their size.
def LO.IntProp.Formula.toNat {α : Type u_1} [Encodable α] :
Formula α
Equations
@[irreducible]
Equations
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
@[reducible, inline]
abbrev LO.IntProp.Context (α : Type u) :
Equations