Documentation

CvxLean.Lib.Math.CovarianceEstimation

Definitions needed for CvxLean/Examples/CovarianceEstimation.lean.

def Matrix.quadForm {n : } (R : Matrix (Fin n) (Fin n) ) (x : Fin n) :
Equations
Instances For
    def gaussianPdf {n : } (R : Matrix (Fin n) (Fin n) ) (x : Fin n) :
    Equations
    Instances For
      def covarianceMatrix {N : } {n : } (y : Fin NFin n) :
      Matrix (Fin n) (Fin n)
      Equations
      Instances For
        theorem gaussianPdf_pos {n : } (R : Matrix (Fin n) (Fin n) ) (y : Fin n) (h : R.PosDef) :
        theorem prod_gaussianPdf_pos {N : } {n : } (R : Matrix (Fin n) (Fin n) ) (y : Fin NFin n) (h : R.PosDef) :
        0 < Finset.univ.prod fun (i : Fin N) => gaussianPdf R (y i)
        theorem log_prod_gaussianPdf {N : } {n : } (y : Fin NFin n) (R : Matrix (Fin n) (Fin n) ) (hR : R.PosDef) :
        (Finset.univ.prod fun (i : Fin N) => gaussianPdf R (y i)).log = Finset.univ.sum fun (i : Fin N) => -(((2 * Real.pi) ^ n).sqrt.log + R.det.sqrt.log) + -R⁻¹.quadForm (y i) / 2
        theorem sum_quadForm {n : } (R : Matrix (Fin n) (Fin n) ) {m : } (y : Fin mFin n) :
        (Finset.univ.sum fun (i : Fin m) => R.quadForm (y i)) = m * (covarianceMatrix y * R.transpose).trace