Linear-Complexity Black-Box Randomized Compression of Rank-Structured Matrices
James Levitt, Per-Gunnar Martinsson
TL;DR
This work develops a truly black-box randomized algorithm for compressing Hierarchically Block Separable (HBS) matrices by accessing the matrix only through matvecs. It constructs a telescoping factorization with level-wise bases $U^{(\ell)},V^{(\ell)}$ and diagonal remainders $D^{(\ell)}$, using $s = r + p$ samples where $r = k+p$ and $p$ is a small oversampling parameter, yielding $s = O(k)$ overall. The method achieves linear-time compression and fully parallelizable sampling, enabling efficient matrix-vector products, inverses, and direct solvers for rank-structured operators common in integral equations and sparse direct solvers. Numerical experiments on boundary integral equations, operator multiplications, and nested-dissection Schur complements demonstrate linear scaling, high accuracy, and storage that scales favorably with the rank parameter $k$ and leaf size $m$ while remaining independent of $N$ in practice.
Abstract
A randomized algorithm for computing a compressed representation of a given rank-structured matrix $A \in \mathbb{R}^{N\times N}$ is presented. The algorithm interacts with $A$ only through its action on vectors. Specifically, it draws two tall thin matrices $Ω,\,Ψ\in \mathbb{R}^{N\times s}$ from a suitable distribution, and then reconstructs $A$ from the information contained in the set $\{AΩ,\,Ω,\,A^{*}Ψ,\,Ψ\}$. For the specific case of a "Hierarchically Block Separable (HBS)" matrix (a.k.a. Hierarchically Semi-Separable matrix) of block rank $k$, the number of samples $s$ required satisfies $s = O(k)$, with $s \approx 3k$ being representative. While a number of randomized algorithms for compressing rank-structured matrices have previously been published, the current algorithm appears to be the first that is both of truly linear complexity (no $N\log(N)$ factors in the complexity bound) and fully "black box" in the sense that no matrix entry evaluation is required. Further, all samples can be extracted in parallel, enabling the algorithm to work in a "streaming" or "single view" mode.
