Section: Scientific Foundations
Gröbner basis and triangular sets
Participants : J.C. Faugère, G. Renault, M. Safey El Din, P.J. Spaenlehauer, D. Wang, C. Mou, J. Svartz.
Let us denote by $K[{X}_{1},...,{X}_{n}]$ the ring of polynomials with coefficients in a field $K$ and indeterminates ${X}_{1},...,{X}_{n}$ and $S=\{{P}_{1},...,{P}_{s}\}$ any subset of $K[{X}_{1},...,{X}_{n}]$. A point $x\in {\u2102}^{n}$ is a zero of $S$ if ${P}_{i}\left(x\right)=0\phantom{\rule{0.277778em}{0ex}}\phantom{\rule{0.166667em}{0ex}}\phantom{\rule{0.277778em}{0ex}}i\in [1...s]$.
The ideal $\mathcal{I}=\langle {P}_{1},...,{P}_{s}\rangle $ generated by ${P}_{1},...,{P}_{s}$ is the set of polynomials in $K[{X}_{1},...,{X}_{n}]$ constituted by all the combinations $\sum _{k=1}^{R}{P}_{k}{U}_{k}$ with ${U}_{k}\in \mathbb{Q}[{X}_{1},...,{X}_{n}]$. Since every element of $\mathcal{I}$ vanishes at each zero of $S$, we denote by ${V}_{C}\left(S\right)={V}_{C}\left(I\right)=\{x\in {C}^{n}\phantom{\rule{0.277778em}{0ex}}\phantom{\rule{0.277778em}{0ex}}p\left(x\right)=0\phantom{\rule{0.277778em}{0ex}}\forall p\in \mathcal{I}\}$ (resp. ${V}_{R}\left(S\right)={V}_{R}\left(I\right)={V}_{\u2102}\left(I\right)\bigcap {\mathbb{R}}^{n}$), the set of complex (resp. real) zeros of $S$, where $R$ is a real closed field containing $K$ and $C$ its algebraic closure.
One Gröbner basis' main property is to provide an algorithmic method for deciding if a polynomial belongs or not to an ideal through a reduction function denoted "$\text{Reduce}$" from now.
If $G$ is a Gröbner basis of an ideal $\mathcal{I}\subset \mathbb{Q}[{X}_{1},...,{X}_{n}]$ for any monomial ordering $<$.
 (i)
a polynomial $p\in \mathbb{Q}[{X}_{1},...,{X}_{n}]$ belongs to $\mathcal{I}$ if and only if $\text{Reduce}(p,G,<)=0$,
 (ii)
Reduce($p$,$G$,$<$) does not depend on the order of the polynomials in the list $G$, thus, this is a canonical reduced expression modulus $\mathcal{I}$, and the Reduce function can be used as a simplification function.
Gröbner bases are computable objects. The most popular method for computing them is Buchberger's algorithm ( [47] , [46] ). It has several variants and it is implemented in most of general computer algebra systems like Maple or Mathematica. The computation of Gröbner bases using Buchberger's original strategies has to face to two kind of problems :

(A) arbitrary choices : the order in which are done the computations has a dramatic influence on the computation time;

(B) useless computations : the original algorithm spends most of its time in computing 0.
For problem (A), J.C. Faugère proposed ([4]  algorithm ${F}_{4}$) a new generation of powerful algorithms ([4] ) based on the intensive use of linear algebra technics. In short, the arbitrary choices are left to computational strategies related to classical linear algebra problems (matrix inversions, linear systems, etc.).
For problem (B), J.C. Faugère proposed ([3] ) a new criterion for detecting useless computations. Under some regularity conditions on the system, it is now proved that the algorithm do never perform useless computations.
A new algorithm named ${F}_{5}$ was built using these two key results. Even if it still computes a Gröbner basis, the gap with existing other strategies is consequent. In particular, due to the range of examples that become computable, Gröbner basis can be considered as a reasonable computable object in large applications.
We pay a particular attention to Gröbner bases computed for elimination orderings since they provide a way of "simplifying" the system (equivalent system with a structured shape). A well known property is that the zeros of the first non null polynomial define the Zariski closure (classical closure in the case of complex coefficients) of the projection on the coordinate's space associated with the smallest variables.
Such kinds of systems are algorithmically easy to use, for computing numerical approximations of the solutions in the zerodimensional case or for the study of the singularities of the associated variety (triangular minors in the Jacobian matrices).
Triangular sets have a simplier structure, but, except if they are linear, algebraic systems cannot, in general, be rewritten as a single triangular set, one speaks then of decomposition of the systems in several triangular sets.
Lexicographic Gröbner bases  Triangular sets 
$\left\{\begin{array}{c}f\left({X}_{1}\right)=0\hfill \\ {f}_{2}({X}_{1},{X}_{2})=0\hfill \\ \vdots \hfill \\ {f}_{{k}_{2}}({X}_{1},{X}_{2})=0\hfill \\ {f}_{{k}_{2}+1}({X}_{1},{X}_{2},{X}_{3})=0\hfill \\ \vdots \hfill \\ {f}_{{k}_{n1}+1}({X}_{1},...,{X}_{n})=0\hfill \\ \vdots \hfill \\ {f}_{{k}_{n}}({X}_{1},...,{X}_{n})=0\hfill \end{array}\right.$  $\left\{\begin{array}{c}{t}_{1}\left({X}_{1}\right)=0\hfill \\ {t}_{2}({X}_{1},{X}_{2})=0\hfill \\ \vdots \hfill \\ {t}_{n}({X}_{1},...,{X}_{n})=0\hfill \end{array}\right.$ 
Triangular sets appear under various names in the field of algebraic systems. J.F. Ritt ( [64] ) introduced them as characteristic sets for prime ideals in differential algebra. His constructive algebraic tools were adapted by W.T. Wu in the late seventies for geometric applications. The concept of regular chain (see [56] and [74] ) is adapted for recursive computations in a univariate way.
It provides a membership test and a zerodivisor test for the strongly unmixed dimensional ideal it defines. Kalkbrenner defined regular triangular sets and showed how to decompose algebraic varieties as a union of Zariski closures of zeros of regular triangular sets. Gallo showed that the principal component of a triangular decomposition can be computed in $O\left({d}^{O\left({n}^{2}\right)}\right)$ ($n$= number of variables, $d$=degree in the variables). During the 90s, implementations of various strategies of decompositions multiply, but they drain relatively heterogeneous specifications.
D. Lazard contributed to the homogenization of the work completed in this field by proposing a series of specifications and definitions gathering the whole of former work [1] . Two essential concepts for the use of these sets (regularity, separability) at the same time allow from now on to establish a simple link with the studied varieties and to specify the computed objects precisely.
A remarkable and fundamental property in the use we have of the triangular sets is that the ideals induced by regular and separable triangular sets, are radical and equidimensional. These properties are essential for some of our algorithms. For example, having radical and equidimensional ideals allows us to compute straightforwardly the singular locus of a variety by canceling minors of good dimension in the Jacobian matrix of the system. This is naturally a basic tool for some algorithms in real algebraic geometry [2] , [7] , [67] .
In 1993, Wang [70] proposed a method for decomposing any polynomial system into fine triangular systems which have additional properties such as the projection property that may be used for solving parametric systems (see Section 3.4.2 ).
Triangular sets based techniques are efficient for specific problems, but the implementations of direct decompositions into triangular sets do not currently reach the level of efficiency of Gröbner bases in terms of computable classes of examples. Anyway, our team benefits from the progress carried out in this last field since we currently perform decompositions into regular and separable triangular sets through lexicographical Gröbner bases computations.