There are several ways to generate a low-rank approximant for each capable block of the original matrix. A class of analytical methods are including but not limited to Taylor series approximation, multipole expansion, and interpolation. Also, algebraic techniques are singular value decomposition (SVD), pseudo-skeletal approximation, cross approximation and its variants, rank-revealing LU and QR factorization.