next | previous | forward | backward | up | index | toc

# MonomialIntegerPrograms -- A package for fast monomial ideal computations using constraint integer programming

## Description

Installation and licensing information.

This package relies on the constraint integer program solver SCIP, which is available at https://scip.zib.de/. This software is free for for academic, non-commercial purposes. Notice that SCIP is not distributed under GPL, but under the ZIB Academic License (https://scip.zib.de/academic.txt).

An excellent user guide to using Zimpl can be found at https://zimpl.zib.de/download/zimpl.pdf. The author, Thorsten Koch, requests that research making use of this software please cite his 2004 PhD thesis, Rapid Mathematical Programming. The appropriate BibTeX entry can be found here: https://zimpl.zib.de/download/zimpl.bib. Zimpl is distributed under GPL.

Additionally, any research that uses SCIP needs a proper citation. See the How to Cite tab on their home page.

Finally, because this package relies on temporary files, Windows users must ensure the directory /tmp exists as stated in the documentation of temporaryFileName.

The value of ScipPrintLevel determines the verbosity. It is set to 0 when the package is loaded.

The functions codim, and degree are overwritten for inputs with type MonomialIdeal. Specifically, loadSCIPCodimAndDegree is run when the package is loaded.

## Caveat

These methods are designed and tested for ideals and polynomial rings with a field as the coefficients ring. For other rings, the behavior of these methods is unspecified.

• codimensionIP -- compute the codimension of a monomial ideal using integer programming
• degreeIP -- compute the degree of a monomial ideal using integer programming
• dimensionIP -- compute the dimension of a monomial ideal using integer programming
• monomialIdealsWithHilbertFunction -- find all monomial ideals in a polynomial ring with a particular (partial or complete) Hilbert function
• topMinimalPrimesIP -- compute the minimal primes of maximum dimension using integer programming
• ScipPrintLevel -- adjust how much solving information is displayed in MonomialIntegerPrograms

## Version

This documentation describes version 1.0 of MonomialIntegerPrograms.

## Source code

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

## Exports

• Functions and commands
• bettiTablesWithHilbertFunction -- list or tally all Betti tables that can be obtained from monomial ideals with a particular (partial or complete) Hilbert function
• codimensionIP -- compute the codimension of a monomial ideal using integer programming
• degreeIP -- compute the degree of a monomial ideal using integer programming
• dimensionIP -- compute the dimension of a monomial ideal using integer programming
• loadBuiltinCodimAndDegree -- change codim and degree to use the default, built-in methods.
• loadSCIPCodimAndDegree -- change codim and degree to use the default, built-in methods.
• minimalPrimesIP -- one line description if different from minimalPrimesIP
• monomialIdealsWithHilbertFunction -- find all monomial ideals in a polynomial ring with a particular (partial or complete) Hilbert function
• topMinimalPrimesIP -- compute the minimal primes of maximum dimension using integer programming
• Methods
• bettiTablesWithHilbertFunction(List,PolynomialRing) -- see bettiTablesWithHilbertFunction -- list or tally all Betti tables that can be obtained from monomial ideals with a particular (partial or complete) Hilbert function
• codimensionIP(MonomialIdeal) -- see codimensionIP -- compute the codimension of a monomial ideal using integer programming
• degreeIP(MonomialIdeal) -- see degreeIP -- compute the degree of a monomial ideal using integer programming
• dimensionIP(MonomialIdeal) -- see dimensionIP -- compute the dimension of a monomial ideal using integer programming
• minimalPrimesIP(MonomialIdeal) -- see minimalPrimesIP -- one line description if different from minimalPrimesIP
• minimalPrimesIP(MonomialIdeal,ZZ) -- see minimalPrimesIP -- one line description if different from minimalPrimesIP
• monomialIdealsWithHilbertFunction(List,PolynomialRing) -- see monomialIdealsWithHilbertFunction -- find all monomial ideals in a polynomial ring with a particular (partial or complete) Hilbert function
• topMinimalPrimesIP(MonomialIdeal) -- see topMinimalPrimesIP -- compute the minimal primes of maximum dimension using integer programming
• Symbols
• Other things
• ScipPrintLevel -- adjust how much solving information is displayed in MonomialIntegerPrograms

## For the programmer

The object MonomialIntegerPrograms is .