Skip to content

Lanczos-FA: Matrix function times vector, without orthogonalization #148

@kbarros

Description

@kbarros

Given a Hermitian matrix $A$ and arbitrary vector $v$, the Lanczos decomposition yields $(Q, T)$. With this data, the "Lanczos-FA" method approximates $f(A) v \approx \Vert v \Vert Q f(T) e_1$ for arbitrary function $f$. Lanczos-FA is near-optimal within the Krylov subspace, as was shown in Amsel et al., arXiv:2303.03358. Remarkably, the Lanczos-FA method is backward-stable -- one can use the bare Lanczos recurrence directly, in finite precision, without orthogonalization. That is, $f(A) v \approx \Vert v \Vert Q f(T) e_1$ remains a good approximation even when the columns of $Q$ have lost their orthonormality due to numerical roundoff. Proofs are discussed in Sec. 6.2 of the recent review by Tyler Chen, arXiv:2410.11090. To avoid memory costs of storing $Q$, one has the option to employ a two-pass algorithm: The first run of Lanczos generates $T$. Then, once the coefficients $c = f(T) e_1$ are known, a second run of Lanczos forms the linear combination $Q c$ by accumulating columns of $Q$ as they become available.

Is this Lanczos-FA method possibly in scope for KrylovKit?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions