Documentation

LeanPool.OrderClosures.WeaklyFatou.FiniteTree

The finite tree #

The finite-height tree, its cylinder sets, and the parent-disjointness lemma.

@[reducible, inline]

Nodes of the finite-height tree G_n = ⋃_{k ≤ n} ℕ^k.

Equations
Instances For
    @[reducible, inline]

    Level of a node.

    Equations
    Instances For

      The root ∅.

      Equations
      Instances For
        def OrderClosures.TreeNode.child {n : ℕ} (t : TreeNode n) (h : t.level < n) (m : ℕ) :

        The child t⌢m.

        Equations
        Instances For

          The parent map, fixing the root.

          Equations
          Instances For

            Restriction t|j.

            Equations
            Instances For
              @[reducible, inline]

              Non-terminal nodes H_n.

              Equations
              Instances For
                @[reducible, inline]

                The product space I_n = ℕ^{H_n}.

                Equations
                Instances For

                  The strict prefix t|j, regarded as a non-terminal node.

                  Equations
                  Instances For

                    The cylinder E_t.

                    Equations
                    Instances For
                      theorem OrderClosures.mem_treeCylinder_child_iff (n : ℕ) (t : TreeNode n) (ht : t.level < n) (m : ℕ) (α : TreeProduct n) :
                      α ∈ treeCylinder n (t.child ht m) ↔ α ∈ treeCylinder n t ∧ α ⟨t, ht⟩ ≤ m

                      Characterizes membership in a child cylinder by the parent coordinates and one new label; used in the cylinder partition proofs.

                      Paper Lemma lem:basic-tree, part (a).

                      The characteristic function s_t = χ_{E_t}.

                      Equations
                      Instances For
                        theorem OrderClosures.treeFunction_apply_of_mem (n : ℕ) (t : TreeNode n) {α : TreeProduct n} (hα : α ∈ treeCylinder n t) :
                        (treeFunction n t) α = 1

                        Evaluates a tree function on its supporting cylinder; used in the exact basis and tree-operator computations.

                        theorem OrderClosures.treeFunction_apply_of_notMem (n : ℕ) (t : TreeNode n) {α : TreeProduct n} (hα : α ∉ treeCylinder n t) :
                        (treeFunction n t) α = 0

                        Evaluates a tree function off its supporting cylinder; used to show finite tree sums vanish outside their cylinder union.

                        @[instance_reducible]

                        BanLat's vector-lattice structure is supplied here for real-valued bounded continuous functions; all non-proof data comes from Mathlib's pointwise instances.

                        Equations
                        theorem OrderClosures.treeFunction_child_properties (n : ℕ) (t : TreeNode n) (ht : t.level < n) :
                        (∀ (m : ℕ), treeCylinder n (t.child ht m) ⊆ treeCylinder n t ∧ treeFunction n (t.child ht m) ≤ treeFunction n t) ∧ (Monotone fun (m : ℕ) => treeFunction n (t.child ht m)) ∧ IsLUB (Set.range fun (m : ℕ) => treeFunction n (t.child ht m)) (treeFunction n t)

                        Paper Lemma lem:basic-tree, parts (b) and (c).

                        theorem OrderClosures.treeCylinder_finite_cover (n : ℕ) (t : TreeNode n) (F : Finset (TreeNode n)) (hcover : ∀ α ∈ treeCylinder n t, ∃ u ∈ F, α ∈ treeCylinder n u) :
                        ∃ u ∈ F, treeCylinder n t ⊆ treeCylinder n u

                        Paper Lemma lem:finite-cover.

                        Parent-disjointness (π-disjointness in the source).

                        Equations
                        Instances For

                          The finite union of the cylinders indexed by F.

                          Equations
                          Instances For

                            The finite supremum of the tree functions, represented by the indicator of the corresponding finite union.

                            Equations
                            Instances For

                              The last label of a nonroot node, with a harmless root default; used to construct coordinates escaping finite cylinder unions.

                              Equations
                              Instances For
                                theorem OrderClosures.strictPrefix_last_eq_parent {n : ℕ} (t : TreeNode n) (ht : 0 < t.level) :
                                have j := ⟨t.level - 1, ⋯⟩; ↑(strictPrefix t j) = t.parent ∧ (↑t).get j = treeLastLabel t

                                Identifies the last strict prefix with the parent of a nonroot node; used when constructing points outside parent-disjoint cylinder families.

                                Records positivity of a finite supremum of tree functions; used in the least-upper-bound statement for parent-disjoint families.

                                theorem OrderClosures.finiteTreeSup_apply_of_notMem (n : ℕ) (F : Finset (TreeNode n)) {α : TreeProduct n} (hα : α ∉ finiteCylinderUnion n F) :
                                (finiteTreeSup n F) α = 0

                                Shows that a finite tree supremum vanishes outside its cylinder union; used in the common-lower-bound argument.

                                theorem OrderClosures.commonLower_le_zero_of_parentDisjoint_subseq (n : ℕ) (F : ℕ → Finset (TreeNode n)) (hF : Pairwise fun (i j : ℕ) => ParentDisjoint ↑(F i) ↑(F j)) (φ : ℕ → ℕ) (hφ : Function.Injective φ) (hroot : ∀ (m : ℕ), TreeNode.root n ∉ F (φ m)) (g : ℕ → BoundedContinuousFunction (TreeProduct n) ℝ) (hgzero : ∀ (m : ℕ), ∀ α ∉ finiteCylinderUnion n (F (φ m)), (g (φ m)) α = 0) {z : BoundedContinuousFunction (TreeProduct n) ℝ} (hz : ∀ (m : ℕ), z ≤ g m) :
                                z ≤ 0

                                Forces a common lower bound to be nonpositive when supports have parent-disjoint subsequences; reused in both tree and transient-band lemmas.

                                theorem OrderClosures.parentDisjoint_treeFunctions_iInf (n : ℕ) (F : ℕ → Finset (TreeNode n)) (hF : Pairwise fun (i j : ℕ) => ParentDisjoint ↑(F i) ↑(F j)) :
                                IsGLB (Set.range fun (m : ℕ) => finiteTreeSup n (F m)) 0

                                Paper Lemma lem:pi-disjoint.