TriangularSets -- triangular decompositions of polynomial ideals

Description

This package allows to decompose polynomial ideals into triangular sets
 `i1 : R = QQ[a..h, MonomialOrder=>Lex];` ```i2 : I = ideal {a*d - b*c, c*f - d*e, e*h - f*g}; o2 : Ideal of R``` ```i3 : triangularize I o3 = {{c, d, e, f}, {a*d - b*c, c*f - d*e, g, h} / {d, f}, {b, d, f, h}, {c, ------------------------------------------------------------------------ d, g, h}, {a*d - b*c, e, f} / d, {a*d - b*c, c*f - d*e, e*h - f*g} / {d, ------------------------------------------------------------------------ f, h}, {c, d, e*h - f*g} / h, {c, d, f, h}, {b, d, e, f}} o3 : List```

The method triangularize is implemented in M2 only for monomial and binomial ideals. For the general case we interface to Maple.

This package also provides methods for manipulating triangular sets:

References

• P. Aubry, D. Lazard, M. Moreno Maza (1999), "On the theories of triangular sets", in "Journal of Symbolic Computation", 28(1):105-–124
• E. Hubert (2003), "Notes on triangular sets and triangulation-decomposition algorithms I: Polynomial systems", in "Springer"
• M. Kalkbrener (1993), "A generalized Euclidean algorithm for computing triangular representations of algebraic varieties", in "Journal of Symbolic Computation", 15(2):143-–167
• D. Lazard (1992), "Solving zero-dimensional algebraic systems", in "Journal of Symbolic Computation", 13(2):117-–131
• D. Wang (2001), "Elimination methods", in "Springer Science & Business Media"

Version

This documentation describes version 0.1 of TriangularSets.

Source code

The source code from which this documentation is derived is in the file TriangularSets.m2. The auxiliary files accompanying it are in the directory TriangularSets/.