Canonical definitional expansions (Morleyization) for a formula family #
Given an arity-tagged family Φ of L_{ω₁ω}-formulas over L, the language L.morleyize Φ
keeps the whole base signature and adds one relation symbol R_φ of arity n for each
⟨n, φ⟩ ∈ Φ. Every L-structure has a canonical expansion (morleyExpansion) in which
R_φ(a) holds iff φ(a) holds; nothing is chosen.
lhomMorleyize Φ : L →ᴸ L.morleyize Φ, the inclusion; the canonical expansion is an expansion along it, and its reduct is literally the original structure (reduct_morleyExpansion, byrfl).relMap_morleyExpansion_inr: the truth lemma for each new symbol, definitional.definingAxiom φ,definingTheory Φ: the sentences∀x̄ (R_φ(x̄) ↔ φ(x̄)), universally closed byalls; the canonical expansion is a model (morleyExpansion_model_definingTheory), and it is the unique expansion alonglhomMorleyize Φsatisfying them (eq_morleyExpansion_of_model_definingTheory). Defining one canonical interpretation does not by itself establish uniqueness; the axioms do.unMorleyize: the compositional back-translation of expanded-language formulas into the base language, replacing each atomR_φ(t̄)byφwitht̄substituted for its bound variable slots (openBounds, thensubst, thenboundify, which rebinds without any cast), andrealize_unMorleyize: realization over the canonical expansion equals realization of the back-translation over the base structure. This is proved directly from the definitions; no back-and-forth machinery enters.morleyEquivandmorleyEquivRestrict: anL-isomorphism lifts to an isomorphism of the canonical expansions with the given underlying bijection (morleyEquiv_toEquiv), and any isomorphism of the canonical expansions restricts to anL-isomorphism with the same bijection (morleyEquivRestrict_toEquiv); packaged asnonempty_morleyEquiv_iff : Nonempty (M⁺ ≃ N⁺) ↔ Nonempty (M ≃[L] N).
Universe boundary of the back-translation #
unMorleyize and realize_unMorleyize take their free-variable type in Type, not Type*:
the substitution API BoundedFormulaω.subst shares one universe between its source and target
variable types, and the bound-variable slots being substituted are Fin n : Type. Sentences
and finite tuples are covered; the language and carrier universes stay general. The rest of
the module is universe-polymorphic in the usual way.
What the witness-free claim rests on #
Function symbols are unchanged and every new relation symbol is interpreted by the complete
satisfaction proposition of its formula, so the canonical expansion selects nothing. The
isomorphism lift carries the given bijection (morleyEquiv_toEquiv); that theorem certifies
that the lift chooses no new bijection, and the construction certifies the rest.
These are infinitary definitions when Φ contains infinitary formulas; they are not a
first-order presentation with omitted types (Marker, Lectures on Infinitary Model Theory,
Cambridge, 2016, Theorem 1.2.1 and Exercise 1.2.2, for that classical construction). No
closure of Φ is assumed: Φ is any set of tagged formulas, and no fragment structure is
required merely to name them. Coded structures, Borelness of the expansion map, and refined
topologies are separate.
The expanded language #
The defined-relation symbols of arity n: the members of Φ at arity n.
Instances For
The Morleyization of L by Φ: the base signature retained, one new relation symbol
per member of Φ, at that member's arity.
Equations
Instances For
The inclusion of the base language.
Equations
Instances For
The canonical expansion #
The canonical expansion: base symbols as before, R_φ(a) iff φ(a).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The truth lemma for a defined symbol, definitional.
The canonical expansion is an expansion along the inclusion.
Reduct after expansion is the identity, definitionally.
The defining axioms and uniqueness #
Universal closure of all bound variables.
Equations
Instances For
Base terms as expanded-language terms: the function symbols are the same.
Equations
- FirstOrder.Language.liftTerm Φ (FirstOrder.Language.var x_1) = FirstOrder.Language.var x_1
- FirstOrder.Language.liftTerm Φ (FirstOrder.Language.func f ts) = FirstOrder.Language.func f fun (i : Fin l) => FirstOrder.Language.liftTerm Φ (ts i)
Instances For
Base formulas read in the expanded language: the structural relabelling of symbols along
the inclusion. (mapLanguage is stated for a target in the same universes as L; the
expanded language lives in Language.{u, max u v}.)
Equations
- One or more equations did not get rendered due to their size.
- FirstOrder.Language.liftMorleyize Φ FirstOrder.Language.BoundedFormulaInf.falsum = FirstOrder.Language.BoundedFormulaω.falsum
- FirstOrder.Language.liftMorleyize Φ (FirstOrder.Language.BoundedFormulaInf.rel R ts) = FirstOrder.Language.BoundedFormulaω.rel (Sum.inl R) fun (i : Fin l) => FirstOrder.Language.liftTerm Φ (ts i)
- FirstOrder.Language.liftMorleyize Φ (FirstOrder.Language.BoundedFormulaInf.imp φ ψ) = (FirstOrder.Language.liftMorleyize Φ φ).imp (FirstOrder.Language.liftMorleyize Φ ψ)
- FirstOrder.Language.liftMorleyize Φ (FirstOrder.Language.BoundedFormulaInf.all φ) = (FirstOrder.Language.liftMorleyize Φ φ).all
- FirstOrder.Language.liftMorleyize Φ (FirstOrder.Language.BoundedFormulaInf.iSup φs) = FirstOrder.Language.BoundedFormulaω.iSup fun (i : ℕ) => FirstOrder.Language.liftMorleyize Φ (φs i)
- FirstOrder.Language.liftMorleyize Φ (FirstOrder.Language.BoundedFormulaInf.iInf φs) = FirstOrder.Language.BoundedFormulaω.iInf fun (i : ℕ) => FirstOrder.Language.liftMorleyize Φ (φs i)
Instances For
Over any expansion along the inclusion, lifted terms realize as in the base.
Over any expansion along the inclusion, lifted formulas realize as in the base.
Over the canonical expansion, lifted formulas realize as in the base.
The defining axiom of a defined symbol: ∀x̄ (R_φ(x̄) ↔ φ(x̄)), with φ read in the expanded
language along the inclusion.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The defining theory: all defining axioms.
Equations
- FirstOrder.Language.definingTheory Φ = {σ : (L.morleyize Φ).Sentenceω | ∃ (n : ℕ) (φ : FirstOrder.Language.DefinedSym Φ n), σ = FirstOrder.Language.definingAxiom Φ φ}
Instances For
The canonical expansion satisfies the defining theory.
Uniqueness: an expansion along the inclusion that satisfies the defining theory is the canonical expansion.
Back-translation #
The back-translation: each atom R_φ(t̄) becomes φ with t̄ substituted for its bound
variable slots; everything else is structural.
Equations
- One or more equations did not get rendered due to their size.
- FirstOrder.Language.unMorleyize FirstOrder.Language.BoundedFormulaInf.falsum = FirstOrder.Language.BoundedFormulaω.falsum
- FirstOrder.Language.unMorleyize (FirstOrder.Language.BoundedFormulaInf.equal t u) = FirstOrder.Language.BoundedFormulaω.equal (FirstOrder.Language.termBack✝ t) (FirstOrder.Language.termBack✝ u)
- FirstOrder.Language.unMorleyize (FirstOrder.Language.BoundedFormulaInf.rel (Sum.inl R) ts) = FirstOrder.Language.BoundedFormulaω.rel R fun (i : Fin l) => FirstOrder.Language.termBack✝ (ts i)
- FirstOrder.Language.unMorleyize (FirstOrder.Language.BoundedFormulaInf.imp φ ψ) = (FirstOrder.Language.unMorleyize φ).imp (FirstOrder.Language.unMorleyize ψ)
- FirstOrder.Language.unMorleyize (FirstOrder.Language.BoundedFormulaInf.all φ) = (FirstOrder.Language.unMorleyize φ).all
- FirstOrder.Language.unMorleyize (FirstOrder.Language.BoundedFormulaInf.iSup φs) = FirstOrder.Language.BoundedFormulaω.iSup fun (i : ℕ) => FirstOrder.Language.unMorleyize (φs i)
- FirstOrder.Language.unMorleyize (FirstOrder.Language.BoundedFormulaInf.iInf φs) = FirstOrder.Language.BoundedFormulaω.iInf fun (i : ℕ) => FirstOrder.Language.unMorleyize (φs i)
Instances For
Realization equivalence: over the canonical expansion, a formula and its back-translation agree.
Isomorphism transport #
An L-isomorphism lifts to an isomorphism of the canonical expansions; no witnesses are
selected.
Equations
- FirstOrder.Language.morleyEquiv Φ e = { toEquiv := e.toEquiv, map_fun' := ⋯, map_rel' := ⋯ }
Instances For
Restriction: an isomorphism of the canonical expansions is an L-isomorphism with the
same bijection, through the base symbols.
Equations
- FirstOrder.Language.morleyEquivRestrict g = { toEquiv := g.toEquiv, map_fun' := ⋯, map_rel' := ⋯ }
Instances For
Isomorphism transport, both directions: the canonical expansions are isomorphic iff the base structures are.