# projectiveDegree -- This method computes a single projective degree of a scheme X inside a scheme Y, where X,Y are subschemes of some product of projective spaces

## Synopsis

• Usage:
projectiveDegree(IX,IY,h)
• Inputs:
• IX, an ideal, a multi-homogeneous ideal defining a closed subscheme of \PP^{n_1}x...x\PP^{n_m}; makeProductRing builds the graded coordinate ring of \PP^{n_1}x...x\PP^{n_m}.
• IY, an ideal, a multi-homogeneous ideal defining a closed subscheme of \PP^{n_1}x...x\PP^{n_m}; makeProductRing builds the graded coordinate ring of \PP^{n_1}x...x\PP^{n_m}.
• h, , an element of the Chow ring of \PP^{n_1}x...x\PP^{n_m}. This ring can be built by applying makeChowRing to the coordinate ring of \PP^{n_1}x...x\PP^{n_m}.
• Optional inputs:
• Verbose (missing documentation) => , default value false,
• Outputs:
• pd, , a projective degree associated to h of a subscheme X defined by IX in the subscheme Y defined by IY as classes in the Chow ring A of \PP^{n_1}x...x\PP^{n_m}.

## Description

For subschemes X, Y of \PP^{n_1}x...x\PP^{n_m} this command computes a projective degree associated to h of a subscheme X in the subscheme Y as classes in the Chow ring of \PP^{n_1}x...x\PP^{n_m}. The value returned is an integer. This method is faster if only one projective degree is needed.

 i1 : R = makeProductRing({3,3}) o1 = R o1 : PolynomialRing i2 : x = gens(R) o2 = {a, b, c, d, e, f, g, h} o2 : List i3 : D = minors(2,matrix{{x_0..x_3},{x_4..x_7}}) o3 = ideal (- b*e + a*f, - c*e + a*g, - c*f + b*g, - d*e + a*h, - d*f + b*h, ------------------------------------------------------------------------ - d*g + c*h) o3 : Ideal of R i4 : X = ideal(x_0*x_1,x_1*x_2,x_0*x_2) o4 = ideal (a*b, b*c, a*c) o4 : Ideal of R i5 : A = makeChowRing(R) o5 = A o5 : QuotientRing i6 : pd = projectiveDegrees(X,D,A) 3 3 2 3 3 2 3 2 2 3 o6 = {10H H , 6H H , 6H H , 3H H , 3H H , 3H H } 1 2 1 2 1 2 1 2 1 2 1 2 o6 : List i7 : h=A_0^2*A_1^2 2 2 o7 = H H 1 2 o7 : A i8 : pdh=projectiveDegree(X,D,h) o8 = 3 i9 : (sum pd)_h==pdh o9 = true

## Ways to use projectiveDegree :

• "projectiveDegree(Ideal,Ideal,RingElement)"

## For the programmer

The object projectiveDegree is .