In numerical linear algebra, an incomplete LU factorization (abbreviated as ILU) of a matrix is a sparse approximation of the LU factorization often used as a preconditioner. In numerical linear algebra, an incomplete LU factorization (abbreviated as ILU) of a matrix is a sparse approximation of the LU factorization often used as a preconditioner. Consider a sparse linear system A x = b {displaystyle Ax=b} . These are often solved by computing the factorization A = L U {displaystyle A=LU} , with L lower unitriangular and U upper triangular.One then solves L y = b {displaystyle Ly=b} , U x = y {displaystyle Ux=y} , which can be done efficiently because the matrices are triangular. For a typical sparse matrix, the LU factors can be much less sparse than the original matrix — a phenomenon called fill-in. The memory requirements for using a direct solver can then become a bottleneck in solving linear systems. One can combat this problem by using fill-reducing reorderings of the matrix's unknowns, such as the Cuthill-McKee ordering. An incomplete factorization instead seeks triangular matrices L, U such that A ≈ L U {displaystyle Aapprox LU} rather than A = L U {displaystyle A=LU} . Solving for L U x = b {displaystyle LUx=b} can be done quickly but does not yield the exact solution to A x = b {displaystyle Ax=b} . So, we instead use the matrix M = L U {displaystyle M=LU} as a preconditioner in another iterative solution algorithm such as the conjugate gradient method or GMRES. For a given matrix A ∈ R n × n {displaystyle Ain mathbb {R} ^{n imes n}} one defines the graph G ( A ) {displaystyle G(A)} as which is used to define the conditions a sparsity patterns S {displaystyle S} needs to fulfill A decomposition of the form A = L U − R {displaystyle A=LU-R} where the following hold is called an incomplete LU decomposition (w.r.t. the sparsity pattern S {displaystyle S} ). The sparsity pattern of L and U is often chosen to be the same as the sparsity pattern of the original matrix A. If the underlying matrix structure can be referenced by pointers instead of copied, the only extra memory required is for the entries of L and U. This preconditioner is called ILU(0).