# multLowerBound -- determine whether an ideal satisfies the lower bound of the multiplicity conjecture

## Synopsis

• Usage:
B=multLowerBound I
• Inputs:
• I, an ideal, a homogeneous ideal in a polynomial ring R
• Outputs:
• B, , true if I satisfies the lower bound and false otherwise

## Description

Let I be a homogeneous ideal of codimension c in a polynomial ring R such that R/I is Cohen-Macaulay. Huneke and Srinivasan conjectured that

m_1 ... m_c / c! <= e(R/I),

where m_i is the minimum shift in the minimal graded free resolution of R/I at step i, and e(R/I) is the multiplicity of R/I. multLowerBound tests this inequality for the given ideal, returning true if the inequality holds and false otherwise, and it prints the lower bound and the multiplicity (listed as the degree).

This conjecture was proven in 2008 work of Eisenbud-Schreyer and Boij-Soderberg.

 i1 : R=ZZ/32003[a..c]; i2 : multLowerBound ideal(a^4,b^4,c^4) lower bound = 64 degree = 64 o2 = true i3 : multLowerBound ideal(a^3,b^5,c^6,a^2*b,a*b*c) lower bound = 16 degree = 46 o3 = true

## Caveat

Note that multLowerBound makes no attempt to check to see whether R/I is Cohen-Macaulay.

• cancelAll -- make all potentially possible cancellations in the graded free resolution of an ideal
• multUpperHF -- test a sufficient condition for the upper bound of the multiplicity conjecture
• multUpperBound -- determine whether an ideal satisfies the upper bound of the multiplicity conjecture
• multBounds -- determine whether an ideal satisfies the upper and lower bounds of the multiplicity conjecture

## Ways to use multLowerBound :

• "multLowerBound(Ideal)"

## For the programmer

The object multLowerBound is .