According to Yesypenko and Martinsson [1], we can use the RSRS algorithm as a black box to efficiently compress and factor Hierarchical matrices that are in most cases related to Partial Differential Equations problems. This can also be applied to other types of problems, as long as we know a hierarchical partition of our data (i.e. if we know which data points are strongly related and which are not), and we count with a matrix-vector product.
Our final interest in this algorithm relies on designing preconditioners for Maxwell's boundary integral equations, but to do this, we need to boost the performance of the existent RSRS Python codes. In this talk we discuss how Rust can help us to improve the performance of our current implementations.