Skip to article frontmatterSkip to article content

Let ARn×n\vec{A}\in\R^{n\times n} be a symmetric matrix with eigendecomposition A=i=1nλiuiuiT\vec{A} = \sum_{i=1}^{n} \lambda_i \vec{u}_i \vec{u}_i^\T, where λi\lambda_i are the eigenvalues and ui\vec{u}_i are the orthonormal eigenvectors of A\vec{A}. Recall the matrix function

f(A):=i=1nf(λi)uiuiT.f(\vec{A}) := \sum_{i=1}^{n} f(\lambda_i) \vec{u}_i \vec{u}_i^\T.

A natural approach is to combine the implicit trace estimation algorithms discussed earlier in this chapter with black-box methods for approximating xxTf(A)x\vec{x}\mapsto \vec{x}^\T f(\vec{A})\vec{x} or xf(A)x\vec{x}\mapsto f(\vec{A})\vec{x}.

Lanczos for matrix-functions

Recall, the Lanczos algorithm produces an orthonormal basis QRn×k\vec{Q}\in\R^{n\times k} for the Krylov subspace Kk(A,x)\mathcal{K}_k(\vec{A}, \vec{x}) and a symmetric tridiagonal matrix TRk×k\vec{T}\in\R^{k\times k} such that T=QTAQ\vec{T} = \vec{Q}^\T\vec{A}\vec{Q}.

The output of the Lanczos method can then be used to approximate f(A)xf(\vec{A})\vec{x} and xTf(A)x\vec{x}^\T f(\vec{A})\vec{x}. This requires k1k-1 matrix-vector products with A\vec{A}.

It is well-known that the accuracy of these approximations is related to how well f(x)f(x) can be approximation by polynomials on the interval [λn,λ1][\lambda_n,\lambda_1].

In particular, note that when f(x)f(x) is a low-degree polynomial, the approximations are exact.