Documentation

InfinitaryLogic.Descriptive.KleeneBrouwer

The Kleene–Brouwer order on a tree #

Pure combinatorics on Descriptive.tree ℕ (prefix-closed sets of List ℕ), no codes: the raw mathematics behind analytic boundedness for well-founded trees (issue #73).

The encoding lands in ℕ∞, which is defined as WithTop ℕ; the named type is what carries the derived WellFoundedLT instance the chain condition uses.

Strict extension and branches #

x is a proper prefix of y.

Equations
Instances For

    The "descending" direction for well-foundedness: y sits below x when it properly extends x.

    Equations
    Instances For

      An infinite branch, as a descending chain in strict extension: a sequence of nodes of T each properly extending the previous one.

      Equations
      Instances For
        def KleeneBrouwer.extBelow (T : ↥(Descriptive.tree ℕ)) (y x : ↥T) :

        The strict-extension relation restricted to the nodes of T.

        Equations
        Instances For
          theorem KleeneBrouwer.ProperPrefix.trans {x y z : List ℕ} (h₁ : ProperPrefix x y) (h₂ : ProperPrefix y z) :

          The Kleene–Brouwer order, via lexicographic order on WithTop ℕ #

          Encode a node so that a proper prefix becomes larger than its extensions: append ⊤.

          Equations
          Instances For

            The Kleene–Brouwer order: proper extensions come first, then leftmost-first differences.

            Equations
            Instances For
              def KleeneBrouwer.kbLT (T : ↥(Descriptive.tree ℕ)) (x y : ↥T) :

              The KB order on the nodes of T.

              Equations
              Instances For
                @[instance_reducible]
                noncomputable def KleeneBrouwer.kbLinearOrder (T : ↥(Descriptive.tree ℕ)) :

                The nodes of T, linearly ordered by KB (pulled back from List ℕ∞).

                Equations
                Instances For
                  theorem KleeneBrouwer.kbLT_iff (T : ↥(Descriptive.tree ℕ)) (x y : ↥T) :
                  kbLT T x y ↔ x < y

                  Proper extensions are KB-below #

                  theorem KleeneBrouwer.kbLT_of_extBelow (T : ↥(Descriptive.tree ℕ)) {y x : ↥T} (h : extBelow T y x) :
                  kbLT T y x

                  KB is well-founded on a well-founded tree #

                  theorem KleeneBrouwer.exists_stable_prefix {f : ℕ → List ℕ} (hf : ∀ (n : ℕ), KBLT (f (n + 1)) (f n)) (k : ℕ) :
                  ∃ (p : List ℕ) (N : ℕ), p.length = k ∧ ∀ (n : ℕ), N ≤ n → List.take k (f n) = p

                  Prefix stabilization: along a strictly KB-descending sequence in a tree, every k-prefix is eventually constant, with full length k.

                  Kleene–Brouwer is well-founded on a well-founded tree.

                  KB is a well-order on a well-founded tree: the linear order from the encoding plus well-foundedness.

                  The height of the tree: the strict supremum of the ranks of its nodes under strict extension.

                  Equations
                  Instances For

                    Given that KB is a well-order on T, the height is at most its order type.