Documentation

Mathlib.ModelTheory.Types

Type Spaces #

This file defines the space of complete types over a first-order theory. (Note that types in model theory are different from types in type theory.)

Main Definitions #

Main Results #

Implementation Notes #

TODO #

structure FirstOrder.Language.Theory.CompleteType {L : Language} (T : L.Theory) (α : Type w) :
Type (max (max u v) w)

A complete type over a given theory in a certain type of variables is a maximally consistent (with the theory) set of formulas in that type.

Instances For
    theorem FirstOrder.Language.Theory.CompleteType.false_of_mem_of_not_mem {L : Language} {T : L.Theory} (hT : T.IsSatisfiable) {φ : L.Sentence} ( : φ T) (hφ' : BoundedFormula.not φ T) :
    False
    theorem FirstOrder.Language.Theory.CompleteType.not_mem_iff {L : Language} {T : L.Theory} {α : Type w} (p : T.CompleteType α) (φ : (L.withConstants α).Sentence) :
    Formula.not φ p φp
    theorem FirstOrder.Language.Theory.CompleteType.iInter_setOf_subset {L : Language} {T : L.Theory} {α : Type w} {ι : Type u_1} (S : ι(L.withConstants α).Theory) :
    ⋂ (i : ι), {p : T.CompleteType α | S i p} = {p : T.CompleteType α | ⋃ (i : ι), S i p}
    theorem FirstOrder.Language.Theory.CompleteType.toList_foldr_inf_mem {L : Language} {T : L.Theory} {α : Type w} {p : T.CompleteType α} {t : Finset (L.withConstants α).Sentence} :
    List.foldr (fun (x1 x2 : (L.withConstants α).Sentence) => x1x2) t.toList p t p
    def FirstOrder.Language.Theory.typeOf {L : Language} (T : L.Theory) {α : Type w} {M : Type w'} [L.Structure M] [Nonempty M] [M T] (v : αM) :

    The set of all formulas true at a tuple in a structure forms a complete type.

    Instances For
      @[simp]
      theorem FirstOrder.Language.Theory.CompleteType.mem_typeOf {L : Language} {T : L.Theory} {α : Type w} {M : Type w'} [L.Structure M] [Nonempty M] [M T] {v : αM} {φ : (L.withConstants α).Sentence} :
      theorem FirstOrder.Language.Theory.CompleteType.formula_mem_typeOf {L : Language} {T : L.Theory} {α : Type w} {M : Type w'} [L.Structure M] [Nonempty M] [M T] {v : αM} {φ : L.Formula α} :

      The clopen set of complete types which contain a formula.

      Instances For
        @[simp]
        theorem FirstOrder.Language.Theory.CompleteType.mem_typesWith_iff {L : Language} {T : L.Theory} {α : Type w} (φ : (L.withConstants α).Sentence) (p : T.CompleteType α) :
        p typesWith φ φ p
        def FirstOrder.Language.Theory.realizedTypes {L : Language} (T : L.Theory) (M : Type w') [L.Structure M] [Nonempty M] [M T] (α : Type w) :

        A complete type p is realized in a particular structure when there is some tuple v whose type is p.

        Instances For