Craig interpolation for L_ω₁ω, relational core without a global countability hypothesis (Layer 2) #
Layer 1 (craig_interpolation_relational_countable) needs the whole language to have countably
many relation symbols. This layer removes that hypothesis: an individual L_ω₁ω sentence mentions
only countably many symbols (relationsIn_countable), so the two roots r₁, r₂ live inside the
sublanguage symbSublang F R generated by their (countable) combined symbol sets, which is
countable-relational. We restrict both roots into that sublanguage, transport the entailment
(entails_restrictSymbols_singleton), apply Layer 1 there, and map the interpolant back along
symbSublangIncl — the reduct transport keeps the two entailments and the occurrence bounds intact.
craig_interpolation_relational [L.IsRelational] :
Sentenceω.Entails r₁ r₂ →
∃ θ, θ.functionsIn ⊆ r₁.functionsIn ∩ r₂.functionsIn ∧
θ.relationsIn ⊆ r₁.relationsIn ∩ r₂.relationsIn ∧
Sentenceω.Entails r₁ θ ∧ Sentenceω.Entails θ r₂
A symbol-generated sublanguage of a relational language is relational: the function subtypes are carved out of already-empty function sorts.
Mapping a sublanguage interpolant back to L: entailment and occurrence transport #
These four transports are generic in the sublanguage inclusion — nothing about them is specific to Craig — so they are exported for the Lyndon refinement (issue #14, Unit 5), which needs the same entailment and function-occurrence transports alongside its own signed relation transport.
Left entailment transport: a sublanguage entailment r₁.restrictSymbols ⊨ θ' lifts, along the
inclusion, to r₁ ⊨ θ'.mapLanguage incl in L (via the sublanguage reduct of an L-model).
Right entailment transport: a sublanguage entailment θ' ⊨ r₂.restrictSymbols lifts to
θ'.mapLanguage incl ⊨ r₂ in L.
Function-occurrence transport: the mapped interpolant's functions stay within r's functions,
given the sublanguage bound against the restriction.
Relation-occurrence transport (companion of the above for relation symbols).
The relational Craig theorem (no global countability hypothesis) #
Craig interpolation for L_ω₁ω — relational, no global countability hypothesis. Over a
purely relational language (of arbitrarily many symbols), an L_ω₁ω-entailment r₁ ⊨ r₂ has a
base-L interpolant whose symbols lie in the intersection of the roots' occurrence sets.