Documentation

LeanPool.Feige.InsertionK

Statistic values on an inserted Boolean chain #

This file connects the concrete inserted Boolean chain to the abstract A/B statistic sequences used in the mass-transport proof of Theorem 2.1.

noncomputable def Feige.insertionLowerK {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (r : ) :

The Bᵣ value at the lifted lower state Cᵣ, extended by zero after the old chain's sentinel.

Equations
Instances For
    noncomputable def Feige.insertionUpperK {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (r : ) :

    The Aᵣ value at the lifted upper state Hᵣ, extended by zero after the old chain's sentinel.

    Equations
    Instances For
      noncomputable def Feige.insertionOldK {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (r : ) :

      The old n-coordinate statistic sequence Fᵣ, including its zero sentinel.

      Equations
      Instances For
        noncomputable def Feige.insertionWidth {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (r : ) :

        Band width wᵣ = Bᵣ - Aᵣ.

        Equations
        Instances For
          noncomputable def Feige.insertionTheta {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (r : ) :

          Conditional interpolation parameter θᵣ = (Fᵣ - Aᵣ) / (Bᵣ - Aᵣ).

          Equations
          Instances For
            theorem Feige.insertionWidth_nonneg {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) ( : ∀ (i : Fin (n + 1)), 0 γ i) ( : ∀ (i : Fin (n + 1)), 0 β i) (r : ) :
            0 insertionWidth γ β σ r

            Monotonicity of K makes every insertion band width nonnegative.

            theorem Feige.insertionOldK_eq_upper_add_theta_mul_width {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (r : ) (hw : insertionWidth γ β σ r 0) :
            insertionOldK γ β σ r = insertionUpperK γ β σ r + insertionTheta γ β σ r * insertionWidth γ β σ r

            The defining interpolation identity, whenever the band has positive width (nonzero is algebraically sufficient).

            theorem Feige.insertionOldK_eq_upper_add_theta_mul_width_all {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (hw : r < n + 1, insertionWidth γ β σ r 0) (r : ) :
            insertionOldK γ β σ r = insertionUpperK γ β σ r + insertionTheta γ β σ r * insertionWidth γ β σ r

            The interpolation identity on the whole zero-extended sequence, given nondegeneracy of every genuine insertion band.

            @[simp]
            theorem Feige.insertionTheta_sentinel {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) :
            insertionTheta γ β σ (n + 1) = 0
            theorem Feige.insertionOldK_zero_eq_lowerK_zero {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) ( : ∀ (i : Fin (n + 1)), 0 γ i) :
            insertionOldK γ β σ 0 = 1 insertionLowerK γ β σ 0 = 1

            The initial old and lower statistic values both equal one.

            theorem Feige.insertionTheta_zero {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) ( : ∀ (i : Fin (n + 1)), 0 γ i) (hw : insertionWidth γ β σ 0 0) :
            insertionTheta γ β σ 0 = 1

            The initial interpolation parameter is one when its band is nondegenerate.

            theorem Feige.booleanChainK_insertChainPerm_eq {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (J : Fin (n + 1)) (r : Fin (n + 2)) :

            At every genuine level, the statistic along the inserted permutation is exactly Bᵣ before insertion and Aᵣ₋₁ afterwards.

            theorem Feige.booleanChainK_insertChainPerm_eq_nat {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (J : Fin (n + 1)) (r : ) :

            The preceding identity, including the zero sentinel and the zero extension beyond it.

            theorem Feige.chainMass_booleanChainK_insert_lower {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (J j : Fin (n + 1)) (hjJ : j J) :
            chainMass (booleanChainK γ β (insertChainPerm σ J)) j = lowerMassForInsertion (insertionLowerK γ β σ) (fun (r : ) => insertionLowerK γ β σ r - insertionUpperK γ β σ r) J j

            The actual chain mass at a present lower state Cⱼ is its lower rank contribution.

            theorem Feige.chainMass_booleanChainK_insert_upper {n : } (γ β : Fin (n + 1)) (σ : Equiv.Perm (Fin n)) (J j : Fin (n + 1)) (hJj : J j) :
            chainMass (booleanChainK γ β (insertChainPerm σ J)) (j + 1) = upperMassForInsertion (insertionUpperK γ β σ) J j

            The actual chain mass at a present upper state Hⱼ is its upper rank contribution, including the terminal edge to the zero sentinel.