# multidegree -- multidegree

## Synopsis

• Usage:
multidegree M
• Inputs:
• Outputs:
• the multidegree of M. If M is an ideal, the corresponding quotient ring is used.

## Description

The multidegree is defined on page 165 of Combinatorial Commutative Algebra, by Miller and Sturmfels. It is an element of the degrees ring of M. Our implementation agrees with their definition provided the heft vector of the ring has every entry equal to 1. See also Gröbner geometry of Schubert polynomials, by Allen Knutson and Ezra Miller.

 i1 : S = QQ[a..d, Degrees => {{2,-1},{1,0},{0,1},{-1,2}}]; i2 : heft S o2 = {1, 1} o2 : List i3 : multidegree ideal (b^2,b*c,c^2) o3 = 3T T 0 1 o3 : ZZ[T ..T ] 0 1 i4 : multidegree ideal a o4 = 2T - T 0 1 o4 : ZZ[T ..T ] 0 1 i5 : multidegree ideal (a^2,a*b,b^2) 2 o5 = 6T - 3T T 0 0 1 o5 : ZZ[T ..T ] 0 1 i6 : describe ring oo o6 = ZZ[T ..T , Degrees => {2:1}, MonomialOrder => {MonomialSize => 32}, DegreeRank => 1, Inverses => true, Global => false] 0 1 {Weights => {2:-1} } {GroupLex => 2 } {Position => Up }

## Caveat

This implementation is provisional in the case where the heft vector does not have every entry equal to 1.

## Ways to use multidegree :

• "multidegree(Ideal)"
• "multidegree(Module)"
• "multidegree(Ring)"

## For the programmer

The object multidegree is .