Documentation

InfinitaryLogic.Methods.LocalEMFamily

The countable local atom/deForm family ΓEMlocal #

The size bottleneck of the EM re-base, resolved. The EM term model's EMContext needs a tail-indiscernible family Γ containing every de-substituted atom (atom_mem/rel_mem) and the deForms of the truth-lemma family (DeFormClosedForGammaStar); the tail extraction (MorleyHanfExtractionTail) delivers indiscernibility only over a countable Γ. Over skolemColim L the atom diagram is uncountable and the context cannot be instantiated; this file builds the countable replacement over localColim s₀.

The factoring insight: a de-substituted atom/deForm over a support S : Finset J depends on its Λ[[J]]-terms only through their de-substitutions to Fin S.card-variable Λ-terms. So the family of ALL such formulas — over EVERY linear order J, every support, every closed term — factors through the canonical (J-free) seeds indexed by Σ m, Λ.Term (Fin m)-data, which are countable whenever Λ is. Concretely, the local locDeEqAtom/locDeRelAtom/locDeForm are defined as canonical seeds applied to locDeTermFin-images, so factoring is definitional and membership in the canonical seeds is by construction.

Contents:

The GENERIC semantic (realize) bridges live in LocalEMContext.lean; the old skolemColim-specific ones remain in EMTermModel.lean. This file is deliberately purely syntactic.

Canonical (J-free) seeds over a countable language #

The canonical equality atom of two Fin m-variable terms: the arity-m formula t = u with the variables rebound. Every de-substituted equality atom (over any J, any support) is definitionally of this shape.

