Documentation

Foundation.FirstOrder.Tarski.Operator

@[simp]
theorem FFL.FirstOrder.Semiterm.val_operator {L : Language} {M : Type w} {s : Tarski.Structure L M} {n : ℕ} {ξ : Type u_1} {k : ℕ} (b : Fin n → M) (f : ξ → M) (o : Operator L k) (v : Fin k → Semiterm L ξ n) :
val b f (o.operator v) = Operator.val (val b f ∘ v) o
theorem FFL.FirstOrder.Semiterm.val_operator' {L : Language} {M : Type w} {s : Tarski.Structure L M} {ξ : Type u_1} {k : ℕ} (b : Fin k → M) (f : ξ → M) (o : Operator L k) (v : Fin k → Semiterm L ξ k) :
val b f (o.operator v) = Operator.val (fun (i : Fin k) => val b f (v i)) o
theorem FFL.FirstOrder.Semiterm.Operator.val_comp {L : Language} {M : Type w} {s : Tarski.Structure L M} {k m : ℕ} (o₁ : Operator L k) (o₂ : Fin k → Operator L m) (v : Fin m → M) :
val v (o₁.comp o₂) = val (val v ∘ o₂) o₁
@[simp]
theorem FFL.FirstOrder.Semiterm.Operator.val_bvar {L : Language} {M : Type w} {s : Tarski.Structure L M} {n : ℕ} (x : Fin n) (v : Fin n → M) :
val v (bvar x) = v x
@[simp]
theorem FFL.FirstOrder.Semiformula.val_operator_and {L : Language} {M : Type w} {s : Tarski.Structure L M} {k : ℕ} {o₁ o₂ : Operator L k} {v : Fin k → M} :
Operator.val v (o₁.and o₂) ↔ Operator.val v o₁ ∧ Operator.val v o₂
@[simp]
theorem FFL.FirstOrder.Semiformula.val_operator_or {L : Language} {M : Type w} {s : Tarski.Structure L M} {k : ℕ} {o₁ o₂ : Operator L k} {v : Fin k → M} :
Operator.val v (o₁.or o₂) ↔ Operator.val v o₁ ∨ Operator.val v o₂
@[simp]
theorem FFL.FirstOrder.Semiformula.eval_operator {L : Language} {M : Type w} {s : Tarski.Structure L M} {n : ℕ} {ξ : Type u_1} {k : ℕ} {o : Operator L k} {e : Fin n → M} {f : ξ → M} {v : Fin k → Semiterm L ξ n} :
@[simp]
@[simp]
theorem FFL.FirstOrder.Tarski.Structure.add_eq_of_lang {L : Language} {M : Type u_1} [Structure L M] [L.Add] [Add M] [Structure.Add L M] {v : Fin 2 → M} :
@[simp]
theorem FFL.FirstOrder.Tarski.Structure.mul_eq_of_lang {L : Language} {M : Type u_1} [Structure L M] [L.Mul] [Mul M] [Structure.Mul L M] {v : Fin 2 → M} :
@[simp]
@[simp]
theorem FFL.FirstOrder.Tarski.Structure.eq_lang {L : Language} {M : Type u_1} [Structure L M] [L.Eq] [Structure.Eq L M] {v : Fin 2 → M} :
@[simp]
theorem FFL.FirstOrder.Tarski.Structure.lt_lang {L : Language} {M : Type u_1} [Structure L M] [L.LT] [LT M] [Structure.LT L M] {v : Fin 2 → M} :
@[simp]
theorem FFL.FirstOrder.Tarski.Structure.mem_lang {L : Language} {M : Type u_1} [Structure L M] [L.Mem] [Membership M M] [Structure.Mem L M] {v : Fin 2 → M} :
@[simp]
theorem FFL.FirstOrder.Semiformula.eval_ballLT {n : ℕ} {ξ : Type u_3} {L : Language} {M : Type u_1} {s : Tarski.Structure L M} {e : Fin n → M} {f : ξ → M} {t : Semiterm L ξ n} {φ : Semiformula L ξ (n + 1)} [Operator.LT L] [LT M] [Tarski.Structure.LT L M] :
(Eval e f) (ballLT t φ) ↔ ∀ x < Semiterm.val e f t, (Eval (x :> e) f) φ
@[simp]
theorem FFL.FirstOrder.Semiformula.eval_bexsLT {n : ℕ} {ξ : Type u_3} {L : Language} {M : Type u_1} {s : Tarski.Structure L M} {e : Fin n → M} {f : ξ → M} {t : Semiterm L ξ n} {φ : Semiformula L ξ (n + 1)} [Operator.LT L] [LT M] [Tarski.Structure.LT L M] :
(Eval e f) (bexsLT t φ) ↔ ∃ x < Semiterm.val e f t, (Eval (x :> e) f) φ
@[simp]
theorem FFL.FirstOrder.Semiformula.eval_ballLE {n : ℕ} {ξ : Type u_3} {L : Language} {M : Type u_1} {s : Tarski.Structure L M} {e : Fin n → M} {f : ξ → M} {t : Semiterm L ξ n} {φ : Semiformula L ξ (n + 1)} [Operator.LE L] [LE M] [Tarski.Structure.LE L M] :
(Eval e f) (ballLE t φ) ↔ ∀ x ≤ Semiterm.val e f t, (Eval (x :> e) f) φ
@[simp]
theorem FFL.FirstOrder.Semiformula.eval_bexsLE {n : ℕ} {ξ : Type u_3} {L : Language} {M : Type u_1} {s : Tarski.Structure L M} {e : Fin n → M} {f : ξ → M} {t : Semiterm L ξ n} {φ : Semiformula L ξ (n + 1)} [Operator.LE L] [LE M] [Tarski.Structure.LE L M] :
(Eval e f) (bexsLE t φ) ↔ ∃ x ≤ Semiterm.val e f t, (Eval (x :> e) f) φ
@[simp]
theorem FFL.FirstOrder.Semiformula.eval_ballMem {n : ℕ} {ξ : Type u_3} {L : Language} {M : Type u_1} {s : Tarski.Structure L M} {e : Fin n → M} {f : ξ → M} {t : Semiterm L ξ n} {φ : Semiformula L ξ (n + 1)} [Operator.Mem L] [Membership M M] [Tarski.Structure.Mem L M] :
(Eval e f) (ballMem t φ) ↔ ∀ x ∈ Semiterm.val e f t, (Eval (x :> e) f) φ
@[simp]
theorem FFL.FirstOrder.Semiformula.eval_bexsMem {n : ℕ} {ξ : Type u_3} {L : Language} {M : Type u_1} {s : Tarski.Structure L M} {e : Fin n → M} {f : ξ → M} {t : Semiterm L ξ n} {φ : Semiformula L ξ (n + 1)} [Operator.Mem L] [Membership M M] [Tarski.Structure.Mem L M] :
(Eval e f) (bexsMem t φ) ↔ ∃ x ∈ Semiterm.val e f t, (Eval (x :> e) f) φ