Usage of Normaliz

Its input data can be specified in terms of:

  • a system of generators or vertices or
  • a system of linear Diophantine equations, inequalities and congruences or
  • a binomial ideal

Normaliz can be started from the command line or from the GUI interface jNormaliz (written by Vinicius Almendra and Bogdan Ichim). jNormaliz is included in the distribution. See the Normaliz documentation for details.

The user indicates the type of input data in the input file and controls the computation and the output via the GUI interface or command line options.

Normaliz is provided for two degrees of integer precision: 64 bits or infinite. For infinite precision it uses the GMP (Linux, Mac) and MPIR (Windows) libraries. Normaliz checks for overflows and switches to infinite precision if necessary.

Normaliz comes with interfaces for:

The Python interface (written by Sebastian Gutsche) PyNormaliz can be used in Python 2 and 3. The Macaulay2 interface (written by Gesa Kämpf) needs Macaulay2 1.1.99 or later. The Singular interface needs Singular 3-0-0 or later. Normaliz is used by B. Burton’s Regina. The access to Normaliz from SageMath is in preparation.

Normaliz is distributed under GPL.