Equations
Instances For

    The canonical equality-atom seed: all canonical equality atoms, over all arities.

    Equations
    Instances For

      The canonical equality-atom seed is countable when Λ's function symbols are: it is the range of a map from Σ m, (Λ.Term (Fin m))², countable by Mathlib's term encoding.

      def FirstOrder.Language.canonRelAtom (Λ : Language) {m l : } (R : Λ.Relations l) (ts : Fin lΛ.Term (Fin m)) :

      The canonical relation atom: a relation symbol applied to rebound Fin m-variable terms.

      Equations
      Instances For

        The canonical relation-atom seed: all canonical relation atoms, over all arities and all relation symbols.

        Equations
        Instances For

          The canonical relation-atom seed is countable when Λ's symbol types are.

          def FirstOrder.Language.canonDeForm (Λ : Language) {n : } (φ : Λ.BoundedFormulaω Empty n) {p : } (g : Fin nΛ.Term (Fin p)) :

          The canonical deForm of a formula φ (arity n) along a tuple of Fin p-variable terms: open the bound variables, substitute the terms, rebind the p positions — the openBounds → subst → relabel template of EMTermModel.deForm, with the J-dependence already factored out.

          Equations
          Instances For

            The canonical deForm closure of a base family Γc: all canonical deForms of its members, over all target arities and term tuples.

            Equations
            Instances For
              theorem FirstOrder.Language.canonDeForms_countable (Λ : Language) {Γc : Set ((n : ) × Λ.BoundedFormulaω Empty n)} (hΓc : Γc.Countable) (hf : Countable ((n : ) × Λ.Functions n)) :

              The canonical deForm closure of a countable family is countable.

              theorem FirstOrder.Language.canonDeForm_mem_canonDeForms (Λ : Language) {Γc : Set ((n : ) × Λ.BoundedFormulaω Empty n)} {n : } {φ : Λ.BoundedFormulaω Empty n} ( : n, φ Γc) {p : } (g : Fin nΛ.Term (Fin p)) :

              Membership constructor for the canonical deForm closure.

              The J-side de-substitution pipeline #

              Mirrors the skolemColim-specific chain of EMTermModel.lean over an arbitrary Λ (the generic pieces deepRank, deepRank_lt_card, Term.varFinset_relabel live in the shared LocalEMSupport.lean). The loc prefix disambiguates from the skolemColim versions.

              The J-constant carried by a function symbol of Λ[[J]]: only an arity-0 symbol from the constantsOn J summand is a skeleton constant.

              Equations
              Instances For

                The finite set of J-constants (skeleton constants) mentioned in a Λ[[J]]-term.

                Equations
                Instances For

                  The de-substituted term constantsToVars t uses only the variables Sum.inl j for j a skeleton constant of t.

                  The de-substituted term at ordered support positions: each skeleton constant c_j becomes the -variable deepRank S j.

                  Equations
                  Instances For

                    The ordered-position term uses only variables < S.card once S covers the term's skeleton constants.

                    def FirstOrder.Language.locDeTermFin (Λ : Language) (J : Type) [LinearOrder J] (S : Finset J) (t : (Λ.withConstants J).Term Empty) (hsub : Λ.locJSupport J tS) :
                    Λ.Term (Fin S.card)

                    The de-substituted term at Fin S.card positions: locDeTermPos with its variables packaged as genuine Fin S.card indices. The finite-variable term through which every J-dependent atom/deForm factors.

                    Equations
                    Instances For

                      Local atoms and deForm — canonical seeds applied to de-substituted terms #

                      def FirstOrder.Language.locDeEqAtom (Λ : Language) (J : Type) [LinearOrder J] (S : Finset J) (t u : (Λ.withConstants J).Term Empty) (ht : Λ.locJSupport J tS) (hu : Λ.locJSupport J uS) :

                      The local de-substituted equality atom: definitionally a canonical equality atom, so its membership in canonEqAtoms is by construction.

                      Equations
                      Instances For
                        theorem FirstOrder.Language.locDeEqAtom_mem_canonEqAtoms (Λ : Language) (J : Type) [LinearOrder J] (S : Finset J) (t u : (Λ.withConstants J).Term Empty) (ht : Λ.locJSupport J tS) (hu : Λ.locJSupport J uS) :
                        S.card, Λ.locDeEqAtom J S t u ht hu Λ.canonEqAtoms

                        Factoring, equality case: every local equality atom lies in the canonical (J-free) seed.

                        def FirstOrder.Language.locDeRelAtom (Λ : Language) (J : Type) [LinearOrder J] (S : Finset J) {l : } (R : Λ.Relations l) (ts : Fin l(Λ.withConstants J).Term Empty) (ht : ∀ (i : Fin l), Λ.locJSupport J (ts i)S) :

                        The local de-substituted relation atom: definitionally a canonical relation atom.

                        Equations
                        Instances For
                          theorem FirstOrder.Language.locDeRelAtom_mem_canonRelAtoms (Λ : Language) (J : Type) [LinearOrder J] (S : Finset J) {l : } (R : Λ.Relations l) (ts : Fin l(Λ.withConstants J).Term Empty) (ht : ∀ (i : Fin l), Λ.locJSupport J (ts i)S) :

                          Factoring, relation case: every local relation atom lies in the canonical seed.

                          def FirstOrder.Language.locDeForm (Λ : Language) (J : Type) [LinearOrder J] (S : Finset J) {n : } (φ : Λ.BoundedFormulaω Empty n) (ts : Fin n(Λ.withConstants J).Term Empty) (hsub : ∀ (i : Fin n), Λ.locJSupport J (ts i)S) :

                          The local general de-substituted formula: definitionally a canonical deForm of φ.

                          Equations
                          Instances For
                            theorem FirstOrder.Language.locDeForm_mem_canonDeForms (Λ : Language) (J : Type) [LinearOrder J] {Γc : Set ((n : ) × Λ.BoundedFormulaω Empty n)} (S : Finset J) {n : } {φ : Λ.BoundedFormulaω Empty n} ( : n, φ Γc) (ts : Fin n(Λ.withConstants J).Term Empty) (hsub : ∀ (i : Fin n), Λ.locJSupport J (ts i)S) :
                            S.card, Λ.locDeForm J S φ ts hsub Λ.canonDeForms Γc

                            Factoring, deForm case: the local deForm of any member of a base family lies in that family's canonical deForm closure.

                            The assembled family ΓEMlocal over the local colimit #

                            The extracted-family candidate: the colimit family together with the full canonical atom seeds and the canonical deForm closure of the colimit family — everything the local EMContext's hind/atom_mem/rel_mem/deForm-closure obligations will quantify over.

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

                              The size bottleneck, resolved: ΓEMlocal is countable — the family the tail extraction (MorleyHanfExtractionTail) can actually serve, in contrast to the uncountable skolemColim atom diagram.

                              The colimit family sits inside ΓEMlocal.

                              theorem FirstOrder.Language.locDeEqAtom_mem_ΓEMlocal (J : Type) [LinearOrder J] (s₀ : LocalStage) (S : Finset J) (t u : ((localColim s₀).withConstants J).Term Empty) (ht : (localColim s₀).locJSupport J tS) (hu : (localColim s₀).locJSupport J uS) :
                              S.card, (localColim s₀).locDeEqAtom J S t u ht hu ΓEMlocal s₀

                              atom_mem discharger: every local equality atom — over every J, support, and pair of closed terms — lies in ΓEMlocal.

                              theorem FirstOrder.Language.locDeRelAtom_mem_ΓEMlocal (J : Type) [LinearOrder J] (s₀ : LocalStage) (S : Finset J) {l : } (R : (localColim s₀).Relations l) (ts : Fin l((localColim s₀).withConstants J).Term Empty) (ht : ∀ (i : Fin l), (localColim s₀).locJSupport J (ts i)S) :
                              S.card, (localColim s₀).locDeRelAtom J S R ts ht ΓEMlocal s₀

                              rel_mem discharger: every local relation atom lies in ΓEMlocal.

                              theorem FirstOrder.Language.locDeForm_mem_ΓEMlocal (J : Type) [LinearOrder J] (s₀ : LocalStage) (S : Finset J) {n : } {φ : (localColim s₀).BoundedFormulaω Empty n} ( : n, φ ΓlocalColim s₀) (ts : Fin n((localColim s₀).withConstants J).Term Empty) (hsub : ∀ (i : Fin n), (localColim s₀).locJSupport J (ts i)S) :
                              S.card, (localColim s₀).locDeForm J S φ ts hsub ΓEMlocal s₀

                              deForm-closure discharger: the local deForm of every colimit-family member lies in ΓEMlocal — the content of the future local DeFormClosedForGammaStar.

                              ΓEMlocal is nonempty (the arity-1 atom x = x is a canonical equality atom).

                              An enumeration of ΓEMlocal as a sequence — the exact shape the tail extraction (morleyHanfExtractionTail_holds, whose extraction yields tail-indiscernibility on Set.range) consumes.