Documentation

InfinitaryLogic.Methods.EM.TailAdapter

Tail-indiscernibility: the eventually-form EM adapter #

The EM stretching pipeline consumes source-side indiscernibility in exactly one place: the finite-satisfiability lemma interprets the finitely many constants of a finite piece of the template theory by a freely chosen strictly monotone tuple of the source sequence, and collapses template truth to realization at that tuple. Consequently full indiscernibility (all tuples agree) is more than is needed: it suffices that for each formula of the family there is a cutoff beyond which all strictly monotone tuples agree — tail indiscernibility — because the interpreting tuple may simply be chosen beyond the maximum cutoff of the finitely many formulas involved.

This matters for Morley–Hanf: the classical Erdős–Rado extraction from a model of size ≥ ℶ_ω₁ produces (per arity, after finitely many partition steps) exactly tail indiscernibility of an ℕ-indexed sequence, while full simultaneous indiscernibility across all arities is not what the classical argument yields in the source model. This file weakens the EM interface accordingly:

The downstream consumer is hasArbLargeModels_of_tail_extraction in InfinitaryLogic/Conditional/MorleyHanfTransfer.lean.

Tail indiscernibility and the eventually-form template #

Full restricted indiscernibility gives tail indiscernibility (cutoff 0).

theorem FirstOrder.Language.exists_strictMono_of_le (n N : ) :
∃ (s : Fin n), StrictMono s ∀ (k : Fin n), N s k

Strictly monotone tuples exist above any cutoff.

