Documentation

Mathlib.ModelTheory.Satisfiability

First-Order Satisfiability #

This file deals with the satisfiability of first-order theories, as well as equivalence over them.

Main Definitions #

Main Results #

Implementation Details #

A theory is satisfiable if a structure models it.

Equations
Instances For

    A theory is finitely satisfiable if all of its finite subtheories are satisfiable.

    Equations
    Instances For

      The Compactness Theorem of first-order logic: A theory is satisfiable if and only if it is finitely satisfiable.

      theorem FirstOrder.Language.Theory.isSatisfiable_directed_union_iff {L : Language} {ι : Type u_1} [Nonempty ι] {T : ιL.Theory} (h : Directed (fun (x1 x2 : L.Theory) => x1 x2) T) :
      IsSatisfiable (⋃ (i : ι), T i) ∀ (i : ι), (T i).IsSatisfiable

      Any theory with an infinite model has arbitrarily large models.

      theorem FirstOrder.Language.Theory.isSatisfiable_iUnion_iff_isSatisfiable_iUnion_finset {L : Language} {ι : Type u_1} (T : ιL.Theory) :
      IsSatisfiable (⋃ (i : ι), T i) ∀ (s : Finset ι), IsSatisfiable (⋃ is, T i)

      A version of The Downward Löwenheim–Skolem theorem where the structure N elementarily embeds into M, but is not by type a substructure of M, and thus can be chosen to belong to the universe of the cardinal κ.

      The Upward Löwenheim–Skolem Theorem: If κ is a cardinal greater than the cardinalities of L and an infinite L-structure M, then M has an elementary extension of cardinality κ.

      The Löwenheim–Skolem Theorem: If κ is a cardinal greater than the cardinalities of L and an infinite L-structure M, then there is an elementary embedding in the appropriate direction between then M and a structure of cardinality κ.

      A consequence of the Löwenheim–Skolem Theorem: If κ is a cardinal greater than the cardinalities of L and an infinite L-structure M, then there is a structure of cardinality κ elementarily equivalent to M.

      A theory models a (bounded) formula when any of its nonempty models realizes that formula on all inputs.

      Equations
      Instances For

        A theory models a (bounded) formula when any of its nonempty models realizes that formula on all inputs.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem FirstOrder.Language.Theory.models_formula_iff {L : Language} {T : L.Theory} {α : Type w} {φ : L.Formula α} :
          T ⊨ᵇ φ ∀ (M : T.ModelType) (v : αM), φ.Realize v
          theorem FirstOrder.Language.Theory.models_sentence_iff {L : Language} {T : L.Theory} {φ : L.Sentence} :
          T ⊨ᵇ φ ∀ (M : T.ModelType), M φ
          theorem FirstOrder.Language.Theory.ModelsBoundedFormula.realize_formula {L : Language} {T : L.Theory} {α : Type w} {φ : L.Formula α} (h : T ⊨ᵇ φ) (M : Type u_1) [L.Structure M] [M T] [Nonempty M] {v : αM} :
          φ.Realize v
          theorem FirstOrder.Language.Theory.ModelsBoundedFormula.realize_boundedFormula {L : Language} {T : L.Theory} {α : Type w} {n : } {φ : L.BoundedFormula α n} (h : T ⊨ᵇ φ) (M : Type u_1) [L.Structure M] [M T] [Nonempty M] {v : αM} {xs : Fin nM} :
          φ.Realize v xs
          theorem FirstOrder.Language.Theory.models_of_models_theory {L : Language} {T : L.Theory} {α : Type w} {T' : L.Theory} (h : φT', T ⊨ᵇ φ) {φ : L.Formula α} (hφ : T' ⊨ᵇ φ) :
          T ⊨ᵇ φ
          theorem FirstOrder.Language.Theory.models_iff_finset_models {L : Language} {T : L.Theory} {φ : L.Sentence} :
          T ⊨ᵇ φ ∃ (T0 : Finset L.Sentence), T0 T T0 ⊨ᵇ φ

          An alternative statement of the Compactness Theorem. A formula φ is modeled by a theory iff there is a finite subset T0 of the theory such that φ is modeled by T0

          A theory is complete when it is satisfiable and models each sentence or its negation.

          Equations
          Instances For

            A theory is maximal when it is satisfiable and contains each sentence or its negation. Maximal theories are complete.

            Equations
            Instances For
              theorem FirstOrder.Language.Theory.IsMaximal.mem_of_models {L : Language} {T : L.Theory} (h : T.IsMaximal) {φ : L.Sentence} (hφ : T ⊨ᵇ φ) :
              φ T

              A theory is κ-categorical if all models of size κ are isomorphic.

              Equations
              Instances For
                theorem Cardinal.Categorical.isComplete {L : FirstOrder.Language} (κ : Cardinal.{w}) (T : L.Theory) (h : κ.Categorical T) (h1 : aleph0 κ) (h2 : lift.{w, max u v} L.card lift.{max u v, w} κ) (hS : T.IsSatisfiable) (hT : ∀ (M : T.ModelType), Infinite M) :

                The Łoś–Vaught Test : a criterion for categorical theories to be complete.