Restricting infinitary formulas to symbol sublanguages #
A formula of L whose occurring symbols lie in F and R restricts to the symbol sublanguage
symbSublang F R (BoundedFormulaInf.restrictSymbols), and translating the restriction back along
the inclusion symbSublangIncl F R recovers the formula. At a countable carrier a formula mentions
only countably many symbols (BoundedFormulaInf.functionsIn_countable), so the sublanguage of its
own symbols has countably many symbols of each sort, whatever the size of L. Truth is unaffected:
the restriction is realized in any structure on which the inclusion is an expansion, for instance in
the reduct of an L-structure, or in an L-structure expanding a structure of the sublanguage
(Mathlib's LHom.defaultExpansion with symbSublangIncl_injective), exactly when the formula is.
This is how statements proved for countable languages reach sentences of arbitrary languages.
The restriction also pulls formulas back along an arbitrary language map g : L →ᴸ L': a formula
of L' whose occurring symbols all lie in the range of g is the image under g of a formula of
L. No injectivity of g is needed, since the inclusion of the sublanguage factors through g
(LHom.exists_comp_eq_symbSublangIncl).
Main definitions #
FirstOrder.Language.BoundedFormulaInf.restrictSymbols: the restriction of an infinitary formula to a sublanguage containing its symbols.
Main results #
FirstOrder.Language.BoundedFormulaInf.onBoundedFormulaInf_restrictSymbols: the inclusion sends the restriction back to the formula.FirstOrder.Language.BoundedFormulaInf.realize_restrictSymbols: the restriction is realized exactly when the formula is.FirstOrder.Language.LHom.exists_eq_onBoundedFormulaInf_of_subset_range: a formula whose symbols lie in the range of a language map is the image of a formula.
References #
- The restriction of formulas follows
BoundedFormulaω.restrictSymbolsofcameronfreer/infinitary-logicat commit518a366cba97b1ae8c4dc64a297a396939bc3e0b, inInfinitaryLogic/Methods/GeneratedSublanguage.lean. Divergences from that source: the restriction is defined at every carrierιrather than atℕ, and the realization of a restriction and the pullback along an arbitrary language map are new.
The restriction of an infinitary formula to a symbol sublanguage containing its function and relation symbols.
Instances For
Restricting the false formula gives the false formula.
Restricting an equation restricts both sides.
Restricting a relational atom restricts the relation symbol and every argument.
Restriction commutes with implication.
Restriction commutes with universal quantification.
Restriction commutes with disjunctions over the carrier.
Restriction commutes with conjunctions over the carrier.
The inclusion sends the restriction of a formula back to the formula.
Realization of a restriction. On a carrier where the L-structure expands the structure
of the sublanguage along the inclusion, the restriction of a formula is realized exactly when the
formula is. This applies to the reduct of an L-structure, through Mathlib's
LHom.isExpansionOn_reduct.
Pulling a formula back along a language map. An infinitary formula of L' whose occurring
function and relation symbols all lie in the range of g : L →ᴸ L' is the image under g of a
formula of L. No injectivity of g is needed.