Litcius/Paper detail

msolve

Jérémy Berthomieu, Christian Eder, Mohab Safey El Din

202144 citationsDOIOpen Access PDF

Abstract

We present a new open source C library msolve dedicated to solving multivariate polynomial systems of dimension zero through computer algebra methods. The core algorithmic framework of msolve relies on Gröbner bases and linear algebra based algorithms for polynomial system solving. It relies on Gröbner basis computation w.r.t. the degree reverse lexicographical order, Gröbner conversion to a lexicographical Gröbner basis and real solving of univariate polynomials. We explain in detail how these three main steps of the solving process are implemented, how we exploit AVX2 instruction processors and the more general implementation ideas we put into practice to better exploit the computational capabilities of this algorithmic framework. We compare the practical performances of msolve with leading computer algebra systems such as Magma, Maple, Singular on a wide range of systems with finitely many complex solutions, showing that msolve can tackle systems which were out of reach by the computer algebra software state-of-the-art.

Topics & Concepts

Symbolic computationComputer scienceLexicographical orderAlgebra over a fieldPolynomialGröbner basisBasis (linear algebra)Theoretical computer scienceComputationLinear algebraExploitMathematicsAlgorithmPure mathematicsComputer securityGeometryMathematical analysisCombinatoricsPolynomial and algebraic computationCryptography and Residue ArithmeticNumerical Methods and Algorithms
msolve | Litcius