Documentation

InfinitaryLogic.Methods.LopezEscobar.CodeClass

Reconstruction and the code-class equality (issue #10, Unit 3b) #

The converse of Unit 3a: reconstruct the functional KLang-structure from a model of the PC sentence, read a branch off it, and land the base reduct back in Bthe only place IsomorphismInvariant is consumed. The endpoints:

theorem FirstOrder.Language.pcClass_subset {L : Language} [L.IsRelational] [Countable ((l : ) × L.Relations l)] {B : Set L.StructureSpace} (side : PCSide) (T : (n : ) → Set ((Fin nBool) × (Fin n))) (hT : ∀ (c : L.StructureSpace), c B ∃ (g : ), ∀ (n : ), (fun (i : Fin n) => queryCode c i, fun (i : Fin n) => g i) T n) (hinv : IsomorphismInvariant B) :
codeReduct '' ModelsOf (L.pcSentence side T)B

Converse gate (pcClass_subset): the base reducts of the PC class lie in B. This is the sole consumer of IsomorphismInvariant.

theorem FirstOrder.Language.pcClass_eq {L : Language} [L.IsRelational] [Countable ((l : ) × L.Relations l)] {B : Set L.StructureSpace} (side : PCSide) (T : (n : ) → Set ((Fin nBool) × (Fin n))) (hT : ∀ (c : L.StructureSpace), c B ∃ (g : ), ∀ (n : ), (fun (i : Fin n) => queryCode c i, fun (i : Fin n) => g i) T n) (hinv : IsomorphismInvariant B) :

The code-class equality (needs invariance): the base reducts of the PC class are exactly B.