Some linear algebra stuffs
The conjugate gradient method is an algorithm to iteratively solve particular systems of linear equations, namely whose matrix is symmetric and positive definite. The biconjugate gradient method provides a generalization to non-symmetric matrices.
LU decomposition: An invertible matrix admits an LU decomposition iff all its principle minors are non-zero. For a matrix A of n by n, I is any subset of {1,..,n}, then [A]_{I,I} is called a principal minor. A non-invertible matrix can sometimes have LU decomposition.
If a matrix is hermitian and positive definite, the matrix can have Cholesky decomposition (A=LL^{*})

