Documentation

InfinitaryLogic.Methods.EM.Realization

Template-to-L[[J]]-theory bridge for Lω₁ω #

For each Lω₁ω template T : Lomega1omegaTemplate L and each linearly ordered index type J, this file builds the set of L[[J]]-sentences whose models are exactly the L[[J]]-structures whose constants realize T. The bridge consists of:

This file does not turn the template into a single model — that step is blocked both by uncountable J (the language L[[J]] has uncountably many constant symbols) and, even for countable J, by the fact that templateTheory T J inherits the continuum size of the Lω₁ω formula syntax. Any future model-realizing tranche will need to restrict to a countable sub-theory.

Section 1: a Fin n order-embedding into any infinite linear order #

Any infinite linear order admits a strictly-increasing tuple of every finite length. Constructed by sorting n distinct elements obtained from Infinite.natEmbedding.

Fin n ↪o J is countable whenever J is countable. The injection from Fin n ↪o J to Fin n → J via DFunLike.coe is injective (by DFunLike.coe_injective), and Fin n → J is countable when J is countable because Fin n is finite.

Section 2: templateSentence — the L[[J]]-sentence "φ on the constants of t" #

The L[[J]]-sentence expressing "φ holds when its n bound variables are interpreted as the constants c_{t 0}, …, c_{t (n-1)}". Built by lifting φ to L[[J]], opening its bound variables, and substituting them with the closed terms for the constants t 0, …, t (n-1).

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    Section 3: realize_templateSentence — semantic bridge to φ.Realize #

    theorem FirstOrder.Language.realize_templateSentence {L : Language} {M : Type u_1} [L.Structure M] {J : Type u} [LinearOrder J] (σ : JM) {n : } (φ : L.BoundedFormulaω Empty n) (t : Fin n ↪o J) :

    Realizing templateSentence φ t in an L[[J]]-expansion of M (built from a function σ : J → M via constantsOn.structure σ) is equivalent to realizing φ itself on the tuple σ ∘ t : Fin n → M. The proof composes realize_subst, realize_openBounds, and realize_mapLanguage.

    Section 4: templateTheory — the L[[J]]-theory pinning down the template #

    The L[[J]]-theory whose models are exactly the L[[J]]-structures whose constants realize the template T. For each formula φ and each increasing tuple t : Fin n ↪o J, the theory contains either templateSentence φ t (if T.truth φ) or its negation (if ¬ T.truth φ). Both directions are needed: without the negative sentences, a model could realize formulas the template declares false.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The restricted template theory: like templateTheory, but only includes sentences for formulas whose (arity, φ)-pair lies in the family Γ. When Γ and J are both countable, the resulting theory is countable (see templateTheoryOn_countable), making it a candidate input to model_existence — which the full templateTheory can never be.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        Monotonicity: the restricted template theory is a subset of the full template theory.

        Monotonicity of templateTheoryOn in the formula family Γ: enlarging Γ can only enlarge the restricted template theory.

        When the family Γ and the index type J are both countable, the restricted template theory is countable. This is the point of templateTheoryOn: the full templateTheory T J is always continuum-sized (Lω₁ω formulas form a continuum), but the restricted theory can be countable and thus a candidate input to model_existence.

        Section 5: finite satisfiability of templateTheory in the source model #

        theorem FirstOrder.Language.IsLomega1omegaIndiscernible.templateTheory_finitelySatisfiable {L : Language} {I : Type w} [LinearOrder I] [Infinite I] {M : Type u_1} [L.Structure M] {a : IM} (h : IsLomega1omegaIndiscernible a) {J : Type u} [LinearOrder J] {F : Set (L.withConstants J).Sentenceω} (hFin : F.Finite) (hSub : Fh.template.templateTheory J) :
        ∃ (σ : JM), τF, τ.Realize M

        If h : IsLomega1omegaIndiscernible a for a : I → M over an infinite linear order I, then every finite subset of templateTheory h.template J is satisfiable in the source model M, expanded to an L[[J]]-structure via an appropriate interpretation σ : J → M. The interpretation is built by sorting the finitely many J-indices appearing in the finite fragment, embedding them into I via [Infinite I], and pulling them through a.

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

        Restricted-indiscernibility variant of templateTheory_finitelySatisfiable: every finite subset of (templateOfSeq a).templateTheoryOn Γ J is satisfiable in the source model, provided a is restricted-indiscernible on Γ (not on all formulas).

        This is a fresh specialized proof, not a delegation through the full-indiscernibility version: the witness extraction explicitly carries ⟨n, φ⟩ ∈ Γ so that the weaker templateOfSeq_truth_iff applies at the final step. The σ/Finset plumbing is identical to the full version at lines 208-295; only the witness-extraction step (Step 2) and the final template_truth_iff calls (Step 5) differ.

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

        Restricted version of templateTheory_finitelySatisfiable: every finite subset of h.template.templateTheoryOn Γ J is satisfiable in the source model. This is a direct corollary via templateTheoryOn_subset_templateTheory; the point of stating it separately is that this is the form a downstream model-existence call will actually invoke (since only the restricted theory can ever be countable).

        Section 7: sequence-indexed wrappers #

        Convenience wrappers over templateTheoryOn specialized to a family given as a sequence s : ℕ → Σ n, L.BoundedFormulaω Empty n. The payoff is ergonomic: the countability of Set.range s is automatic, so templateTheoryOfSeq_countable drops the Γ.Countable hypothesis that templateTheoryOn_countable requires.

        Sequence-based restricted template theory: same content as templateTheoryOn T (Set.range s) J, with a dedicated name for callers that want to hand a sequence rather than a set.

        Equations
        Instances For

          templateTheoryOfSeq is countable whenever J is countable. Follows from templateTheoryOn_countable via Set.countable_range; the countability of the family comes for free from the sequence structure.

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

          Sequence-indexed finite satisfiability in the source indiscernible model. Direct delegation to templateTheoryOn_finitelySatisfiable.

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

          Sequence-indexed wrapper for templateTheoryOn_finitelySatisfiable under restricted indiscernibility.