Documentation

InfinitaryLogic.Lomega1omega.Fragment

Fragments of L_{ω₁ω} #

The foundational fragment interface of issue #13, per the frozen audit (docs/fragments-audit.md): a fragment is an arity-indexed set of formulas over Empty free variables (parameters enter semantically, through tuples), closed under CONSTRUCTOR COMPONENTS only — the direction every induction (A-elementarity, Tarski–Vaught, Löwenheim–Skolem, chain unions) consumes. Deliberately absent, per the audit: atomic-formula membership (would force countable fragments to have countable languages), formation closure under countable connectives (destroys countability), syntactic substitution closure (subsumed by semantic parameters), and formal-negation closure (an NNF concern, #14).

structure FirstOrder.Language.Fragment (L : Language) :
Type (max u v)

A fragment: an arity-indexed set of L_{ω₁ω}-formulas closed under constructor components.

Instances For

    The full fragment: every formula.

    Equations
    Instances For

      Fragments are closed under intersection.

      Equations
      • A.inter B = { toSet := A.toSet B.toSet, imp_left_mem := , imp_right_mem := , all_mem := , iInf_mem := , iSup_mem := }
      Instances For

        Generated fragments #

        The component-closure of a set of formulas, as an inductive reachability predicate.

        Instances For

          The generated fragment: the smallest fragment containing S.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            theorem FirstOrder.Language.Fragment.generated_le {L : Language} {S : Set ((n : ) × L.BoundedFormulaω Empty n)} {A : L.Fragment} (hSA : SA.toSet) :

            The generated fragment is the smallest one containing S.

            Countability of generated fragments: the component-path encoding #

            Iterated component steps along a list of codes.

            Equations
            Instances For
              theorem FirstOrder.Language.Fragment.componentPath_append {L : Language} (p : (n : ) × L.BoundedFormulaω Empty n) (l₁ l₂ : List ( × )) :
              componentPath p (l₁ ++ l₂) = (componentPath p l₁).bind fun (x : (n : ) × L.BoundedFormulaω Empty n) => componentPath x l₂

              A single step lands inside the generated set.

              theorem FirstOrder.Language.Fragment.generatedFrom_iff_path {L : Language} {S : Set ((n : ) × L.BoundedFormulaω Empty n)} {p : (n : ) × L.BoundedFormulaω Empty n} :
              GeneratedFrom S p sS, ∃ (l : List ( × )), componentPath s l = some p

              The path characterization: the generated fragment is exactly what is reachable from S by finitely many coded component steps.

              Countability: the fragment generated by a countable set is countable.

              The generated fragment of a single sentence — countable, no hypotheses.

              Equations
              Instances For

                The generated fragment of a COUNTABLE theory (the sentence case is automatic; theory countability is an assumption, per the audit).

                Equations
                Instances For