Documentation

TauCeti.ModelTheory.Scott.Formula

Canonical Scott formulas #

For a tuple a in a countable relational structure, scottFormula a α describes its back-and-forth class at every countable ordinal α. The realizing structure can have arbitrary cardinality and lie in an independent universe. The tuple occupies bound-variable slots.

At a successor the formula retains the previous approximation and requires matching one-element extensions in both directions. At a countable limit it conjoins all earlier approximations. The limit clause at uncountable ordinals is assigned the true formula; the characteristic theorem is asserted only below the first uncountable ordinal. These formulas are the ingredients for sentences characterizing countable structures.

The construction follows Dana Scott, Logic with denumerably long formulas and finite strings of quantifiers (1965), and Cameron Freer's cameronfreer/infinitary-logic, InfinitaryLogic/Scott/Formula.lean at checkpoint 9f82bd572af2d79a043c6bc3f1b745f14e0bcaa4. Here tuples occupy bound positions rather than free variables, and the ordinal universe is independent of the structure universes.

noncomputable def TauCeti.scottFormula {L : FirstOrder.Language} [Countable ((k : ℕ) × L.Relations k)] {M : Type w} [L.Structure M] [Countable M] {n : ℕ} (a : Fin n → M) (α : Ordinal.{o}) :

The canonical Scott approximation of a tuple in a relational language. At countable ordinals it characterizes back-and-forth equivalence; uncountable limit stages are assigned the true formula. The construction uses equality and relation tests and is defined for every language.

Instances For
    @[simp]
    theorem TauCeti.scottFormula_zero {L : FirstOrder.Language} [Countable ((k : ℕ) × L.Relations k)] {M : Type w} [L.Structure M] [Countable M] {n : ℕ} (a : Fin n → M) :

    The zero approximation is the atomic diagram.

    A successor approximation retains the preceding formula and adds forth and back clauses.

    At a countable limit, the approximation conjoins all previous approximations.

    @[simp]
    theorem TauCeti.realize_scottFormula_iff_bfEquiv {L : FirstOrder.Language} [Countable ((k : ℕ) × L.Relations k)] {M : Type w} [L.Structure M] [Countable M] {n : ℕ} [L.IsRelational] {N : Type w'} [L.Structure N] (a : Fin n → M) (b : Fin n → N) {α : Ordinal.{o}} (hα : α < Ordinal.omega 1) :

    A tuple in any structure satisfies the canonical Scott formula exactly when it is back-and-forth equivalent to the original tuple at that countable ordinal.