Documentation

LeanPool.TrilinearHilbertTransform.Auto.Sec132TwoGraphsHeightStabilization

Section 13.2: Two graphs and height stabilization #

This file was automatically generated by Claude.

Formalization of blueprint Section 13, "Fixed modes, the linear side, and hereditary representatives" (sec:modes), subsection 2, "Two graphs and height stabilization" (lines 1978-2045) of blueprint/formalization_blueprint.tex.

Exceptional blocks and the tiny span (blueprint lines 1987-2000) #

theorem TrilinearHT.Auto.card_int_in_open_interval (B : Finset ℤ) (s : ℝ) (hB : ∀ β ∈ B, s < ↑β ∧ ↑β < s + 4) :
B.card ≤ 4

An open interval of length at most four contains at most four integers.

theorem TrilinearHT.Auto.exceptional_blocks_count {K L W : ℝ} (hK : 0 < K) (hWK : W + 3 * K + 2 * L ≤ 4 * K) (packets : Finset ℝ) (X : Set ℝ) (hX : ∀ x ∈ X, ∃ p ∈ packets, p ≤ x ∧ x ≤ p + W) (B : Finset ℤ) (hB : ∀ β ∈ B, ∃ x ∈ X, ↑β * K - 2 * K - L < x ∧ x < ↑β * K + K + L) :
B.card ≤ 4 * packets.card

Blueprint lines 1991-1993: if the logarithmic evaluations x(a) of all height-H vectors lie in at most d packets of width W, a block start b = βK is exceptional when some x(a) ∈ (b - 2K - log₂T, b + K + log₂T), and W + 3K + 2 log₂ T ≤ 4K, then at most 4d blocks are exceptional.

def TrilinearHT.Auto.vecHeight {d : ℕ} (a : Fin d → ℚ) :

The height of a rational vector: the largest entry height.

