Documentation

LeanPool.BollobasNikiforov.TN.Convex

Convex vanishing at zero and total nonnegativity #

Lemma lem:convex of docs/sol.tex: if f : [0, ∞) → [0, ∞) is convex and f 0 = 0, then for 0 < t₁ ≤ ⋯ ≤ tₖ the matrix with rows (1, tᵢ, f tᵢ) is totally nonnegative.

TN14: monotonicity of f and of f t / t #

theorem BollobasNikiforov.convexOn_Ici_zero_div_monotoneOn {f : } (hf : ConvexOn (Set.Ici 0) f) (hf0 : f 0 = 0) :
MonotoneOn (fun (t : ) => f t / t) (Set.Ioi 0)

Convexity on [0, ∞) together with f 0 = 0 makes t ↦ f t / t nondecreasing on (0, ∞).

theorem BollobasNikiforov.convexOn_Ici_zero_monotoneOn {f : } (hf : ConvexOn (Set.Ici 0) f) (hf0 : f 0 = 0) (hfnn : ∀ (x : ), 0 x0 f x) :

A nonnegative convex function on [0, ∞) with f 0 = 0 is nondecreasing there.

TN15: size-one and size-two minors of rows (1, t, f t) #

def BollobasNikiforov.row3 (f : ) (t : ) :
Fin 3

The feature row (1, t, f t).

Equations
Instances For
    @[simp]
    theorem BollobasNikiforov.row3_zero (f : ) (t : ) :
    row3 f t 0 = 1
    @[simp]
    theorem BollobasNikiforov.row3_one (f : ) (t : ) :
    row3 f t 1 = t
    @[simp]
    theorem BollobasNikiforov.row3_two (f : ) (t : ) :
    row3 f t 2 = f t
    def BollobasNikiforov.convexRowMatrix {ι : Type u_1} (f : ) (t : ι) :
    Matrix ι (Fin 3)

    The ι × 3 matrix whose ith row is (1, t i, f (t i)).

    Equations
    Instances For
      theorem BollobasNikiforov.row3_nonneg {f : } (hfnn : ∀ (x : ), 0 x0 f x) {t : } (ht : 0 < t) (j : Fin 3) :
      0 row3 f t j
      theorem BollobasNikiforov.row3_one_two_minors_nonneg {f : } (hf : ConvexOn (Set.Ici 0) f) (hf0 : f 0 = 0) (hfnn : ∀ (x : ), 0 x0 f x) {t u : } (ht : 0 < t) (htu : t u) :
      (∀ (j : Fin 3), 0 row3 f t j) 0 u - t 0 f u - f t 0 t * f u - u * f t

      Every 1 × 1 and 2 × 2 minor of two increasing rows (1, t, f t), (1, u, f u) is nonnegative.

      TN16: the 3 × 3 minor #

      theorem BollobasNikiforov.convex_three_slope {f : } (hf : ConvexOn (Set.Ici 0) f) {t u v : } (ht : 0 < t) (htu : t < u) (huv : u < v) :
      0 (u - t) * (f v - f t) - (v - t) * (f u - f t)

      Three-slope comparison: for 0 < t < u < v the displayed 3 × 3 minor expression is nonnegative.

      def BollobasNikiforov.row3Triple {f : } (t u v : ) :
      Matrix (Fin 3) (Fin 3)

      Three rows (1, t, f t), (1, u, f u), (1, v, f v).

      Equations
      Instances For
        def BollobasNikiforov.row3Pair {f : } (t u : ) (J : Fin 2Fin 3) :
        Matrix (Fin 2) (Fin 2)

        Two rows (1, t, f t), (1, u, f u) on a pair of columns J.

        Equations
        Instances For
          theorem BollobasNikiforov.det_row3Triple {f : } (t u v : ) :
          (row3Triple t u v).det = (u - t) * (f v - f t) - (v - t) * (f u - f t)

          TN17: lem:convex #

          theorem BollobasNikiforov.det_convexRowMatrix_two {f : } (hf : ConvexOn (Set.Ici 0) f) (hf0 : f 0 = 0) (hfnn : ∀ (x : ), 0 x0 f x) {t u : } (ht : 0 < t) (htu : t u) {J : Fin 2Fin 3} (hJ : StrictMono J) :
          0 (row3Pair t u J).det
          theorem BollobasNikiforov.det_convexRowMatrix_three {f : } (hf : ConvexOn (Set.Ici 0) f) {t u v : } (ht : 0 < t) (htu : t u) (huv : u v) :
          0 (row3Triple t u v).det
          theorem BollobasNikiforov.isTotallyNonneg_convexRowMatrix {f : } (hf : ConvexOn (Set.Ici 0) f) (hf0 : f 0 = 0) (hfnn : ∀ (x : ), 0 x0 f x) {k : } {t : Fin k} (htmono : Monotone t) (htpos : ∀ (i : Fin k), 0 < t i) :

          Lemma lem:convex: rows (1, tᵢ, f tᵢ) of a nonnegative convex f vanishing at 0 form a totally nonnegative matrix, for 0 < t₁ ≤ ⋯ ≤ tₖ.