Showcasing straight-line programs with memory via matrix Bruhat decomposition
Alice C. Niemeyer, Tomasz Popiel, Cheryl E. Praeger, Daniel Rademacher
TL;DR
This work introduces straight-line programs with memory (MSLPs) as a framework to analyze algebraic computations with explicit memory constraints. It then constructs MSLPs for the Bruhat decomposition in $SL(d,q)$ by first rewriting a monomial factor $w$ as a word in the Leedham-Green--O'Brien generators and then applying a Taylor-style reduction to obtain $g= u_1 w u_2$ with $u_1,u_2$ lower-unitriangular, all while tightly controlling memory usage. The authors prove that for $q=p^f$ and $g\in SL(d,q)$ there exists an $b$-MSLP of length $O(d^2\log q)$ using at most $2f+18$ memories, and that the evaluation costs are $O(d^3)$ field operations, with detailed lower-level bounds for the subroutines. Implemented in GAP, the approach yields practical, memory-efficient Bruhat decompositions for large matrices and demonstrates how memory-aware design improves performance in computational group theory.
Abstract
We suggest that straight-line programs designed for algebraic computations should be accompanied by a comprehensive complexity analysis that takes into account both the number of fundamental algebraic operations needed, as well as memory requirements arising during evaluation. We introduce an approach for formalising this idea and, as illustration, construct and analyse straight-line programs for the Bruhat decomposition of $d\times d$ matrices with determinant $1$ over a finite field of order $q$ that have length $O(d^2\log(q))$ and require storing only $O(\log(q))$ matrices during evaluation.
