Documentation

LeanPool.BollobasNikiforov.CP.Basic

Completely positive matrices #

A real matrix is completely positive if it is a finite sum of rank-one matrices vecMulVec p p with entrywise nonnegative p.

A real matrix is completely positive if it is a sum of outer products of entrywise nonnegative vectors.

Equations
Instances For
    theorem BollobasNikiforov.mul_transpose_eq_sum_vecMulVec {n : Type u_1} {r : Type u_2} [Fintype r] (A : Matrix n r ℝ) :
    A * A.transpose = ∑ a : r, Matrix.vecMulVec (A.col a) (A.col a)
    theorem BollobasNikiforov.isCompletelyPositive_iff_exists_mul_transpose {n : Type u_1} {C : Matrix n n ℝ} :
    IsCompletelyPositive C ↔ ∃ (r : ℕ) (A : Matrix n (Fin r) ℝ), (∀ (i : n) (j : Fin r), 0 ≤ A i j) ∧ C = A * A.transpose
    theorem BollobasNikiforov.IsCompletelyPositive.nonneg {n : Type u_1} {C : Matrix n n ℝ} (hC : IsCompletelyPositive C) (i j : n) :
    0 ≤ C i j