Software:Normaliz

From HandWiki
Short description: Computer algebra system
Normaliz
Hilbert basis.gif
Original author(s)Winfried Bruns, Robert Koch, Bogdan Ichim, Christof Soeger
Written inC++, C and Python
TypeComputer algebra system
LicenseGNU General Public License, version 3
Websitenormaliz.uni-osnabrueck.de

Normaliz is a free computer algebra system developed by Winfried Bruns, Robert Koch (1998–2002), Bogdam Ichim (2007/08) and Christof Soeger (2009–2016). It is published under the GNU General Public License version 2.

Normaliz computes lattice points in rational polyhedra, or, in other terms, solves linear diophantine systems of equations, inequalities, and congruences. Special tasks are the computation of lattice points in bounded rational polytopes and Hilbert bases of rational cones. Normaliz also computes enumerative data, such as multiplicities (volumes) and Hilbert series. The kernel of Normaliz is a templated C++ class library. For multivariate polynomial arithmetic it uses CoCoALib.

Normaliz has interfaces to several general computer algebra systems: CoCoA, GAP, Macaulay2 and Singular. It can be used interactively via its Python interface PyNormaliz. Its use in SageMath is in preparation.

Jesús A. De Loera cites Normaliz among his favorite programs for computing Hilbert basis.[1]

See also

  • Comparison of computer algebra systems

References

  1. De Loera, Jesús. "Combinatorial Problems with Geometric Solutions". Course Notes: Algebraic and Geometric Combinatorics. UC Davis. https://www.math.ucdavis.edu/~deloera/TEACHING/MATH246/NOTES/chapter2.tex. 

External links