# jets(ZZ,PolynomialRing) -- compute jets of a polynomial ring

## Description

This function is provided by the package Jets. Rings are constructed incrementally as towers. The function returns the ring with variables in the jets order requested, and coefficients in all lower orders. The grading or multigrading of the jets ring follows from that of the base ring.

 i1 : R= QQ[x,y,z,Degrees=>{2,1,3}] o1 = R o1 : PolynomialRing i2 : JR= jets(2,R) o2 = JR o2 : PolynomialRing i3 : describe JR o3 = QQ[x0, y0, z0][x1, y1, z1][x2, y2, z2, Degrees => {2, 1, 3}, Heft => {1}, MonomialOrder => {MonomialSize => 32 }, DegreeRank => 1] {GRevLex => {2, 1, 3}} {Position => Up } i4 : degrees (flattenRing JR)_0 o4 = {{2}, {1}, {3}, {2}, {1}, {3}, {2}, {1}, {3}} o4 : List

When the jets(...,Projective=>...) option is set to true, the degree of each jets variable matches the jets order, in accordance with Proposition 6.6 (c) of P. Vojta, Jets via Hasse-Schmidt Derivations.

 i5 : R=QQ[x,y,z,Degrees=>{2,1,3}] o5 = R o5 : PolynomialRing i6 : JR= jets(2,R,Projective=>true) o6 = JR o6 : PolynomialRing i7 : degrees (flattenRing JR)_0 o7 = {{2}, {2}, {2}, {1}, {1}, {1}, {0}, {0}, {0}} o7 : List

The convention for labeling variables in the jets of polynomial ring is to append the order of the jets to name of the variables in the base ring. Existing subscripts are preserved.

 i8 : A=QQ[a_1..a_3] o8 = A o8 : PolynomialRing i9 : JA= jets(1,A) o9 = JA o9 : PolynomialRing i10 : describe JA o10 = QQ[a0 ..a0 ][a1 ..a1 , Degrees => {3:1}, Heft => {1}, MonomialOrder => {MonomialSize => 32}, DegreeRank => 1] 1 3 1 3 {GRevLex => {3:1} } {Position => Up }

Note that the coefficient ring of the polynomial ring does not need to be a field. The jets of the input polynomial ring will be a polynomial ring with the same coefficient ring as the input.

 i11 : Zi=ZZ[i]/ideal(i^2+1) o11 = Zi o11 : QuotientRing i12 : B=Zi[b_1..b_3] o12 = B o12 : PolynomialRing i13 : JB= jets(1,B) o13 = JB o13 : PolynomialRing i14 : describe JB o14 = Zi[b0 ..b0 ][b1 ..b1 , Degrees => {3:{1}}, Heft => {1, 0}, MonomialOrder => {MonomialSize => 32}, DegreeRank => 2] 1 3 1 3 {0} {GRevLex => {3:1} } {Position => Up }

## Caveat

With Projective=>true the jet variables of order zero have degree 0, therefore no heft vector exist for the ambient ring of the jets. As a result, certain computations will not be supported, and others may run more slowly. See heft vectors for more information.