LowRankArithmetic.jl facilitates the propagation of low-rank factorizations through finite composition of a range of common linear algebra operations such as
- matrix-matrix/vector multiplication
- addition
- Hadamard products
- elementwise integer powers
- concatenation & slicing
Two types of low-rank representations are supported:
- Two-factor representation:
- SVD-like representation:
Note, however, that neither U and V need to be orthogonal, nor are S and Z required to be diagonal or lower triangular as may be familiar from the standard QR and SVD factorizations. In particular, these properties are not maintained when a QR or SVD factorization is propagated through the supported arithmetic operations.
LowRankArithmetic.jl further supports efficient & robust svd-based rounding procedures to reduce the rank of a given low-rank factorization. Also efficient Gram-Schmidt-, QR-, SVD-, and gradient flow-based reorthonormalization procedures for the U and V factors are available.
This work is supported by NSF Award PHY-2028125 "SWQU: Composable Next Generation Software Framework for Space Weather Data Assimilation and Uncertainty Quantification".