Equations
Instances For
    theorem TrilinearHT.Auto.le_vecHeight {d : ℕ} (a : Fin d → ℚ) (i : Fin d) :
    noncomputable def TrilinearHT.Auto.ratEval {d : ℕ} (Θ : Fin d → ℝ) (a : Fin d → ℚ) :

    The evaluation a · Θ.

    Equations
    Instances For
      theorem TrilinearHT.Auto.ratEval_add {d : ℕ} (Θ : Fin d → ℝ) (a b : Fin d → ℚ) :
      ratEval Θ (a + b) = ratEval Θ a + ratEval Θ b
      theorem TrilinearHT.Auto.ratEval_smul {d : ℕ} (Θ : Fin d → ℝ) (c : ℚ) (a : Fin d → ℚ) :
      ratEval Θ (c • a) = ↑c * ratEval Θ a
      theorem TrilinearHT.Auto.tiny_span_closed {d : ℕ} (Θ : Fin d → ℝ) {H : ℕ} (hH : 1 ≤ H) {ε Λ : ℝ} (hε : 0 ≤ ε) (hgap : ∀ (a : Fin d → ℚ), vecHeight a ≤ H → |ratEval Θ a| ≤ ε ∨ Λ ≤ |ratEval Θ a|) {n : ℕ} (v : Fin n → Fin d → ℚ) (hvH : ∀ (i : Fin n), vecHeight (v i) ≤ H) (hvt : ∀ (i : Fin n), |ratEval Θ (v i)| ≤ ε) (hsmall : ↑n * (↑d.factorial * ↑H ^ (d ^ 2 + d)) * ε < Λ) (a : Fin d → ℚ) (ha : a ∈ Submodule.span ℚ (Set.range v)) (haH : vecHeight a ≤ H) :
      |ratEval Θ a| ≤ ε

      Blueprint lines 1995-1997: at a nonexceptional block (every height-H vector is tiny, |a·Θ| ≤ ε, or large, |a·Θ| ≥ Λ), every height-H vector in the rational span of the tiny height-H vectors is tiny, provided (n+1) d! H^{d²+d} ε < Λ for any spanning family size n (here all tiny vectors of height at most H).

      Height stabilization (lem:stabilize, blueprint lines 2002-2029) #

      theorem TrilinearHT.Auto.prime_pow_dvd_of_mul {p : ℕ} (hp : Nat.Prime p) {R Δ q : ℕ} {x : ℤ} (hq : 0 < q) (hqR : q < p ^ (R - Δ)) (hΔR : Δ ≤ R) (h : ↑p ^ R ∣ ↑q * x) :
      ↑p ^ Δ ∣ x

      If p^R ∣ q x with 0 < q < p^(R - Δ), then p^Δ ∣ x.

      theorem TrilinearHT.Auto.six_pow_dvd_of_mul {R Δ q : ℕ} {x z : ℤ} (hq : 0 < q) (hqR : q < 2 ^ (R - Δ)) (hΔR : Δ ≤ R) (h : ↑q * x = 6 ^ R * z) :
      6 ^ Δ ∣ x

      Blueprint line 2018: if q x = 6^R z with 0 < q < 2^(R - Δ), then 6^Δ ∣ x.

      theorem TrilinearHT.Auto.quotient_six_pow_dvd {n : ℕ} (Λ : Submodule ℤ (Fin n → ℤ)) (hΛ : IntegerSaturated Λ) {R Δ q : ℕ} (hq : 0 < q) (hqR : q < 2 ^ (R - Δ)) (hΔR : Δ ≤ R) (x z : Fin n → ℤ) (h : ↑q • x - 6 ^ R • z ∈ Λ) :
      ∃ (y : Fin n → ℤ), x - 6 ^ Δ • y ∈ Λ

      Blueprint lines 2016-2018: in the free quotient of ℤⁿ by a saturated lattice Λ, a relation q x ≡ 6^R z (mod Λ) with 0 < q < 2^(R - Δ) forces x ≡ 6^Δ y (mod Λ) for an integer vector y.

      theorem TrilinearHT.Auto.stabilize_witness {W : Type u_1} [AddCommGroup W] [Module ℚ W] {n : ℕ} (K : Submodule ℚ W) (ι : (Fin n → ℚ) →ₗ[ℚ] W) (U : Submodule ℚ (Fin n → ℚ)) (hUK : U ≤ Submodule.comap ι K) {k : ℕ} (g : Fin k → Fin n → ℤ) (hgU : Submodule.span ℚ (Set.range fun (i : Fin k) => (integerRationalMap n) (g i)) = U) {G : ℚ} (hG : ∀ (i : Fin k) (l : Fin n), |↑(g i l)| ≤ G) {R Δ h Q : ℕ} (hΔR : Δ ≤ R) (hRh : R ≤ h) (hQ : 0 < Q) (hQR : Q < 2 ^ (R - Δ)) {J : ℕ} (a : W) (aj : Fin J → W) (β : Fin J → ℤ) (ha : a = ∑ j : Fin J, (↑(β j) / ↑Q) • aj j) (mj : Fin J → Fin n → ℤ) (hj : ∀ (j : Fin J), aj j + ι ((6 ^ (h - R))⁻¹ • (integerRationalMap n) (mj j)) ∈ K) (mh : Fin n → ℤ) (hh : a + ι ((6 ^ h)⁻¹ • (integerRationalMap n) mh) ∈ K) {S : ℚ} (hUS : ∀ (z : Fin n → ℤ), ι ((integerRationalMap n) z) ∈ K → (∀ (l : Fin n), |↑(z l)| ≤ S) → (integerRationalMap n) z ∈ U) (hzS : ∀ (l : Fin n), |↑Q * ↑(mh l) - 6 ^ R * ∑ j : Fin J, ↑(β j) * ↑(mj j l)| ≤ S) :
      ∃ (m' : Fin n → ℤ), a + ι ((6 ^ (h - Δ))⁻¹ • (integerRationalMap n) m') ∈ K ∧ ∀ (l : Fin n), |↑(m' l)| ≤ 6 ^ (R - Δ) * ∑ j : Fin J, |↑(β j) / ↑Q| * |↑(mj j l)| + ↑k * G

      Blueprint lines 2010-2028 (core of lem:stabilize): let K be a rational subspace, ι the inclusion of the ϑ-coordinates, and U ⊆ K_B = ι⁻¹ K spanned by integer generators g_i with entries at most G. Suppose a = Σ_j (β_j/Q) a_j with 0 < Q < 2^(R-Δ), witnesses a_j + ι(m_j / 6^(h-R)) ∈ K and a + ι(m_h / 6^h) ∈ K, and that the integer vector Q m_h - 6^R Σ_j β_j m_j (which lies in K_B) lies in U (this is U_h = U_{h-R} together with its size bound). Then some integer m' gives a PRE witness a + ι(m' / 6^(h-Δ)) ∈ K with |m'| ≤ 6^(R-Δ) Σ_j |β_j/Q| |m_j| + k G.

      theorem TrilinearHT.Auto.rank_change_heights_card {M : Type u_1} [AddCommGroup M] [Module ℚ M] [FiniteDimensional ℚ M] (V : ℕ → Submodule ℚ M) (hV : Monotone V) (R N : ℕ) :
      {h ∈ Finset.range N | R ≤ h ∧ V (h - R) ≠ V h}.card ≤ Module.finrank ℚ M * R

      Blueprint line 2012: for an increasing family of subspaces of a d-dimensional space, at most d R heights h ≥ R have V_{h-R} ≠ V_h.

      def TrilinearHT.Auto.smallKernelSpan {W : Type u_1} [AddCommGroup W] [Module ℚ W] {n : ℕ} (K : Submodule ℚ W) (ι : (Fin n → ℚ) →ₗ[ℚ] W) (S : ℚ) :

      The span U_S of integer vectors of K_B = ι⁻¹ K with entries at most S (blueprint line 2012).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem TrilinearHT.Auto.smallKernelSpan_le {W : Type u_1} [AddCommGroup W] [Module ℚ W] {n : ℕ} (K : Submodule ℚ W) (ι : (Fin n → ℚ) →ₗ[ℚ] W) (S : ℚ) :
        theorem TrilinearHT.Auto.smallKernelSpan_generators {W : Type u_1} [AddCommGroup W] [Module ℚ W] {n : ℕ} (K : Submodule ℚ W) (ι : (Fin n → ℚ) →ₗ[ℚ] W) (S : ℚ) :
        ∃ k ≤ n, ∃ (g : Fin k → Fin n → ℤ), Submodule.span ℚ (Set.range fun (i : Fin k) => (integerRationalMap n) (g i)) = smallKernelSpan K ι S ∧ ∀ (i : Fin k) (l : Fin n), |↑(g i l)| ≤ S

        Blueprint line 2027: U_S has at most n linearly independent integer generators with entries at most S.

        theorem TrilinearHT.Auto.height_stabilization {W : Type u_1} [AddCommGroup W] [Module ℚ W] {n : ℕ} (K : Submodule ℚ W) (ι : (Fin n → ℚ) →ₗ[ℚ] W) (S : ℕ → ℚ) {R Δ h Q : ℕ} (hΔR : Δ ≤ R) (hRh : R ≤ h) (hS0 : 0 ≤ S (h - R)) (hstable : smallKernelSpan K ι (S (h - R)) = smallKernelSpan K ι (S h)) (hQ : 0 < Q) (hQR : Q < 2 ^ (R - Δ)) {J : ℕ} (a : W) (aj : Fin J → W) (β : Fin J → ℤ) (ha : a = ∑ j : Fin J, (↑(β j) / ↑Q) • aj j) (mj : Fin J → Fin n → ℤ) (hj : ∀ (j : Fin J), aj j + ι ((6 ^ (h - R))⁻¹ • (integerRationalMap n) (mj j)) ∈ K) (mh : Fin n → ℤ) (hh : a + ι ((6 ^ h)⁻¹ • (integerRationalMap n) mh) ∈ K) (hzS : ∀ (l : Fin n), |↑Q * ↑(mh l) - 6 ^ R * ∑ j : Fin J, ↑(β j) * ↑(mj j l)| ≤ S h) :
        ∃ (m' : Fin n → ℤ), a + ι ((6 ^ (h - Δ))⁻¹ • (integerRationalMap n) m') ∈ K ∧ ∀ (l : Fin n), |↑(m' l)| ≤ 6 ^ (R - Δ) * ∑ j : Fin J, |↑(β j) / ↑Q| * |↑(mj j l)| + ↑n * S (h - R)

        Blueprint lem:stabilize (lines 2002-2029), witness form: at a height h ≥ R where the kernel spans are stable, U_{S_{h-R}} = U_{S_h}, a CURRENT relation a + ι(m_h/6^h) ∈ K together with a bounded expansion a = Σ_j (β_j/Q) a_j in vectors with height-(h-R) witnesses (the defining basis of the stable V_{h-R}) yields a direct PRE witness at height h - Δ, of size at most 6^(R-Δ) Σ_j |β_j/Q| |m_j| + n S_{h-R}.

        Coherence of the good predicates (blueprint lines 2031-2047) #

        theorem TrilinearHT.Auto.card_inter_three_ge {α : Type u_1} [DecidableEq α] (Ps A B G : Finset α) (hA : A ⊆ Ps) (hB : B ⊆ Ps) (hG : G ⊆ Ps) :
        A.card + B.card + G.card ≤ 2 * Ps.card + (A ∩ B ∩ G).card

        Three subsets of a finite set: |A| + |B| + |G| ≤ 2 |Ps| + |A ∩ B ∩ G|.

        structure TrilinearHT.Auto.ModeComponents (Mode : Type u_1) (P : Type u_2) [DecidableEq Mode] [DecidableEq P] :
        Type (max u_1 u_2)

        Height-indexed PRE components E_h(m) and CURRENT components F_h(m) of a finite mode set with primary labels π, abstracting the two graphs of eq:PRE and eq:CURRENT: components contain their mode and are determined by any member, PRE refines CURRENT, and both increase with height.

        • E : ℕ → Mode → Finset Mode

          Predecessor graph component of a mode at each height.

        • F : ℕ → Mode → Finset Mode

          Current graph component of a mode at each height.

        • π : Mode → P

          Primary label associated with each mode.

        • E_self (h : ℕ) (m : Mode) : m ∈ self.E h m
        • E_comp (h : ℕ) (m x : Mode) : x ∈ self.E h m → self.E h x = self.E h m
        • F_comp (h : ℕ) (m x : Mode) : x ∈ self.F h m → self.F h x = self.F h m
        • E_le_F (h : ℕ) (m : Mode) : self.E h m ⊆ self.F h m
        • E_mono (h h' : ℕ) (m : Mode) : h ≤ h' → self.E h m ⊆ self.E h' m
        • F_mono (h h' : ℕ) (m : Mode) : h ≤ h' → self.F h m ⊆ self.F h' m
        Instances For
          def TrilinearHT.Auto.ModeComponents.labels {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (S : Finset Mode) :

          The primary labels π(S).

          Equations
          Instances For
            def TrilinearHT.Auto.ModeComponents.Good {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] (h : ℕ) (m : Mode) :

            Blueprint eq:good: a mode is good at height h ≥ Δ when its PRE predecessor carries nine tenths of the primaries of its CURRENT component, and nine tenths of those primaries are nonexceptional and good for the primary (goodP h).

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem TrilinearHT.Auto.ModeComponents.E_eq_of_mem {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) {h : ℕ} {m x : Mode} (hx : x ∈ C.E h m) :
              C.E h m = C.E h x
              theorem TrilinearHT.Auto.ModeComponents.good_same_predecessor {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] (hstab : ∀ (h : ℕ) (x x' : Mode), goodP h (C.π x) → C.π x' = C.π x → x' ∈ C.F h x → x' ∈ C.E (h - Δ) x) {h : ℕ} {m m' : Mode} (hm : C.Good Δ goodP h m) (hm' : C.Good Δ goodP h m') (hmm' : m' ∈ C.F h m) :
              C.E (h - Δ) m = C.E (h - Δ) m'

              Blueprint lines 2034-2035: two good modes in one CURRENT component at height h have the same PRE predecessor at h - Δ, when good primaries satisfy the conclusion of lem:stabilize (two of their modes in one CURRENT component at h are PRE-joined at h - Δ).

              @[instance_reducible]
              instance TrilinearHT.Auto.ModeComponents.instDecidableGood {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] (h : ℕ) (m : Mode) :
              Decidable (C.Good Δ goodP h m)
              Equations
              theorem TrilinearHT.Auto.ModeComponents.good_iff_of_components {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] {h : ℕ} {m m' : Mode} (hE : C.E (h - Δ) m = C.E (h - Δ) m') (hF : C.F h m = C.F h m') :
              C.Good Δ goodP h m ↔ C.Good Δ goodP h m'

              The predicate eq:good depends only on the two components.

              theorem TrilinearHT.Auto.ModeComponents.good_iff_of_minimal_pre {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] {m m' : Mode} (hmm' : m' ∈ C.E 0 m) (h : ℕ) :
              C.Good Δ goodP h m ↔ C.Good Δ goodP h m'

              Blueprint line 2035: modes in one minimal PRE component have identical predicates at every height.

              def TrilinearHT.Auto.ModeComponents.badHeights {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] (J : ℕ) (m : Mode) :

              The bad heights h ≤ J of a mode.

              Equations
              Instances For
                def TrilinearHT.Auto.ModeComponents.Core {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] (J : ℕ) (δ : ℝ) (m : Mode) :

                A core mode has at most δ (J + 1) bad heights.

                Equations
                Instances For

                  The upper heights eq:upper-heights, ⌈4δJ⌉ ≤ h ≤ J.

                  Equations
                  Instances For
                    theorem TrilinearHT.Auto.ModeComponents.core_bad_proportion {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] {J : ℕ} (hJ : 2 ≤ J) {δ : ℝ} (hδ : 0 < δ) (hδ16 : δ ≤ 1 / 16) {m : Mode} (hm : C.Core Δ goodP J δ m) :
                    ↑(C.badHeights Δ goodP J m ∩ upperHeights J δ).card ≤ 2 * δ * ↑(upperHeights J δ).card

                    Blueprint line 2045: a core mode has bad proportion at most 2δ on the upper heights, for δ ≤ 1/16 and J ≥ 2.

                    Components of the PRE and CURRENT graphs (blueprint lines 1980-1988) #

                    noncomputable def TrilinearHT.Auto.ModeComponents.ofEdges {Mode : Type u_1} {P : Type u_2} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] (pre cur : ℕ → Mode → Mode → Prop) (π : Mode → P) (hle : ∀ (h : ℕ) (m m' : Mode), pre h m m' → cur h m m') (hpre : ∀ (h h' : ℕ) (m m' : Mode), h ≤ h' → pre h m m' → pre h' m m') (hcur : ∀ (h h' : ℕ) (m m' : Mode), h ≤ h' → cur h m m' → cur h' m m') :

                    The components of two height-indexed edge relations (eq:PRE and eq:CURRENT): PRE edges are CURRENT edges and both grow with height.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem TrilinearHT.Auto.ModeComponents.ofEdges_E_of_pre {Mode : Type u_1} {P : Type u_2} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] (pre cur : ℕ → Mode → Mode → Prop) (π : Mode → P) (hle : ∀ (h : ℕ) (m m' : Mode), pre h m m' → cur h m m') (hpre : ∀ (h h' : ℕ) (m m' : Mode), h ≤ h' → pre h m m' → pre h' m m') (hcur : ∀ (h h' : ℕ) (m m' : Mode), h ≤ h' → cur h m m' → cur h' m m') {h : ℕ} {m m' : Mode} (hmm' : pre h m m') :
                      m' ∈ (ofEdges pre cur π hle hpre hcur).E h m
                      def TrilinearHT.Auto.ModeSchedule.gapEdge (S : ModeSchedule) {Mode : Type u_1} {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (a r θr : ℝ) (h : ℕ) (m m' : Mode) :

                      The edge relation of eq:PRE / eq:CURRENT at height h with threshold θr on the interval [a, a + r]: some integer vector n with |n|_∞ ≤ E_h brings the frequency difference within θr after the shift n·ϑ/L_h.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        theorem TrilinearHT.Auto.ModeSchedule.gapEdge_succ (S : ModeSchedule) {Mode : Type u_1} {dz : ℕ} (hA : 6 ≤ S.A0) (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (a r θr : ℝ) {h : ℕ} {m m' : Mode} (he : S.gapEdge ω ϑ a r θr h m m') :
                        S.gapEdge ω ϑ a r θr (h + 1) m m'
                        theorem TrilinearHT.Auto.ModeSchedule.gapEdge_mono (S : ModeSchedule) {Mode : Type u_1} {dz : ℕ} (hA : 6 ≤ S.A0) (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (a r θr : ℝ) {h h' : ℕ} (hh : h ≤ h') {m m' : Mode} (he : S.gapEdge ω ϑ a r θr h m m') :
                        S.gapEdge ω ϑ a r θr h' m m'
                        theorem TrilinearHT.Auto.ModeSchedule.gapEdge_threshold (S : ModeSchedule) {Mode : Type u_1} {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (a r : ℝ) {θ θ' : ℝ} (hθ : θ ≤ θ') {h : ℕ} {m m' : Mode} (he : S.gapEdge ω ϑ a r θ h m m') :
                        S.gapEdge ω ϑ a r θ' h m m'
                        noncomputable def TrilinearHT.Auto.ModeSchedule.preCurrent (S : ModeSchedule) {Mode : Type u_1} {P : Type u_2} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] (hA : 6 ≤ S.A0) {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (π : Mode → P) (a rv rt : ℝ) (hrt : S.Ξ / rv ≤ S.Ξ / rt) :

                        The PRE and CURRENT components on a pre-cell [a, a + r_v] (blueprint lines 1980-1988): PRE uses Ξ/r_v, CURRENT Ξ/r_t with r_t ≤ r_v.

                        Equations
                        Instances For

                          Lem:stabilize on the attempt (blueprint lines 2002-2029) #

                          theorem TrilinearHT.Auto.ModeSchedule.gapEdge_walk_sum (S : ModeSchedule) {Mode : Type u_1} {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (a r θr : ℝ) (h : ℕ) {u v : Mode} (p : (SimpleGraph.fromRel (S.gapEdge ω ϑ a r θr h)).Walk u v) :
                          ∃ (n : Fin dz → ℤ), (∀ (i : Fin dz), |↑(n i)| ≤ ↑p.length * S.Eh h) ∧ ∀ x ∈ Set.Icc a (a + r), |ω u x - ω v x + (∑ i : Fin dz, ↑(n i) * ϑ i) / Lh h| ≤ ↑p.length * θr

                          A walk in the graph of gapEdge sums its witnesses: the endpoint frequencies differ by a shift with integer vector of size at most k E_h up to k θ, k the length.

                          theorem TrilinearHT.Auto.ModeSchedule.gapEdge_reachable_sum (S : ModeSchedule) {Mode : Type u_1} [Fintype Mode] {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (a r θr : ℝ) {h : ℕ} (hθ : 0 ≤ θr) (hE : 0 ≤ S.Eh h) {u v : Mode} (huv : (SimpleGraph.fromRel (S.gapEdge ω ϑ a r θr h)).Reachable u v) :
                          ∃ (n : Fin dz → ℤ), (∀ (i : Fin dz), |↑(n i)| ≤ ↑(Fintype.card Mode) * S.Eh h) ∧ ∀ x ∈ Set.Icc a (a + r), |ω u x - ω v x + (∑ i : Fin dz, ↑(n i) * ϑ i) / Lh h| ≤ ↑(Fintype.card Mode) * θr

                          Reachability in the graph of gapEdge within a finite mode set gives a summed witness with fewer steps than modes.

                          theorem TrilinearHT.Auto.rational_span_expand_bounded {m n : ℕ} (v : Fin m → Fin n → ℚ) {B : ℕ} (hB : 1 ≤ B) (hv : ∀ (j : Fin m) (i : Fin n), rationalHeight (v j i) ≤ B) (a : Fin n → ℚ) (hah : ∀ (i : Fin n), rationalHeight (a i) ≤ B) (ha : a ∈ Submodule.span ℚ (Set.range v)) :
                          ∃ (r : ℕ) (e : Fin r ↪ Fin m) (Q : ℕ) (β : Fin r → ℤ), 0 < Q ∧ Q ≤ n.factorial * (B * B ^ (n * n + n)) ^ n ∧ (∀ (k : Fin r), (β k).natAbs ≤ n.factorial * (B * B ^ (n * n + n)) ^ n) ∧ a = ∑ k : Fin r, (↑(β k) / ↑Q) • v (e k)

                          A rational vector of height at most B in the span of vectors of height at most B in ℚⁿ is Σ_k (β_k / Q) v_{e k} over a subfamily, with integers 0 < Q and |β_k| at most n! (B · B^{n(n+1)})^n.

                          The tiny span of a nonexceptional block (blueprint lines 1995-1997) #

                          def TrilinearHT.Auto.tinySet {d : ℕ} (Θ : Fin d → ℝ) (H : ℕ) (ε : ℝ) :
                          Set (Fin d → ℚ)

                          The tiny vectors of height at most H: |a·Θ| ≤ ε.

                          Equations
                          Instances For
                            def TrilinearHT.Auto.tinySpan {d : ℕ} (Θ : Fin d → ℝ) (H : ℕ) (ε : ℝ) :

                            The rational span K_rat of the tiny vectors.

                            Equations
                            Instances For
                              theorem TrilinearHT.Auto.card_piFinset_enum_le (d H : ℕ) (hH : 1 ≤ H) :
                              ↑(Fintype.piFinset fun (x : Fin d) => boundedRationalEnumeration H).card ≤ (3 * ↑H ^ 2) ^ d
                              theorem TrilinearHT.Auto.tiny_of_mem_tinySpan {d : ℕ} (Θ : Fin d → ℝ) {H : ℕ} (hH : 1 ≤ H) {ε Λ : ℝ} (hε : 0 ≤ ε) (hgap : ∀ (a : Fin d → ℚ), vecHeight a ≤ H → |ratEval Θ a| ≤ ε ∨ Λ ≤ |ratEval Θ a|) (hsmall : (3 * ↑H ^ 2) ^ d * (↑d.factorial * ↑H ^ (d ^ 2 + d)) * ε < Λ) {a : Fin d → ℚ} (ha : a ∈ tinySpan Θ H ε) (haH : vecHeight a ≤ H) :
                              |ratEval Θ a| ≤ ε

                              Blueprint lines 1995-1997: at a nonexceptional block every height-H vector of the tiny span is tiny.

                              The stabilization core (blueprint lem:stabilize, lines 2002-2029) #

                              def TrilinearHT.Auto.zEmb (dv dz : ℕ) :
                              (Fin dz → ℚ) →ₗ[ℚ] Fin (dv + dz) → ℚ

                              The embedding w ↦ (0, w) of the ϑ-coordinates.

                              Equations
                              Instances For
                                def TrilinearHT.Auto.witnessSpan {dv dz : ℕ} (K : Submodule ℚ (Fin (dv + dz) → ℚ)) (D : ℕ) (E : ℚ) (i : ℕ) :
                                Submodule ℚ (Fin (dv + dz) → ℚ)

                                The witness spans V_i: height-D vectors q with an integer m, |m|_∞ ≤ D E_i, such that q + (0, m/6^i) lies in K.

                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For

                                  The expansion constant d! (D · D^{d(d+1)})^d of rational_span_expand_bounded.

                                  Equations
                                  Instances For
                                    theorem TrilinearHT.Auto.stabilize_core {dv dz : ℕ} (K : Submodule ℚ (Fin (dv + dz) → ℚ)) {D : ℕ} (hD : 1 ≤ D) (E S : ℕ → ℚ) (hE : ∀ (i : ℕ), 0 ≤ E i) {R Δ h : ℕ} (hΔR : Δ ≤ R) (hRh : R ≤ h) (hS0 : 0 ≤ S (h - R)) (hV : witnessSpan K D (E (h - R)) (h - R) = witnessSpan K D (E h) h) (hU : smallKernelSpan K (zEmb dv dz) (S (h - R)) = smallKernelSpan K (zEmb dv dz) (S h)) (hQR : expandConst (dv + dz) D < 2 ^ (R - Δ)) (hzS : ↑(expandConst (dv + dz) D) * (↑D * E h) + 6 ^ R * ((3 * ↑D ^ 2) ^ (dv + dz) * (↑(expandConst (dv + dz) D) * (↑D * E (h - R)))) ≤ S h) {a : Fin (dv + dz) → ℚ} (haD : vecHeight a ≤ D) {mh : Fin dz → ℤ} (hmh : ∀ (l : Fin dz), |↑(mh l)| ≤ ↑D * E h) (hb : a + (zEmb dv dz) ((6 ^ h)⁻¹ • (integerRationalMap dz) mh) ∈ K) :
                                    ∃ (m' : Fin dz → ℤ), a + (zEmb dv dz) ((6 ^ (h - Δ))⁻¹ • (integerRationalMap dz) m') ∈ K ∧ ∀ (l : Fin dz), |↑(m' l)| ≤ 6 ^ (R - Δ) * ((3 * ↑D ^ 2) ^ (dv + dz) * (↑(expandConst (dv + dz) D) * (↑D * E (h - R)))) + ↑dz * S (h - R)

                                    Blueprint lem:stabilize, core: if the witness spans and the kernel spans are stable between h - R and h, a vector a of height at most D with a CURRENT relation a + (0, m_h/6^h) ∈ K, |m_h| ≤ D E_h, has a witness m' at height h - Δ of size at most 6^{R-Δ} J C D E_{h-R} + d_z S_{h-R}, where C is the expansion constant and J the number of height-D vectors.

                                    theorem TrilinearHT.Auto.ratEval_zEmb {dv dz : ℕ} (Θ : Fin (dv + dz) → ℝ) (a : Fin (dv + dz) → ℚ) (w : Fin dz → ℚ) :
                                    ratEval Θ (a + (zEmb dv dz) w) = ratEval Θ a + ∑ l : Fin dz, ↑(w l) * Θ (Fin.natAdd dv l)
                                    theorem TrilinearHT.Auto.vecHeight_shift_le {dv dz : ℕ} {a : Fin (dv + dz) → ℚ} {D : ℕ} (haD : vecHeight a ≤ D) {m : Fin dz → ℤ} {h M : ℕ} (hm : ∀ (l : Fin dz), |↑(m l)| ≤ ↑M) (h6 : 6 ^ h ≤ M) :
                                    ↑(vecHeight (a + (zEmb dv dz) ((6 ^ h)⁻¹ • (integerRationalMap dz) m))) ≤ max (↑D) (3 * (↑D * ↑M) ^ 2)

                                    The height of a + (0, m/6^h) for |m| ≤ M, 6^h ≤ M: at most 3 (D M)².

                                    theorem TrilinearHT.Auto.ModeSchedule.stabilize_pre (S : ModeSchedule) (hA : 6 ≤ S.A0) {Mode : Type u_1} {P : Type u_2} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] {dv dz : ℕ} (ω : Mode → ℝ → ℝ) (Θ : Fin (dv + dz) → ℝ) (π : Mode → P) (a0 rv rt : ℝ) (hrv : 0 ≤ rv) (hrt : S.Ξ / rv ≤ S.Ξ / rt) (hΞrt : 0 ≤ S.Ξ / rt) {D Hn : ℕ} (hD : 1 ≤ D) (hHn : 1 ≤ Hn) (p : P) (hsame : ∀ (x x' : Mode), π x = p → π x' = p → ∃ (a : Fin (dv + dz) → ℚ), vecHeight a ≤ D ∧ ∀ y ∈ Set.Icc a0 (a0 + rv), ω x y - ω x' y = ratEval Θ a) {Tt : ℝ} (hgap : ∀ (a : Fin (dv + dz) → ℚ), vecHeight a ≤ Hn → |ratEval Θ a| ≤ Tt⁻¹ / rv ∨ Tt / rt ≤ |ratEval Θ a|) (hε : 0 ≤ Tt⁻¹ / rv) (hsmall : (3 * ↑Hn ^ 2) ^ (dv + dz) * (↑(dv + dz).factorial * ↑Hn ^ ((dv + dz) ^ 2 + (dv + dz))) * (Tt⁻¹ / rv) < Tt / rt) (htiny : Tt⁻¹ / rv ≤ S.Ξ / rv) (Eq Sk : ℕ → ℚ) (hEq0 : ∀ (i : ℕ), 0 ≤ Eq i) {R Δ h : ℕ} (hΔR : Δ ≤ R) (hRh : R ≤ h) (hSk0 : 0 ≤ Sk (h - R)) (hV : witnessSpan (tinySpan Θ Hn (Tt⁻¹ / rv)) D (Eq (h - R)) (h - R) = witnessSpan (tinySpan Θ Hn (Tt⁻¹ / rv)) D (Eq h) h) (hU : smallKernelSpan (tinySpan Θ Hn (Tt⁻¹ / rv)) (zEmb dv dz) (Sk (h - R)) = smallKernelSpan (tinySpan Θ Hn (Tt⁻¹ / rv)) (zEmb dv dz) (Sk h)) (hQR : expandConst (dv + dz) D < 2 ^ (R - Δ)) (hzS : ↑(expandConst (dv + dz) D) * (↑D * Eq h) + 6 ^ R * ((3 * ↑D ^ 2) ^ (dv + dz) * (↑(expandConst (dv + dz) D) * (↑D * Eq (h - R)))) ≤ Sk h) (hEcur : ∀ (z : ℤ), |↑z| ≤ ↑(Fintype.card Mode) * S.Eh h → |↑z| ≤ ↑D * Eq h) (hcurgap : ↑(Fintype.card Mode) * (S.Ξ / rt) < Tt / rt) {Mh Mp : ℕ} (hMh : ↑(Fintype.card Mode) * S.Eh h ≤ ↑Mh) (h6h : 6 ^ h ≤ Mh) (hMhH : max (↑D) (3 * (↑D * ↑Mh) ^ 2) ≤ ↑Hn) (hBp : ↑(6 ^ (R - Δ) * ((3 * ↑D ^ 2) ^ (dv + dz) * (↑(expandConst (dv + dz) D) * (↑D * Eq (h - R)))) + ↑dz * Sk (h - R)) ≤ S.Eh (h - Δ)) (hMp : S.Eh (h - Δ) ≤ ↑Mp) (h6p : 6 ^ (h - Δ) ≤ Mp) (hMpH : max (↑D) (3 * (↑D * ↑Mp) ^ 2) ≤ ↑Hn) (x x' : Mode) :
                                    π x = p → π x' = p → x' ∈ (S.preCurrent hA ω (fun (l : Fin dz) => Θ (Fin.natAdd dv l)) π a0 rv rt hrt).F h x → S.gapEdge ω (fun (l : Fin dz) => Θ (Fin.natAdd dv l)) a0 rv (S.Ξ / rv) (h - Δ) x x'

                                    Blueprint lem:stabilize (lines 2002-2029) on a pre-cell [a₀, a₀ + r_v]: let the modes of a fixed primary p differ in frequency by a·Θ with a of height at most D, let the block be nonexceptional for Θ (eq:gap with T) and let the witness and kernel spans be stable between h - R and h. Then two modes of the primary in one CURRENT component at height h are directly PRE-adjacent at height h - Δ. The numeric side conditions are those of eq:mode-parameters.

                                    theorem TrilinearHT.Auto.witnessSpan_mono {dv dz : ℕ} (K : Submodule ℚ (Fin (dv + dz) → ℚ)) (D : ℕ) (Eq : ℕ → ℚ) (hEq : ∀ (i : ℕ), 6 * Eq i ≤ Eq (i + 1)) :
                                    Monotone fun (i : ℕ) => witnessSpan K D (Eq i) i

                                    The witness spans increase with height when E_{i+1} ≥ 6 E_i (replace m by 6m).

                                    theorem TrilinearHT.Auto.bad_heights_card {dv dz : ℕ} (K : Submodule ℚ (Fin (dv + dz) → ℚ)) (D : ℕ) (Eq Sk : ℕ → ℚ) (hEq : ∀ (i : ℕ), 6 * Eq i ≤ Eq (i + 1)) (hSk : Monotone Sk) (R N : ℕ) :
                                    {h ∈ Finset.range N | ¬(R ≤ h ∧ witnessSpan K D (Eq (h - R)) (h - R) = witnessSpan K D (Eq h) h ∧ smallKernelSpan K (zEmb dv dz) (Sk (h - R)) = smallKernelSpan K (zEmb dv dz) (Sk h))}.card ≤ (1 + (dv + dz) + dz) * R

                                    Blueprint line 2012 for one primary: all but (1 + d + d_z) R heights h < N are good for the primary (the witness spans and the kernel spans are stable between h - R and h).

                                    theorem TrilinearHT.Auto.eval_scaleZ {dv dz Q0 : ℕ} (hQ0 : 0 < Q0) (θv : Fin dv → ℝ) (θz : Fin dz → ℝ) (a : Fin (dv + dz) → ℚ) :
                                    ∑ i : Fin (dv + dz), ↑(a i) * Fin.append θv θz i = ratEval (Fin.append θv fun (l : Fin dz) => θz l / ↑Q0) (scaleZ dv dz Q0 a)
                                    theorem TrilinearHT.Auto.vecHeight_scaleZ_sub_le {dv dz Q0 : ℕ} (hQ0 : 0 < Q0) {B : ℝ} (hB : 1 ≤ B) {a b : Fin (dv + dz) → ℚ} (ha : ∀ (i : Fin (dv + dz)), ↑(rationalHeight (a i)) ≤ B) (hb : ∀ (i : Fin (dv + dz)), ↑(rationalHeight (b i)) ≤ B) :
                                    ↑(vecHeight (scaleZ dv dz Q0 (a - b))) ≤ 2 * (↑Q0 * (3 * (B * B) ^ 2)) ^ 2
                                    def TrilinearHT.Auto.primaryGood {P : Type u_1} {dz : ℕ} (dvOf : P → ℕ) (ΘOf : (p : P) → Fin (dvOf p + dz) → ℝ) (Hn D : ℕ) (ε Λ : ℝ) (Eq Sk : ℕ → ℚ) (R h : ℕ) (p : P) :

                                    The goodness of a primary p at height h (blueprint lines 2006 and 2031): the block is nonexceptional for its frequency vector Θ_p (eq:gap with thresholds ε, Λ at height Hn), R ≤ h, and its witness and kernel spans are stable between h - R and h.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      theorem TrilinearHT.Auto.primaryGood_bad_card {P : Type u_1} {dz : ℕ} (dvOf : P → ℕ) (ΘOf : (p : P) → Fin (dvOf p + dz) → ℝ) (Hn D : ℕ) (ε Λ : ℝ) (Eq Sk : ℕ → ℚ) (hEq : ∀ (i : ℕ), 6 * Eq i ≤ Eq (i + 1)) (hSk : Monotone Sk) (R N : ℕ) (p : P) (hgap : ∀ (a : Fin (dvOf p + dz) → ℚ), vecHeight a ≤ Hn → |ratEval (ΘOf p) a| ≤ ε ∨ Λ ≤ |ratEval (ΘOf p) a|) :
                                      {h ∈ Finset.range N | ¬primaryGood dvOf ΘOf Hn D ε Λ Eq Sk R h p}.card ≤ (1 + (dvOf p + dz) + dz) * R

                                      Blueprint lem:stabilize, counting part: for a primary that is nonexceptional at the block, at most (1 + d + d_z) R heights h < N are not good for it.

                                      theorem TrilinearHT.Auto.keyed_hsame {Md : Type u_1} {Key : Type u_2} {dz : ℕ} (θz : Fin dz → ℝ) {Q0 : ℕ} (hQ0 : 0 < Q0) (left lamOf γOf : Md → ℝ) (keyOf : Md → Key) (dvOf : Key → ℕ) (θvOf : (k : Key) → Fin (dvOf k) → ℝ) {B : ℝ} (hB : 1 ≤ B) (hlam : ∀ (m m' : Md), keyOf m = keyOf m' → lamOf m = lamOf m') (hleft : ∀ (m m' : Md), keyOf m = keyOf m' → left m = left m') (hdiff : ∀ (m m' : Md), keyOf m = keyOf m' → ∃ (a : Fin (dvOf (keyOf m) + dz) → ℚ) (b : Fin (dvOf (keyOf m) + dz) → ℚ), (∀ (i : Fin (dvOf (keyOf m) + dz)), ↑(rationalHeight (a i)) ≤ B) ∧ (∀ (i : Fin (dvOf (keyOf m) + dz)), ↑(rationalHeight (b i)) ≤ B) ∧ γOf m - γOf m' = ∑ i : Fin (dvOf (keyOf m) + dz), ↑((a - b) i) * Fin.append (θvOf (keyOf m)) θz i) (m m' : Md) (hk : keyOf m' = keyOf m) :
                                      ∃ (a : Fin (dvOf (keyOf m) + dz) → ℚ), ↑(vecHeight a) ≤ 2 * (↑Q0 * (3 * (B * B) ^ 2)) ^ 2 ∧ ∀ (y : ℝ), 2 * lamOf m * (y - left m) + γOf m - (2 * lamOf m' * (y - left m') + γOf m') = ratEval (Fin.append (θvOf (keyOf m)) fun (l : Fin dz) => θz l / ↑Q0) a

                                      Blueprint lines 1913 and 2005: keyed modes (one key = one primary on its first-match cell, with one curvature and one recentring point) with slopes ω_m(y) = 2λ_m(y - a_m) + γ_m and same-key frequency differences (a - b)·(θ_v, θ_z) with entries of height at most B differ in slope by a'·Θ' for the normalized vector Θ' = (θ_v, θ_z/Q₀), with a' of height at most 2 (Q₀ · 3 B⁴)².

                                      theorem TrilinearHT.Auto.keyed_hsame_nat {Mode : Type u_1} {Md : Type u_2} {Key : Type u_3} (ι : Mode → Md) {dz : ℕ} (θz : Fin dz → ℝ) {Q0 : ℕ} (hQ0 : 0 < Q0) (left lamOf γOf : Md → ℝ) (keyOf : Md → Key) (dvOf : Key → ℕ) (θvOf : (k : Key) → Fin (dvOf k) → ℝ) {B : ℝ} (hB : 1 ≤ B) (hlam : ∀ (m m' : Md), keyOf m = keyOf m' → lamOf m = lamOf m') (hleft : ∀ (m m' : Md), keyOf m = keyOf m' → left m = left m') (hdiff : ∀ (m m' : Md), keyOf m = keyOf m' → ∃ (a : Fin (dvOf (keyOf m) + dz) → ℚ) (b : Fin (dvOf (keyOf m) + dz) → ℚ), (∀ (i : Fin (dvOf (keyOf m) + dz)), ↑(rationalHeight (a i)) ≤ B) ∧ (∀ (i : Fin (dvOf (keyOf m) + dz)), ↑(rationalHeight (b i)) ≤ B) ∧ γOf m - γOf m' = ∑ i : Fin (dvOf (keyOf m) + dz), ↑((a - b) i) * Fin.append (θvOf (keyOf m)) θz i) {D : ℕ} (hD : 2 * (↑Q0 * (3 * (B * B) ^ 2)) ^ 2 ≤ ↑D) (S : Set ℝ) (x x' : Mode) :
                                      keyOf (ι x') = keyOf (ι x) → ∃ (a : Fin (dvOf (keyOf (ι x)) + dz) → ℚ), vecHeight a ≤ D ∧ ∀ y ∈ S, 2 * lamOf (ι x) * (y - left (ι x)) + γOf (ι x) - (2 * lamOf (ι x') * (y - left (ι x')) + γOf (ι x')) = ratEval (Fin.append (θvOf (keyOf (ι x))) fun (l : Fin dz) => θz l / ↑Q0) a

                                      keyed_hsame in the form used by ModeSchedule.hstab_of_primaryGood: on any set of modes (e.g. those alive on a pre-cell), with keys as primaries, slopes ω_m(y) = 2λ_m(y - a_m) + γ_m and the integral height bound D ≥ 2 (Q₀ · 3 B⁴)².

                                      Persistence of edges across pre-cells (blueprint lines 2084-2086) #

                                      theorem TrilinearHT.Auto.ModeSchedule.gapEdge_transport (S : ModeSchedule) {Mode : Type u_1} {Mode' : Type u_2} {dz : ℕ} (f : Mode → Mode') (ω : Mode → ℝ → ℝ) (ω' : Mode' → ℝ → ℝ) (ϑ : Fin dz → ℝ) {a r a' r' θ θ' : ℝ} (hω : ∀ (m : Mode), ∀ y ∈ Set.Icc a' (a' + r'), ω' (f m) y = ω m y) (hsub : Set.Icc a' (a' + r') ⊆ Set.Icc a (a + r)) (hθ : θ ≤ θ') {h : ℕ} {m m' : Mode} (he : S.gapEdge ω ϑ a r θ h m m') :
                                      S.gapEdge ω' ϑ a' r' θ' h (f m) (f m')

                                      An edge on a cell persists on a sub-cell with a larger threshold, for modes transported by f with unchanged slopes on the sub-cell.

                                      theorem TrilinearHT.Auto.ModeSchedule.reachable_transport {Mode : Type u_1} {Mode' : Type u_2} (f : Mode → Mode') {R : Mode → Mode → Prop} {R' : Mode' → Mode' → Prop} (hR : ∀ (m m' : Mode), R m m' → R' (f m) (f m')) {x x' : Mode} (hx : (SimpleGraph.fromRel R).Reachable x x') :
                                      (SimpleGraph.fromRel R').Reachable (f x) (f x')

                                      Reachability in the edge graph transports along f.

                                      theorem TrilinearHT.Auto.ModeSchedule.pre_sub_later_pre (S : ModeSchedule) (hA : 6 ≤ S.A0) {Mode : Type u_1} {Mode' : Type u_2} {P : Type u_3} {P' : Type u_4} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] [Fintype Mode'] [DecidableEq Mode'] [DecidableEq P'] {dz : ℕ} (ω : Mode → ℝ → ℝ) (ω' : Mode' → ℝ → ℝ) (ϑ : Fin dz → ℝ) (π : Mode → P) (π' : Mode' → P') (f : Mode → Mode') {a rv rt a' rv' rt' : ℝ} (hrt : S.Ξ / rv ≤ S.Ξ / rt) (hrt' : S.Ξ / rv' ≤ S.Ξ / rt') (hω : ∀ (m : Mode), ∀ y ∈ Set.Icc a' (a' + rv'), ω' (f m) y = ω m y) (hsub : Set.Icc a' (a' + rv') ⊆ Set.Icc a (a + rv)) (hth : S.Ξ / rv ≤ S.Ξ / rv') (hth' : S.Ξ / rt ≤ S.Ξ / rt') (h : ℕ) {x x' : Mode} :
                                      (x' ∈ (S.preCurrent hA ω ϑ π a rv rt hrt).E h x → f x' ∈ (S.preCurrent hA ω' ϑ π' a' rv' rt' hrt').E h (f x)) ∧ (x' ∈ (S.preCurrent hA ω ϑ π a rv rt hrt).F h x → f x' ∈ (S.preCurrent hA ω' ϑ π' a' rv' rt' hrt').F h (f x))

                                      Blueprint lines 1984-1986: both graphs on one pre-cell transport to a later pre-cell with the same thresholds.

                                      theorem TrilinearHT.Auto.ModeSystem.hsame {Gd : RealDyadicGrid} {Mc : ℕ} (Ms : ModeSystem Gd Mc) {Q0 : ℕ} (hQ0 : 0 < Q0) {D : ℕ} (hD : 2 * (↑Q0 * (3 * (Ms.Bσ * Ms.Bσ) ^ 2)) ^ 2 ≤ ↑D) {Mode : Type u_1} (ι : Mode → Ms.Md) (S : Set ℝ) (x x' : Mode) :
                                      Ms.keyOf (ι x') = Ms.keyOf (ι x) → ∃ (a : Fin (Ms.dvOf (Ms.keyOf (ι x)) + Ms.zc.dim) → ℚ), vecHeight a ≤ D ∧ ∀ y ∈ S, Ms.slope (ι x) y - Ms.slope (ι x') y = ratEval (Fin.append (Ms.θvOf (Ms.keyOf (ι x))) fun (l : Fin Ms.zc.dim) => Ms.zc.θ l / ↑Q0) a

                                      Blueprint line 2005 for the frozen modes: two modes of one key differ in slope by a·Θ', Θ' = (θ_v, θ_z/Q₀), with a of height at most D.

                                      The frozen mode graphs on retained pre-cells (blueprint lines 1980-1988) #

                                      theorem TrilinearHT.Auto.Ξ_div_le (S : ModeSchedule) (Gd : RealDyadicGrid) {v t : ℤ} (hvt : v ≤ t) :

                                      The block thresholds r_t ≤ r_v give Ξ/r_v ≤ Ξ/r_t.

                                      noncomputable def TrilinearHT.Auto.ModeSystem.preComps {Gd : RealDyadicGrid} {Mc : ℕ} (Ms : ModeSystem Gd Mc) (S : ModeSchedule) (hA : 6 ≤ S.A0) (u t : ℤ) (J : ℤ × ℤ) (hvt : J.1 ≤ t) :
                                      ModeComponents (↥(Ms.alive (ancAt Gd J u))) Ms.Key

                                      The PRE and CURRENT components of the frozen list at the decision depth u on the pre-cell J (depth J.1 = v), with CURRENT threshold at depth t ≥ v (blueprint lines 1980-1988).

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        noncomputable def TrilinearHT.Auto.ModeSystem.blockComps {Gd : RealDyadicGrid} {Mc : ℕ} (Ms : ModeSystem Gd Mc) (S : ModeSchedule) (hA : 6 ≤ S.A0) (b : ℤ) (J : ℤ × ℤ) :
                                        ModeComponents (↥(Ms.alive (ancAt Gd J (b - 4 * ↑S.K)))) Ms.Key

                                        The frozen mode graphs of the block b (u_b = b - 4K, v_b = b - 2K, t_b = b + K) on the pre-cell J.

                                        Equations
                                        Instances For
                                          theorem TrilinearHT.Auto.dyadicGridCell_Icc_subset (Gd : RealDyadicGrid) {I J : ℤ × ℤ} (h : dyadicGridCell Gd J.1 J.2 ⊆ dyadicGridCell Gd I.1 I.2) :
                                          Set.Icc (dyadicGridLeft Gd J.1 J.2) (dyadicGridLeft Gd J.1 J.2 + dyadicGridLength Gd J.1) ⊆ Set.Icc (dyadicGridLeft Gd I.1 I.2) (dyadicGridLeft Gd I.1 I.2 + dyadicGridLength Gd I.1)
                                          def TrilinearHT.Auto.ModeSystem.aliveMap {Gd : RealDyadicGrid} {Mc : ℕ} (Ms : ModeSystem Gd Mc) {U U' : ℤ × ℤ} (hUU : dyadicGridCell Gd U'.1 U'.2 ⊆ dyadicGridCell Gd U.1 U.2) (y : ↥(Ms.alive U)) :
                                          ↥(Ms.alive U')

                                          Inclusion of alive sets for nested decision cells.

                                          Equations
                                          Instances For
                                            theorem TrilinearHT.Auto.ModeSystem.blockComps_eq {Gd : RealDyadicGrid} {Mc : ℕ} (Ms : ModeSystem Gd Mc) (S : ModeSchedule) (hA : 6 ≤ S.A0) {b : ℤ} {J : ℤ × ℤ} (h : J.1 ≤ b + ↑S.K) :
                                            Ms.blockComps S hA b J = Ms.preComps S hA (b - 4 * ↑S.K) (b + ↑S.K) J h
                                            theorem TrilinearHT.Auto.ModeSystem.blockComps_persist {Gd : RealDyadicGrid} {Mc : ℕ} (Ms : ModeSystem Gd Mc) (S : ModeSchedule) (hA : 6 ≤ S.A0) {b b' : ℤ} {J J' : ℤ × ℤ} (hJ : J.1 = b - 2 * ↑S.K) (hJ' : J'.1 = b' - 2 * ↑S.K) (hbb : b ≤ b') (hsub : dyadicGridCell Gd J'.1 J'.2 ⊆ dyadicGridCell Gd J.1 J.2) (h : ℕ) (hUU : dyadicGridCell Gd (ancAt Gd J' (b' - 4 * ↑S.K)).1 (ancAt Gd J' (b' - 4 * ↑S.K)).2 ⊆ dyadicGridCell Gd (ancAt Gd J (b - 4 * ↑S.K)).1 (ancAt Gd J (b - 4 * ↑S.K)).2) {x y : ↥(Ms.alive (ancAt Gd J (b - 4 * ↑S.K)))} :
                                            (y ∈ (Ms.blockComps S hA b J).E h x → Ms.aliveMap hUU y ∈ (Ms.blockComps S hA b' J').E h (Ms.aliveMap hUU x)) ∧ (y ∈ (Ms.blockComps S hA b J).F h x → Ms.aliveMap hUU y ∈ (Ms.blockComps S hA b' J').F h (Ms.aliveMap hUU x))

                                            Blueprint lines 1984-1986 and 2178 (persistence): both graphs of the pre-cell J of block b transport into those of the pre-cell J' ⊆ J of any later block b' ≥ b.

                                            theorem TrilinearHT.Auto.ModeComponents.mem_F_self {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (h : ℕ) (m : Mode) :
                                            m ∈ C.F h m

                                            Exceptional blocks on a path (blueprint line 1996) #

                                            def TrilinearHT.Auto.ExceptionalAt {d : ℕ} (Θ : Fin d → ℝ) (H r0 T : ℝ) (K : ℕ) (b : ℤ) :

                                            Blueprint eq:gap (lines 1991-1995): the block with start b is exceptional for the frequency vector Θ at height H when some rational vector a of height at most H has T⁻¹ / r_{v_b} < |a·Θ| < T / r_{t_b} (neither tiny nor large), where r_n = r₀ 2^{-n}, v_b = b - 2K and t_b = b + K.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              theorem TrilinearHT.Auto.ExceptionalAt.eval_ne_zero {d : ℕ} {Θ : Fin d → ℝ} {r0 T : ℝ} (hr0 : 0 < r0) (hT : 0 < T) {K : ℕ} {b : ℤ} {a : Fin d → ℚ} (ha : T⁻¹ / (r0 * 2 ^ (-(b - 2 * ↑K))) < |ratEval Θ a|) :
                                              ratEval Θ a ≠ 0

                                              Blueprint line 1996 ("zero evaluations are always tiny"): a witness of an exceptional block has a nonzero evaluation.

                                              theorem TrilinearHT.Auto.exceptional_blocks_le {d : ℕ} (Θ : Fin d → ℝ) {H r0 T : ℝ} (hH : 2 ≤ H) (hr0 : 0 < r0) (hT : 1 ≤ T) {K : ℕ} (hK : 0 < K) (hKW : 8 * (↑d + 1) ^ 3 * Real.log (2 * H) / Real.log 2 + 2 * Real.logb 2 T ≤ ↑K) (b0 : ℤ) (Bs : Finset ℤ) (hBs : ∀ β ∈ Bs, ExceptionalAt Θ H r0 T K (b0 + β * ↑K)) :
                                              Bs.card ≤ 4 * d

                                              Blueprint line 1996: each primary is exceptional in at most 4 dim Θ blocks on a path (C d_max). By lem:height the logarithms x(a) = log₂(|a·Θ| r₀) of the nonzero evaluations of height-H vectors lie in at most dim Θ packets of width W = 8 (d+1)³ log(2H) / log 2; a block start b = b₀ + βK is exceptional only if some x(a) lies in (b - 2K - log₂ T, b + K + log₂ T), and a packet meets this window for at most four starts when W + 2 log₂ T ≤ K.

                                              theorem TrilinearHT.Auto.ModeSchedule.exceptional_blocks_le (S : ModeSchedule) {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) {d : ℕ} (hW : 8 * (↑d + 1) ^ 3 * Real.log (2 * S.H) / Real.log 2 ≤ W) (Θ : Fin d → ℝ) {r0 : ℝ} (hr0 : 0 < r0) (b0 : ℤ) (Bs : Finset ℤ) (hBs : ∀ β ∈ Bs, ExceptionalAt Θ S.H r0 S.T S.K (b0 + β * ↑S.K)) :
                                              Bs.card ≤ 4 * d

                                              Blueprint line 1996 at the chosen mode schedule (eq:mode-parameters, with the inputs d_max, D_*, B_* ≥ 2 and Q₀ ≥ 1 of chooseSchedule): when the packet width W of the schedule is at least the width 8 (d+1)³ log(2H) / log 2 of lem:height at the schedule height H in dimension d, each primary of frequency dimension d is exceptional in at most 4d blocks (K ≥ W + 2 log₂ T + C_K log₂ D_*).

                                              The tiny span at a nonexceptional block of the schedule (blueprint lines 1997-1998) #

                                              theorem TrilinearHT.Auto.tinySpan_const_le {d dmax Hn : ℕ} {H : ℝ} (hd : d ≤ dmax) (hd2 : 2 ≤ dmax) (hHn : 1 ≤ Hn) (hHnH : ↑Hn ≤ H) :
                                              (3 * ↑Hn ^ 2) ^ d * (↑d.factorial * ↑Hn ^ (d ^ 2 + d)) ≤ (↑dmax * H) ^ (4 * dmax ^ 4)

                                              The size of the spanning constant of the tiny span: for d ≤ d_max, d_max ≥ 2 and 1 ≤ Hn ≤ H, (3 Hn²)^d d! Hn^(d²+d) ≤ (d_max H)^(4 d_max⁴).

                                              Elementary consequences of eq:mode-parameters #

                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.two_le_Cstar {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) :
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.dmax_le_Cstar {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) :
                                              ↑S.dmax ≤ S.Cstar
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.one_le_A0 {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) :
                                              1 ≤ S.A0
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.thirty_le_Rht {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) :
                                              30 ≤ S.Rht
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.Cstar_lt_two_pow {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) :
                                              S.Cstar < 2 ^ (S.Rht - 10)

                                              C_* < 2^{R_*^{ht} - Δ} with Δ = 10, from R_*^{ht} ≥ log₂ C_* + 2Δ + 10.

                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.base_le_A0 {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCA : 1 ≤ CA) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) :
                                              S.Cstar * 6 ^ S.Rht * S.Bstar * S.Dstar ≤ S.A0
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.six_le_A0 {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCA : 1 ≤ CA) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) :
                                              6 ≤ S.A0
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.H_ge {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) :
                                              27 * S.Dstar ^ 4 * (S.Eh S.Jstar * Lh S.Jstar) ^ 2 < S.H

                                              H > (d_max C_* E_{J_*} B_* L_{J_*} Q₀ Ξ)^{10} dominates 27 D_*⁴ (E_{J_*} L_{J_*})².

                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.two_le_H {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) :
                                              2 ≤ S.H
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.Dstar_lt_H {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) :
                                              S.Dstar < S.H
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.H_mul_Ξ_lt_T {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCT : 1 ≤ CT) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) :
                                              S.H * S.Ξ < S.T
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.one_le_T {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCT : 1 ≤ CT) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) :
                                              1 ≤ S.T
                                              theorem TrilinearHT.Auto.ModeSchedule.Valid.tinySpan_small {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCT : 4 ≤ CT) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) {d : ℕ} (hd : d ≤ S.dmax) {r0 : ℝ} (hr0 : 0 < r0) (b : ℤ) :
                                              (3 * ↑⌊S.H⌋₊ ^ 2) ^ d * (↑d.factorial * ↑⌊S.H⌋₊ ^ (d ^ 2 + d)) * (S.T⁻¹ / (r0 * 2 ^ (-(b - 2 * ↑S.K)))) < S.T / (r0 * 2 ^ (-(b + ↑S.K)))

                                              Blueprint line 1998 at the chosen schedule: the spanning constant (3H²)^d d! H^(d²+d) of the tiny span (tiny_of_mem_tinySpan) times the tiny threshold T⁻¹ / r_{v_b} is below the large threshold T / r_{t_b}, because the threshold ratio is T² 2^{3K} and T > (d_max H)^(C_T d_max⁴) Ξ with C_T ≥ 4 (eq:mode-parameters).

                                              Lem:stabilize at the chosen schedule (blueprint lines 2002-2028) #

                                              theorem TrilinearHT.Auto.gap_of_not_exceptionalAt {d : ℕ} {Θ : Fin d → ℝ} {H r0 T : ℝ} (hH : 0 ≤ H) {K : ℕ} {b : ℤ} (hne : ¬ExceptionalAt Θ H r0 T K b) (a : Fin d → ℚ) (ha : vecHeight a ≤ ⌊H⌋₊) :
                                              |ratEval Θ a| ≤ T⁻¹ / (r0 * 2 ^ (-(b - 2 * ↑K))) ∨ T / (r0 * 2 ^ (-(b + ↑K))) ≤ |ratEval Θ a|

                                              A block that is not exceptional (¬ExceptionalAt) satisfies eq:gap for every rational vector of height at most ⌊H⌋.

                                              theorem TrilinearHT.Auto.ModeSchedule.Ξ_div_lag_le (S : ModeSchedule) {r0 : ℝ} (hr0 : 0 < r0) (b : ℤ) :
                                              S.Ξ / (r0 * 2 ^ (-(b - 2 * ↑S.K))) ≤ S.Ξ / (r0 * 2 ^ (-(b + ↑S.K)))

                                              The block radii r_{t_b} ≤ r_{v_b} (r_n = r₀ 2^{-n}) give Ξ/r_{v_b} ≤ Ξ/r_{t_b}.

                                              noncomputable def TrilinearHT.Auto.ModeSchedule.blockGraphs (S : ModeSchedule) (hA : 6 ≤ S.A0) {Mode : Type u_1} {P : Type u_2} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (π : Mode → P) {r0 : ℝ} (hr0 : 0 < r0) (b : ℤ) (a0 : ℝ) :

                                              The PRE and CURRENT components of the block with start b on the v_b-cell [a₀, a₀ + r_{v_b}] (eq:PRE with Ξ/r_{v_b}, eq:CURRENT with Ξ/r_{t_b}), r_n = r₀ 2^{-n}, v_b = b - 2K, t_b = b + K.

                                              Equations
                                              Instances For

                                                The witness bound of the spans V_i (blueprint line 2012): ⌊D_*⌋ · witE i = ⌊D_* E_i⌋, so an integer vector m satisfies |m|_∞ ≤ ⌊D_*⌋ · witE i exactly when |m|_∞ ≤ D_* E_i.

                                                Equations
                                                Instances For

                                                  The size bound of the generators of the spans U_i (blueprint line 2012): integer vectors z with |z|_∞ ≤ ⌊C_*³ D_* E_i⌋, that is |z|_∞ ≤ C_*³ D_* E_i.

                                                  Equations
                                                  Instances For
                                                    theorem TrilinearHT.Auto.ModeSchedule.witE_succ (S : ModeSchedule) (hA : 6 ≤ S.A0) (hD : 1 ≤ S.Dstar) (i : ℕ) :
                                                    6 * S.witE i ≤ S.witE (i + 1)
                                                    theorem TrilinearHT.Auto.ModeSchedule.six_pow_mul_Eh_le (S : ModeSchedule) (hA : 6 ≤ S.A0) {R h : ℕ} (hRh : R ≤ h) :
                                                    6 ^ R * S.Eh (h - R) ≤ S.Eh h
                                                    theorem TrilinearHT.Auto.ModeSchedule.A0_mul_Eh_le (S : ModeSchedule) (hA : 1 ≤ S.A0) {R Δ h : ℕ} (hΔR : Δ < R) (hRh : R ≤ h) :
                                                    S.A0 * S.Eh (h - R) ≤ S.Eh (h - Δ)
                                                    def TrilinearHT.Auto.ModeSchedule.stabGood (S : ModeSchedule) {P : Type u_1} {dz : ℕ} (dvOf : P → ℕ) (ΘOf : (p : P) → Fin (dvOf p + dz) → ℝ) (r0 : ℝ) (b : ℤ) (h : ℕ) (p : P) :

                                                    Blueprint lem:stabilize: the height h is good for the primary p of the block with start b (frequency vector Θ_p) when p is nonexceptional at the block (eq:gap at height H), h ≥ R_*^{ht}, and neither the span V_i of the height-D_* vectors q' with witnesses q' + (0, m/L_i) ∈ K_rat, |m|_∞ ≤ D_* E_i, nor the span U_i of the integer vectors of K_B of size at most C_*³ D_* E_i changes between i = h - R_*^{ht} and i = h.

                                                    Equations
                                                    Instances For
                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.three_sq_pow_le {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) {d D : ℕ} (hd : d ≤ S.dmax) (hDD : ↑D ≤ S.Dstar) :
                                                      (3 * ↑D ^ 2) ^ d ≤ S.Cstar

                                                      (3 D²)^d ≤ C_* for d ≤ d_max and D ≤ D_*.

                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.expandConst_le {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) {d D : ℕ} (hd : d ≤ S.dmax) (hDD : ↑D ≤ S.Dstar) :
                                                      ↑(expandConst d D) ≤ S.Cstar

                                                      The expansion constant of rational_span_expand_bounded in dimension d ≤ d_max at height D ≤ D_* is at most C_* ("coefficients and common denominator at most C_*").

                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.stab_le_A0 {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCA : 5 ≤ CA) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) :
                                                      S.Cstar ^ 2 * S.Dstar * 6 ^ S.Rht + ↑S.dmax * (S.Cstar ^ 3 * S.Dstar) ≤ S.A0

                                                      The fixed-power choice of A₀ (A₀ ≥ (C_* 6^{R_*^{ht}} B_* D_*)^{C_A} with C_A ≥ 5) dominates C_*² D_* 6^{R_*^{ht}} + d_max C_*³ D_*.

                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.height_budget {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) {M : ℕ} (hM : ↑M ≤ 3 * (S.Dstar * (S.Eh S.Jstar * Lh S.Jstar))) :
                                                      max (↑⌊S.Dstar⌋₊) (3 * (↑⌊S.Dstar⌋₊ * ↑M) ^ 2) ≤ ↑⌊S.H⌋₊

                                                      The heights of the CURRENT and PRE relations in the proof of lem:stabilize are at most H: max(D, 3 (D M)²) ≤ ⌊H⌋ for D = ⌊D_*⌋ and M ≤ 3 D_* E_{J_*} L_{J_*}.

                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.ceil_budget {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) {e : ℝ} (he0 : 0 ≤ e) (he : e ≤ S.Dstar * S.Eh S.Jstar) {i : ℕ} (hi : i ≤ S.Jstar) :
                                                      ↑(⌈e⌉₊ + 6 ^ i) ≤ 3 * (S.Dstar * (S.Eh S.Jstar * Lh S.Jstar))

                                                      ⌈e⌉ + 6^i ≤ 3 D_* E_{J_*} L_{J_*} for 0 ≤ e ≤ D_* E_{J_*} and i ≤ J_*.

                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.stabGood_bad_card {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCA : 1 ≤ CA) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) {P : Type u_1} {dz : ℕ} (dvOf : P → ℕ) (ΘOf : (p : P) → Fin (dvOf p + dz) → ℝ) (r0 : ℝ) (b : ℤ) (p : P) (hdim : dvOf p + dz ≤ S.dmax) (hne : ¬ExceptionalAt (ΘOf p) S.H r0 S.T S.K b) (N : ℕ) :
                                                      {h ∈ Finset.range N | ¬S.stabGood dvOf ΘOf r0 b h p}.card ≤ 3 * S.dmax * S.Rht

                                                      Blueprint lem:stabilize, counting part, at the chosen schedule: for a primary p that is nonexceptional at the block with start b, at most 3 d_max R_*^{ht} heights are not good for it (C d_max R_*^{ht}): the heights below R_*^{ht}, and those where the rank of V_i or U_i changes between h - R_*^{ht} and h.

                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.stabGood_pre {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCA : 5 ≤ CA) (hCT : 4 ≤ CT) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) {Mode : Type u_1} {P : Type u_2} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] (hcard : ↑(Fintype.card Mode) ≤ S.Dstar) {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (π : Mode → P) (dvOf : P → ℕ) (θvOf : (p : P) → Fin (dvOf p) → ℝ) (hdim : ∀ (p : P), dvOf p + dz ≤ S.dmax) {r0 : ℝ} (hr0 : 0 < r0) (b : ℤ) (a0 : ℝ) (hsame : ∀ (x x' : Mode), π x' = π x → ∃ (a : Fin (dvOf (π x) + dz) → ℚ), ↑(vecHeight a) ≤ S.Dstar ∧ ∀ y ∈ Set.Icc a0 (a0 + r0 * 2 ^ (-(b - 2 * ↑S.K))), ω x y - ω x' y = ratEval (Fin.append (θvOf (π x)) ϑ) a) {h : ℕ} (hJ : h ≤ S.Jstar) {x x' : Mode} (hg : S.stabGood dvOf (fun (p : P) => Fin.append (θvOf p) ϑ) r0 b h (π x)) (hπ : π x' = π x) (hF : x' ∈ (S.blockGraphs ⋯ ω ϑ π hr0 b a0).F h x) :
                                                      S.gapEdge ω ϑ a0 (r0 * 2 ^ (-(b - 2 * ↑S.K))) (S.Ξ / (r0 * 2 ^ (-(b - 2 * ↑S.K)))) (h - 10) x x'

                                                      Blueprint lem:stabilize at the chosen schedule, the PRE edge: let the modes of the frozen list on the v_b-cell [a₀, a₀ + r_{v_b}] be at most D_* in number, with primaries π whose frequency vectors are Θ_p = (θ_{v,p}, ϑ) of dimension at most d_max, two modes of one primary differing in slope by a·Θ_p with a of height at most D_* (eq:mode-differences). If h ≤ J_* is good for the primary of x (stabGood), then a mode x' of the same primary in the CURRENT component of x at height h is directly PRE-adjacent to x at height h - Δ, Δ = 10. All numeric side conditions are derived from eq:mode-parameters with C_A ≥ 5 and C_T ≥ 4 as the choice of the absolute constants.

                                                      theorem TrilinearHT.Auto.ModeSchedule.Valid.stabGood_mem_E {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCA : 5 ≤ CA) (hCT : 4 ≤ CT) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hB : 2 ≤ S.Bstar) (hQ : 1 ≤ S.Q0) {Mode : Type u_1} {P : Type u_2} [Fintype Mode] [DecidableEq Mode] [DecidableEq P] (hcard : ↑(Fintype.card Mode) ≤ S.Dstar) {dz : ℕ} (ω : Mode → ℝ → ℝ) (ϑ : Fin dz → ℝ) (π : Mode → P) (dvOf : P → ℕ) (θvOf : (p : P) → Fin (dvOf p) → ℝ) (hdim : ∀ (p : P), dvOf p + dz ≤ S.dmax) {r0 : ℝ} (hr0 : 0 < r0) (b : ℤ) (a0 : ℝ) (hsame : ∀ (x x' : Mode), π x' = π x → ∃ (a : Fin (dvOf (π x) + dz) → ℚ), ↑(vecHeight a) ≤ S.Dstar ∧ ∀ y ∈ Set.Icc a0 (a0 + r0 * 2 ^ (-(b - 2 * ↑S.K))), ω x y - ω x' y = ratEval (Fin.append (θvOf (π x)) ϑ) a) {h : ℕ} (hJ : h ≤ S.Jstar) {x x' : Mode} (hg : S.stabGood dvOf (fun (p : P) => Fin.append (θvOf p) ϑ) r0 b h (π x)) (hπ : π x' = π x) (hF : x' ∈ (S.blockGraphs ⋯ ω ϑ π hr0 b a0).F h x) :
                                                      x' ∈ (S.blockGraphs ⋯ ω ϑ π hr0 b a0).E (h - 10) x

                                                      Lem:stabilize at the chosen schedule, in component form: under the hypotheses of Valid.stabGood_pre, x' lies in the PRE component of x at height h - Δ.

                                                      Coherence of the good predicates at the chosen schedule (blueprint lines 2030-2045) #

                                                      theorem TrilinearHT.Auto.ModeComponents.core_iff_of_minimal_pre {Mode : Type u_1} {P : Type u_2} [DecidableEq Mode] [DecidableEq P] (C : ModeComponents Mode P) (Δ : ℕ) (goodP : ℕ → P → Prop) [(h : ℕ) → DecidablePred (goodP h)] (J : ℕ) (δ : ℝ) {m m' : Mode} (hmm' : m' ∈ C.E 0 m) :
                                                      C.Core Δ goodP J δ m ↔ C.Core Δ goodP J δ m'

                                                      Blueprint line 2039: modes in one minimal PRE component have the same bad heights, so the core/side decision is constant there.

                                                      The side parameters of the coherence argument read off a schedule (blueprint lines 2006-2024): heights ⌊H⌋, mode-difference height ⌊D_*⌋, gap threshold T, witness bounds ⌊D_*⌋ · witE h = ⌊D_* E_h⌋, kernel sizes ⌊C_*³ D_* E_h⌋, lag R_*^{ht}, shift Δ = 10, top height J_*, core fraction δ_*.

                                                      Equations
                                                      Instances For
                                                        theorem TrilinearHT.Auto.ModeSchedule.Valid.two_le_Jstar {S : ModeSchedule} {Cj CA CT CK : ℕ} {δs W : ℝ} (hV : S.Valid Cj CA CT CK δs W) (hCj : 1 ≤ Cj) (hδ : 0 < δs) (hδ1 : δs ≤ 1) (hd2 : 2 ≤ S.dmax) (hD : 2 ≤ S.Dstar) (hDm : 2 ≤ S.Dm) :

                                                        J_* ≥ 2 from J_* ≥ C δ_*^{-2} d_max R_*^{ht} log(2 D_m) with C ≥ 1, δ_* ≤ 1, D_m ≥ 2.