Documentation

InfinitaryLogic.Lomega1omega.Theory

Lω₁ω Theories and Semantic Entailment #

This file defines theories, models, semantic entailment, and elementary equivalence in Lω₁ω (countable infinitary logic with countable conjunctions/disjunctions).

Main Definitions #

Main Results #

References #

Theories #

@[reducible, inline]

A theory in Lω₁ω is a set of Lω₁ω sentences.

Equations
Instances For

    A structure M is a model of theory T if it satisfies all sentences in T.

    Equations
    Instances For

      The empty theory has every structure as a model.

      theorem FirstOrder.Language.Theoryω.Model.mono {L : Language} {T T' : L.Theoryω} (h : TT') {M : Type w} [L.Structure M] (hM : T'.Model M) :
      T.Model M

      If T ⊆ T' and M ⊨ T', then M ⊨ T.

      A countable theory as one sentence: the countable conjunction of an enumeration (a tautology for the empty theory). Realization is exactly theory modelhood (realize_conjunction_iff), so single-sentence results transport to countable theories.

      Equations
      Instances For

        Realizing the conjunction of a countable theory is modeling the theory.

        Isomorphism Invariance of Realization #

        theorem FirstOrder.Language.BoundedFormulaω.realize_equiv {L : Language} {M N : Type w} [L.Structure M] [L.Structure N] (e : L.Equiv M N) {α : Type u_1} {n : } (φ : L.BoundedFormulaω α n) (v : αM) (xs : Fin nM) :
        φ.Realize v xs φ.Realize (e v) (e xs)

        Realization of Lω₁ω formulas is preserved by language isomorphisms.

        Given an isomorphism e : M ≃[L] N, a formula realized in M with variable assignments v and xs is also realized in N with the transported assignments e ∘ v and e ∘ xs.

        Lω₁ω Elementary Equivalence #

        def FirstOrder.Language.LomegaEquiv (L : Language) (M : Type u_1) (N : Type u_2) [L.Structure M] [L.Structure N] :

        Two structures are Lω₁ω-elementarily equivalent if they satisfy the same Lω₁ω sentences.

        Equations
        Instances For

          Lω₁ω-equivalence is reflexive.

          theorem FirstOrder.Language.LomegaEquiv.symm {L : Language} {M : Type w} [L.Structure M] {N : Type w'} [L.Structure N] (h : L.LomegaEquiv M N) :

          Lω₁ω-equivalence is symmetric.

          theorem FirstOrder.Language.LomegaEquiv.trans {L : Language} {M : Type w} [L.Structure M] {N : Type w'} [L.Structure N] {P : Type u_1} [L.Structure P] (h₁ : L.LomegaEquiv M N) (h₂ : L.LomegaEquiv N P) :

          Lω₁ω-equivalence is transitive.

          theorem FirstOrder.Language.LomegaEquiv.of_equiv {L : Language} {M N : Type w} [L.Structure M] [L.Structure N] (e : L.Equiv M N) :

          Isomorphic structures are Lω₁ω-equivalent.

          The proof transports variable assignments along the isomorphism using BoundedFormulaω.realize_equiv, then observes that e ∘ Empty.elim = Empty.elim and e ∘ Fin.elim0 = Fin.elim0 since both domains are empty.

          Invariance under Isomorphism #

          theorem FirstOrder.Language.Theoryω.Model.of_equiv {L : Language} {T : L.Theoryω} {M N : Type w} [L.Structure M] [L.Structure N] (hM : T.Model M) (e : L.Equiv M N) :
          T.Model N

          Models of a theory are preserved under isomorphism.