is an open source tool for computations in affine monoids, vector configurations, lattice polytopes, and rational cones.

Computation goals

  • convex hulls and dual cones
  • conversion from generators to constraints and vice versa
  • triangulations, disjoint decompositions and Stanley decompositions
  • Hilbert basis of rational, not necessarily pointed cones
  • normalization of affine monoids
  • lattice points of rational polytopes and (unbounded) polyhedra
  • Hilbert (or Ehrhart) series and (quasi) polynomials under Z-gradings (for example, for rational polytopes)
  • generalized (or weighted) Ehrhart series and Lebesgue integrals of polynomials over rational polytopes via NmzIntegrate

Normaliz offers the API libnormaliz that allows the user to access the Normaliz computations from any C++ program.


The Normaliz project was partially supported by the DFG SPP 1489 “Algorithmische und experimentelle Methoden in Algebra, Geometrie und Zahlentheorie”.