Documentation

InfinitaryLogic.ModelTheory.BFExtensionSpectrum

Back-and-forth successor levels via extension spectra #

For a class C of coded models of a sentence φ and an ordinal α, the depth-α back-and-forth relation on n-tuples of C-models is an equivalence relation (bfTupleSetoid). By BFEquiv.succ, two tuples are (α+1)-equivalent iff they are α-equivalent and have the same set of depth-α classes of one-point extensions — their depth-α extension spectrum (bfExtensionSpectrum). So the (α+1)-classes over n-tuples are counted by the α-classes together with the realized extension spectra.

Main results #

The hypothesis on the extension spectra is the whole content: a subset of a countable class space can a priori take continuum many values, so nothing here bounds the spectra themselves. Nothing is said about limit levels.

@[reducible, inline]
abbrev FirstOrder.Language.CodedModelTuple {L : Language} [L.IsRelational] (φ : L.Sentenceω) (C : Set ↑(ModelsOf φ)) (n : ℕ) :

Coded models of φ in a class C, each with an n-tuple.

Equations
Instances For

    The depth-α back-and-forth setoid on n-tuples of C-models.

    Equations
    Instances For
      theorem FirstOrder.Language.bfTupleSetoid_zero_eq_comap {L : Language} [L.IsRelational] (φ : L.Sentenceω) (C : Set ↑(ModelsOf φ)) (α : Ordinal.{0}) :
      bfTupleSetoid φ C α 0 = Setoid.comap (fun (x : CodedModelTuple φ C 0) => ↑x.1) (bfEquivSetoid φ α)

      At arity 0 the tuple is trivial, and the setoid is the pullback of bfEquivSetoid along the map forgetting the class membership and the empty tuple.

      theorem FirstOrder.Language.bfTupleSetoid_zero_iff {L : Language} [L.IsRelational] (φ : L.Sentenceω) (C : Set ↑(ModelsOf φ)) (α : Ordinal.{0}) (x y : CodedModelTuple φ C 0) :
      (bfTupleSetoid φ C α 0) x y ↔ (bfEquivSetoid φ α) ↑x.1 ↑y.1

      The pointwise form of bfTupleSetoid_zero_eq_comap.

      def FirstOrder.Language.bfExtensionSpectrum {L : Language} [L.IsRelational] (φ : L.Sentenceω) (C : Set ↑(ModelsOf φ)) (α : Ordinal.{0}) (n : ℕ) (x : CodedModelTuple φ C n) :
      Set (Quotient (bfTupleSetoid φ C α (n + 1)))

      The depth-α extension spectrum of a tuple: the depth-α classes of its one-point extensions.

      Equations
      Instances For
        def FirstOrder.Language.bfExtensionSpectra {L : Language} [L.IsRelational] (φ : L.Sentenceω) (C : Set ↑(ModelsOf φ)) (α : Ordinal.{0}) (n : ℕ) :
        Set (Set (Quotient (bfTupleSetoid φ C α (n + 1))))

        The realized extension spectra of n-tuples of C-models at depth α.

        Equations
        Instances For
          theorem FirstOrder.Language.bfTupleSetoid_succ_iff {L : Language} [L.IsRelational] (φ : L.Sentenceω) (C : Set ↑(ModelsOf φ)) (α : Ordinal.{0}) (n : ℕ) (x y : CodedModelTuple φ C n) :
          (bfTupleSetoid φ C (Order.succ α) n) x y ↔ (bfTupleSetoid φ C α n) x y ∧ bfExtensionSpectrum φ C α n x = bfExtensionSpectrum φ C α n y

          The successor characterization: (α+1)-equivalence is α-equivalence with equal depth-α extension spectra.

          The (α+1)-classes over n-tuples inject into pairs (an α-class, a realized extension spectrum).

          Countability transfer: countably many α-classes over n-tuples and countably many realized extension spectra give countably many (α+1)-classes over n-tuples.

          Countability transfer at ≤ ℵ₁: if the α-classes over n-tuples and the realized extension spectra both number at most ℵ₁, so do the (α+1)-classes over n-tuples.