Riemann-Roch spaces are the workhorses of algebraic geometry. Given a divisor D on a curve C, the Riemann-Roch space L(D) is a vector space of rational functions whose poles are bounded by D. Its dimension is given by the Riemann-Roch theorem. Computing an explicit basis — not just the dimension, but actual functions — is essential for algebraic geometry codes, cryptographic applications, and the study of Jacobian varieties.
For smooth curves, efficient algorithms exist. For singular curves — curves with nodes, cusps, or worse — the situation is harder. Singularities distort the local geometry, and the standard computational tools assume smoothness.
Le Gluher & Music (arXiv:2603.00672) present the fastest known deterministic algorithm for computing Riemann-Roch bases on curves with arbitrary singularities, over any perfect field, with no restrictions on the divisor's support. The algorithm works directly on the singular curve without first resolving the singularities — a computationally expensive preprocessing step that previous methods required.
The directness is the achievement. Resolving singularities is the traditional approach: blow up the bad points until the curve is smooth, compute on the smooth model, then translate back. This works but introduces intermediate objects (the resolution, the blow-up maps, the local rings at each exceptional divisor) that multiply the computational cost. Working on the singular curve directly means the algorithm's complexity depends on the curve's actual complexity, not on the complexity of its resolution.
For coding theory, this matters immediately. Algebraic geometry codes based on singular curves have better parameters in some regimes than codes from smooth curves. Computing these codes required either resolving the singularities first (expensive) or restricting to specific singularity types (limited). Now neither restriction applies. The singularities that make the geometry interesting are no longer the bottleneck in the computation.