The eventually-form template of a sequence: a formula is true if all sufficiently deep strictly monotone tuples realize it. For a tail-indiscernible sequence this is well-defined in the sense of tailTemplateOfSeq_truth_iff.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    theorem FirstOrder.Language.IsLomega1omegaIndiscernibleOnTail.tailTemplateOfSeq_truth_iff {L : Language} {M : Type u_1} [L.Structure M] {a : M} {Γ : Set ((n : ) × L.BoundedFormulaω Empty n)} (h : IsLomega1omegaIndiscernibleOnTail a Γ) {n : } {φ : L.BoundedFormulaω Empty n} ( : n, φ Γ) :
    ∃ (N : ), ∀ (s : Fin n), StrictMono s(∀ (k : Fin n), N s k) → ((tailTemplateOfSeq a).truth φ φ.Realize Empty.elim (a s))

    Truth collapse for the tail template: beyond a suitable cutoff, the template's value at a formula of the family equals the truth value at any strictly monotone tuple.

    Deep-tuple finite satisfiability #

    theorem FirstOrder.Language.IsLomega1omegaIndiscernibleOnTail.templateTheoryOn_finitelySatisfiable {L : Language} {M : Type u_1} [L.Structure M] {a : M} {Γ : Set ((n : ) × L.BoundedFormulaω Empty n)} (h : IsLomega1omegaIndiscernibleOnTail a Γ) {J : Type u} [LinearOrder J] {F : Set (L.withConstants J).Sentenceω} (hFin : F.Finite) (hSub : F(tailTemplateOfSeq a).templateTheoryOn Γ J) :
    ∃ (σ : JM), τF, τ.Realize M

    Finite satisfiability in the source model from tail indiscernibility: every finite subset of the tail-template theory is satisfiable in the source model. Mirrors IsLomega1omegaIndiscernibleOn.templateTheoryOn_finitelySatisfiable, with the interpreting order embedding placed beyond the joint cutoff of the finitely many formulas involved.

    theorem FirstOrder.Language.IsLomega1omegaIndiscernibleOnTail.templateTheoryOfSeq_finitelySatisfiable {L : Language} {M : Type u_1} [L.Structure M] {a : M} (s : (n : ) × L.BoundedFormulaω Empty n) (h : IsLomega1omegaIndiscernibleOnTail a (Set.range s)) {J : Type u} [LinearOrder J] {F : Set (L.withConstants J).Sentenceω} (hFin : F.Finite) (hSub : F(tailTemplateOfSeq a).templateTheoryOfSeq s J) :
    ∃ (σ : JM), τF, τ.Realize M

    Sequence-indexed wrapper.

    Compact-oracle stretching from tail indiscernibility #

    theorem FirstOrder.Language.IsLomega1omegaIndiscernibleOnTail.templateTheoryOfSeq_model_of_compact {L : Language} {M : Type} [L.Structure M] {a : M} (s : (n : ) × L.BoundedFormulaω Empty n) (h : IsLomega1omegaIndiscernibleOnTail a (Set.range s)) {J : Type u} [LinearOrder J] (height : Ordinal.{0}) (h_height : Ordinal.omega0 < height) (hCompact : ∀ (S : Set (L.withConstants J).Sentenceω), (∀ (F : Set (L.withConstants J).Sentenceω), F.FiniteFS∃ (N : Type) (x : (L.withConstants J).Structure N), Theoryω.Model F N)∃ (N : Type) (x : (L.withConstants J).Structure N), Theoryω.Model S N) :

    Compact-oracle adapter under tail indiscernibility.

    theorem FirstOrder.Language.IsLomega1omegaIndiscernibleOnTail.stretch_restricted_of_compact {L : Language} {M : Type} [L.Structure M] {a : M} (s : (n : ) × L.BoundedFormulaω Empty n) (h : IsLomega1omegaIndiscernibleOnTail a (Set.range s)) {J : Type u} [LinearOrder J] (height : Ordinal.{0}) (h_height : Ordinal.omega0 < height) (hCompact : ∀ (S : Set (L.withConstants J).Sentenceω), (∀ (F : Set (L.withConstants J).Sentenceω), F.FiniteFS∃ (N : Type) (x : (L.withConstants J).Structure N), Theoryω.Model F N)∃ (N : Type) (x : (L.withConstants J).Structure N), Theoryω.Model S N) :
    ∃ (N : Type) (x : (L.withConstants J).Structure N), ∀ (i : ) (t : Fin (s i).fst ↪o J), (Lomega1omegaTemplate.templateSentence (s i).snd t).Realize N (tailTemplateOfSeq a).truth (s i).snd

    EM stretching (sentence form, compact oracle, tail-indiscernible source).

    theorem FirstOrder.Language.IsLomega1omegaIndiscernibleOnTail.stretch_restricted_sequence_of_compact {L : Language} {M : Type} [L.Structure M] {a : M} (s : (n : ) × L.BoundedFormulaω Empty n) (h : IsLomega1omegaIndiscernibleOnTail a (Set.range s)) {J : Type u} [LinearOrder J] (height : Ordinal.{0}) (h_height : Ordinal.omega0 < height) (hCompact : ∀ (S : Set (L.withConstants J).Sentenceω), (∀ (F : Set (L.withConstants J).Sentenceω), F.FiniteFS∃ (N : Type) (x : (L.withConstants J).Structure N), Theoryω.Model F N)∃ (N : Type) (x : (L.withConstants J).Structure N), Theoryω.Model S N) :
    ∃ (N : Type) (x : (L.withConstants J).Structure N) (b : JN), ∀ (i : ) (t : Fin (s i).fst ↪o J), (s i).snd.Realize Empty.elim (b t) (tailTemplateOfSeq a).truth (s i).snd

    EM stretching (sequence form, compact oracle, tail-indiscernible source).

    Stretching from a model of the tail-template theory (honest residual) #

    The compact-oracle lemmas above assume full L_{ω₁ω} compactness for L[[J]] (false in general). But the pipeline only ever needs that the specific tail-template theory — which is finitely satisfiable by templateTheoryOn_finitelySatisfiable — has some model. The lemmas below take exactly that model as input; the broad compactness oracle factors through them.

    EM stretching (sentence form) from a model of the tail-template theory. Needs only that the (proved finitely-satisfiable) tail-template theory over J has a model — not a compactness oracle.

    theorem FirstOrder.Language.IsLomega1omegaIndiscernibleOnTail.stretch_restricted_sequence_of_model {L : Language} {M : Type} [L.Structure M] {a : M} (s : (n : ) × L.BoundedFormulaω Empty n) {J : Type u} [LinearOrder J] (hModel : ∃ (N : Type) (x : (L.withConstants J).Structure N), Theoryω.Model ((tailTemplateOfSeq a).templateTheoryOfSeq s J) N) :
    ∃ (N : Type) (x : (L.withConstants J).Structure N) (b : JN), ∀ (i : ) (t : Fin (s i).fst ↪o J), (s i).snd.Realize Empty.elim (b t) (tailTemplateOfSeq a).truth (s i).snd

    EM stretching (sequence form) from a model of the tail-template theory.