Documentation

TauCeti.ModelTheory.Infinitary.LanguageMap

Language maps on infinitary formulas #

A language homomorphism g : L →ᴸ L' acts on the infinitary formulas of L, at every carrier ι, symbol by symbol: each term is mapped by Mathlib's LHom.onTerm, each relation symbol by g.onRelation, and the logical structure is kept. This is the infinitary form of Mathlib's LHom.onBoundedFormula.

When an L'-structure on M expands an L-structure along g (g.IsExpansionOn M), the image of a formula is realized exactly when the formula is. Every passage between languages, such as adding constants or restricting to the symbols a formula mentions, transfers truth through this result.

Main definitions #

Main results #

References #

def FirstOrder.Language.LHom.onBoundedFormulaInf {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} :
L.BoundedFormulaInf ι α n → L'.BoundedFormulaInf ι α n

The action of a language homomorphism on infinitary formulas: each term is mapped by g.onTerm, each relation symbol by g.onRelation, and the logical structure is kept.

Instances For
    @[simp]

    A language map fixes the false formula.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_equal {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (t₁ t₂ : L.Term (α ⊕ Fin n)) :

    A language map maps both sides of an equation.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_rel {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n l : ℕ} (R : L.Relations l) (ts : Fin l → L.Term (α ⊕ Fin n)) :

    A language map maps the relation symbol and the terms of a relational atom.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_imp {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (φ ψ : L.BoundedFormulaInf ι α n) :

    A language map commutes with implication.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_all {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (φ : L.BoundedFormulaInf ι α (n + 1)) :

    A language map commutes with universal quantification.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_iSup {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (φs : ι → L.BoundedFormulaInf ι α n) :

    A language map commutes with disjunctions over the carrier.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_iInf {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (φs : ι → L.BoundedFormulaInf ι α n) :

    A language map commutes with conjunctions over the carrier.

    @[simp]
    theorem FirstOrder.Language.LHom.realize_onBoundedFormulaInf {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {M : Type w} [L.Structure M] [L'.Structure M] [g.IsExpansionOn M] {n : ℕ} (φ : L.BoundedFormulaInf ι α n) (v : α → M) (xs : Fin n → M) :

    Realization along an expansion. If the L'-structure on M expands its L-structure along g, the image of an infinitary formula under g is realized exactly when the formula is. This is the infinitary form of Mathlib's LHom.realize_onBoundedFormula.

    @[simp]

    Realization of sentences along an expansion. If the L'-structure on M expands its L-structure along g, the image of an infinitary sentence under g holds exactly when the sentence does.

    @[simp]
    theorem FirstOrder.Language.LHom.id_onBoundedFormulaInf {L : Language} {ι : Type uι} {α : Type uα} {n : ℕ} (φ : L.BoundedFormulaInf ι α n) :

    The identity language map acts as the identity on infinitary formulas.

    @[simp]
    theorem FirstOrder.Language.LHom.comp_onBoundedFormulaInf {L : Language} {L' : Language} {L'' : Language} {ι : Type uι} {α : Type uα} (g : L' →ᴸ L'') (f : L →ᴸ L') {n : ℕ} (φ : L.BoundedFormulaInf ι α n) :

    The action of a composite language map is the composite of the actions.

    Commutation with the operations on formulas #

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_bot {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} :

    A language map fixes ⊥.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_not {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (φ : L.BoundedFormulaInf ι α n) :

    A language map commutes with negation.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_ex {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (φ : L.BoundedFormulaInf ι α (n + 1)) :

    A language map commutes with existential quantification.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_top {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} :

    A language map fixes ⊤.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_iInfAlong {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} {ι' : Type u_1} (c : TauCeti.IndexCoding ι' ι) (φs : ι' → L.BoundedFormulaInf ι α n) :

    A language map commutes with coded conjunctions.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_iSupAlong {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} {ι' : Type u_1} (c : TauCeti.IndexCoding ι' ι) (φs : ι' → L.BoundedFormulaInf ι α n) :

    A language map commutes with coded disjunctions.

    @[simp]
    theorem FirstOrder.Language.LHom.onBoundedFormulaInf_toInf {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (g : L →ᴸ L') {n : ℕ} (φ : L.BoundedFormula α n) :

    A language map commutes with the embedding of finitary formulas: translating a finitary formula and then embedding it is embedding it and then translating.

    @[simp]

    A language map commutes with relabelling the bound-variable slots.

    @[simp]

    A language map commutes with weakening.

    @[simp]

    A language map commutes with transporting formulas along a coding of carriers.

    @[simp]
    theorem FirstOrder.Language.LEquiv.realize_onBoundedFormulaInf {L : Language} {L' : Language} {ι : Type uι} {α : Type uα} (e : L ≃ᴸ L') {M : Type w} [L.Structure M] {n : ℕ} (φ : L.BoundedFormulaInf ι α n) (v : α → M) (xs : Fin n → M) :

    Realization along a language equivalence. An L-structure, reinterpreted as an L'-structure along the inverse map, realizes the translation of an infinitary formula exactly when it realizes the formula.