Documentation

InfinitaryLogic.Methods.Interpolation.LyndonPairedCP

The polarity-refined consistency property and paired model (issue #14, Unit 4b) #

The sixteen ConsistencyPropertyEqOn fields for the polarity-refined paired family, and the model endpoint the Lyndon argument will consume.

The port is field-for-field with the Craig instance; only the side-bound reasoning changes, and it changes exactly where the audit predicted:

This is the first Lyndon file to invoke the countable-completion kernel: exists_henkinComplete and exists_model_of_henkinComplete are consumed exactly as the Craig development consumes them, with no MaximalConsistent machinery — a fact the truth-lemma dependency-cone guard now checks for exists_lyndon_paired_model_neg.

Root inseparability itself is not proved here; that (and interpolation) is Unit 5.

The remaining quantifier round-trip consumers, in signed form #

theorem FirstOrder.Language.lyndonInsepAt_insert_congr {L : Language} {F : Set ((n : ) × L.Functions n)} {P N : Set ((n : ) × L.Relations n)} {A : Finset } {Γ Δ : Set (L.withConstants ).Sentenceω} {σ₁ σ₂ : (L.withConstants ).Sentenceω} (hequiv : ∀ (M : Type) [inst : (L.withConstants ).Structure M] [Nonempty M], σ₁.Realize M σ₂.Realize M) :
LyndonInsepAt F P N A (insert σ₁ Γ) Δ LyndonInsepAt F P N A (insert σ₂ Γ) Δ

Replacing a hypothesis by a semantically equivalent one does not change inseparability (the separator is untouched, so the polarity classes are irrelevant).

theorem FirstOrder.Language.lyndonInsepAt_instConst_of_ex {L : Language} {F : Set ((n : ) × L.Functions n)} {P N : Set ((n : ) × L.Relations n)} {A : Finset } {Γ Δ : Set (L.withConstants ).Sentenceω} (c : ) (ψ : (L.withConstants ).BoundedFormulaω Empty 1) (hcψ : csentenceJConsts ψ) (hcΓ : γΓ, csentenceJConsts γ) (hcΔ : δΔ, csentenceJConsts δ) (h : LyndonInsepAt F P N A (insert ψ.ex Γ) Δ) :
LyndonInsepAt F P N (insert c A) (insert (instConst c ψ) Γ) Δ

C7 consumer (existential), signed.

theorem FirstOrder.Language.lyndonInsepAt_not_instConst_of_not_all {L : Language} {F : Set ((n : ) × L.Functions n)} {P N : Set ((n : ) × L.Relations n)} {A : Finset } {Γ Δ : Set (L.withConstants ).Sentenceω} (c : ) (ψ : (L.withConstants ).BoundedFormulaω Empty 1) (hcψ : csentenceJConsts ψ.not) (hcΓ : γΓ, csentenceJConsts γ) (hcΔ : δΔ, csentenceJConsts δ) (h : LyndonInsepAt F P N A (insert ψ.all.not Γ) Δ) :
LyndonInsepAt F P N (insert c A) (insert (instConst c ψ.not) Γ) Δ

C7 consumer (negated universal), signed: ¬∀x ψ is ∃x ¬ψ, witnessed by ¬ψ(c).

theorem FirstOrder.Language.lyndonInsepAt_not_instConst_of_not_all_right {L : Language} {F : Set ((n : ) × L.Functions n)} {P N : Set ((n : ) × L.Relations n)} {A : Finset } {Γ Δ : Set (L.withConstants ).Sentenceω} (c : ) (ψ : (L.withConstants ).BoundedFormulaω Empty 1) (hcψ : csentenceJConsts ψ.not) (hcΓ : γΓ, csentenceJConsts γ) (hcΔ : δΔ, csentenceJConsts δ) (h : LyndonInsepAt F P N A Γ (insert ψ.all.not Δ)) :
LyndonInsepAt F P N (insert c A) Γ (insert (instConst c ψ.not) Δ)

The right twin of the negated-universal C7 consumer, again by conjugation.

The consistency property #

def FirstOrder.Language.lyndonPairedConsistencyProperty {L : Language} (F₁ : Set ((n : ) × L.Functions n)) (P₁ N₁ : Set ((n : ) × L.Relations n)) (F₂ : Set ((n : ) × L.Functions n)) (P₂ N₂ : Set ((n : ) × L.Relations n)) (rL rR : (L.withConstants ).Sentenceω) (hrL : (sentenceJConsts rL).Finite) (hrR : (sentenceJConsts rR).Finite) :
Equations
  • One or more equations did not get rendered due to their size.
Instances For

    The paired model endpoint #

    theorem FirstOrder.Language.exists_lyndon_paired_model {L : Language} [L.IsRelational] [Countable ((l : ) × L.Relations l)] (F₁ : Set ((n : ) × L.Functions n)) (P₁ N₁ : Set ((n : ) × L.Relations n)) (F₂ : Set ((n : ) × L.Functions n)) (P₂ N₂ : Set ((n : ) × L.Relations n)) (rL rR : (L.withConstants ).Sentenceω) (hrL : (sentenceJConsts rL).Finite) (hrR : (sentenceJConsts rR).Finite) (hrLsent : rL SentBndPol F₁ P₁ N₁) (hrRsent : rR SentBndPol F₂ P₂ N₂) (A₀ : Finset ) (hsupp : sentenceJConsts rL sentenceJConsts rRA₀) (hroot : LyndonInsepAt (F₁ F₂) (P₁ N₂) (N₁ P₂) A₀ {rL} {rR}) :
    ∃ (M : Type) (x : (L.withConstants ).Structure M) (_ : Nonempty M), rL.Realize M rR.Realize M

    Paired model existence, polarity-refined. From a root pair side-typed at the two polarity classes and inseparable at the flipped intersection class, the fair enumeration produces a Henkin-complete set containing both roots, whose quotient term model realizes them.

    theorem FirstOrder.Language.exists_lyndon_paired_model_neg {L : Language} [L.IsRelational] [Countable ((l : ) × L.Relations l)] (F₁ : Set ((n : ) × L.Functions n)) (P₁ N₁ : Set ((n : ) × L.Relations n)) (F₂ : Set ((n : ) × L.Functions n)) (P₂ N₂ : Set ((n : ) × L.Relations n)) (r₁ r₂ : (L.withConstants ).Sentenceω) (hr₁ : (sentenceJConsts r₁).Finite) (hr₂ : (sentenceJConsts r₂).Finite) (hr₁sent : r₁ SentBndPol F₁ P₁ N₁) (hr₂sent : BoundedFormulaω.not r₂ SentBndPol F₂ P₂ N₂) (A₀ : Finset ) (hsupp : sentenceJConsts r₁ sentenceJConsts (BoundedFormulaω.not r₂)A₀) (hroot : LyndonInsepAt (F₁ F₂) (P₁ N₂) (N₁ P₂) A₀ {r₁} {BoundedFormulaω.not r₂}) :
    ∃ (M : Type) (x : (L.withConstants ).Structure M) (_ : Nonempty M), r₁.Realize M ¬r₂.Realize M

    The Unit-5 consumer endpoint: instantiating the right root at r₂.not gives one model realizing the left root and refuting the (un-negated) right root. Root inseparability is a hypothesis here; establishing it from a failed interpolant is Unit 5's business.