Releases: Normaliz/Normaliz
v3.10.3
This release adds computation goals and variants for fusion rinmgs:
- SingleFusionRing
- ModularGradings
- UseModularGrading
Moreover, the HPC management has been improved.
Note: The MacOS binary is based on MacOs 12. We did not succeed to compile it with a newer version and the corresponding LLVM from Homebrew.
Fusion rings
Additions:
- Special input types and computation goals for fusion rings
- Refined management of computations on an HPC for the patching version of project-and-lift algorithm for lattice points (used for fusion rings)
- Processing of lists of input files
- Orbit versions of (dual) face lattice and f-vector
- Update of auxiliary packages, especially to Flint 3 (except MS windows binary)
- Full implementation of SingleLatticePoint
PyNormaliz has been updated to version 2.19.
Improvements in patching
This release significantly improves the patching variant of the project-and-lift algorithm for lattice points in polytopes. It has been used for the computations reported on in the preprint https://arxiv.org/abs/2302.01613.
Further additions:
- weight vector for Gröbner basis computations
- time bound (so far only in project-and-lift)
- option NoOutputOnInterrupt
PyNormaliz 2.18 is still used for this release.
Affine monoids and binomial ideals
This release adds general affine monoids and binomial ideals to Normaliz. In particular it computes
- minimal systems of generators (Hilbert bases) of affine monoids
- Hilbert series of affine monoids
- singular loci of affine monoid algebras
- Markov and Gröbner bases of lattice ideals
- affine monoids from binomial ideals
Moreover, the functions introduced with 3.9.4 have been improved.
PyNormaliz has been updated to version 2.18.
Positive systems and semialgebraic constraints
Dear friends of Normaliz,
version 3.9.4 adds the following major features:
-
A variant of project-and-lift for "positive systems", i.e. diophantine linear systems whose solutions are nonnegative and for which Normaliz can derive upper bounds for all coordinates directly from the input inequalities and equations. The variant does not try to compute the exact projection polytopes, which can be a very time consuming task, but computes the lattice points from relaxed inequalities. Under suitable hypotheses a "patching variant" is applied that often is extremely fast.
-
Lattice points in polytopes can be constrained by polynomial equations and inequalities. The polynomials may have rational coefficients. In the project-and-lift algorithm the constraints are applied as soon as possible.
The Normaliz team
MSYS build for MS Windows
This release fixes a bug in configure.ac
that blocked the use of --with-gmp
if configure
was run outside the installation scripts. Some other weak points have been taken care of.
The installation scripts have been augmented so that it is possible to compile a static normaliz.exe
under MSYS2 MinGW64 without user interaction. The MS Windows binary of this release uses all optional packages of Normaliz.
There is now a short reference manual NmzShortRef.pdf
in doc, a structured list of keywords with brief explanations.
normaliz.lib
for Singular has been updated so that essentially all input types and functions of Normaliz have become accessible.
PyNormaliz has not changed.
clang and MSYS
This release modifies the Normaliz code such that the parallelization by OpenMP does also work with the newer clang compilers, which are used in building Normaliz for MacOS and the Conda distribution. (See #385 and #383.)
The MS Windows binary has been built with MSYS MinGW64 (instead of the Intel compiler). It contains nauty as an optional library. (See INSTALL for details.)
It is now possible to construct a cone in libnormaliz or PyNormaliz from an input file, and input files now allow the definition of sparse vectors with ranges of indices.
February 27, 2022: An experimental MS Windows binary with all optional packages has been added.
March 5, 2022: Archives for the MS Windows build added.
Distributed computation
This release fixes the bug #377 and simplifies the handling of distributed computations in connection with volume by signed decomposition. There are a few other improvements.
We have removed an incompatibility of our own dynamic_bitset with boost::dynamic_bitset that made the option HSOP crash for sufficiently large computations.
Furthermore we have dropped Python 2 from the PyNormaliz installation, but PyNormaliz 2.15 still fits this Normaliz release.
February 08, 2022: Use Mac binary only with -x=1 or update to version 3.9.2.
e-antic 1.0.1
Normaliz now uses the e-antic release 1.0.1 for algebraic polyhedra:
https://github.com/flatsurf/e-antic/releases/tag/1.0.1
This requires the update of other optional packages, which is handled automatically by the included install scripts.. (See INSTALL or thedetails.)
Algorithmic extensions (in addition to various small improvements):
- We have added the Lawrence algorithm for polytope volumes by signed decomposition into simplices. It opens a new order of magnitude for volume computations for polytopes defined by few inequalities.
- The descent algorithm for volumes now has a variant exploiting isomorphisms of faces.
- One can compute "raw" automorphism groups directly from the input data.
- One can now ask for pulling triangulations and placing triangulations.
The corresponding version of PyNormaliz is 2.15:
https://github.com/Normaliz/PyNormaliz/releases/tag/v2.15
IMPORTANT. normaliz-3.9.0.zip and tar.gz uploaded July 2 were incomplete. The critical file missing was install_scripts_opt/install_nmz_antic.sh. You can extract it from the source repositories automatically created by GitHub or (better) extract the new version attached now.
February 08, 2022: Use Mac binary only with -x=1 or update to version 3.9.2.
configure.ac II
This is mainly a technical release, but it also repairs some little bugs.
Main changes:
-
New data structure for the return of triangulations and other decompositions by libnormaliz.
-
configure.ac can now deal with nauty.h vs. nauty/nauty.h.
-
Appendix E of the manual documents the interactive use of PyNormaliz.
-
Travis CI is replaced by GitHub Actions.
February 08, 2022: Use Mac binary only with -x=1 or update to version 3.9.2.