This function is provided by the package Jets.
i1 : R= QQ[x,y,z] o1 = R o1 : PolynomialRing |
i2 : S= QQ[t] o2 = S o2 : PolynomialRing |
i3 : f= map(S,R,{t,t^2,t^3}) 2 3 o3 = map (S, R, {t, t , t }) o3 : RingMap S <--- R |
i4 : Jf= jets(2,f); o4 : RingMap QQ[t0][t1][t2] <--- QQ[x0, y0, z0][x1, y1, z1][x2, y2, z2] |
i5 : matrix Jf o5 = | t2 2t0t2+t1^2 3t0^2t2+3t0t1^2 t1 2t0t1 3t0^2t1 t0 t0^2 t0^3 | 1 9 o5 : Matrix (QQ[t0][t1][t2]) <--- (QQ[t0][t1][t2]) |
This function can also be applied when the source and/or the target of the ring homomorphism are quotients of a polynomial ring
i6 : I= ideal(y-x^2,z-x^3) 2 3 o6 = ideal (- x + y, - x + z) o6 : Ideal of R |
i7 : Q= R/I o7 = Q o7 : QuotientRing |
i8 : g= map(S,Q,{t,t^2,t^3}) 2 3 o8 = map (S, Q, {t, t , t }) o8 : RingMap S <--- Q |
i9 : isWellDefined g o9 = true |
i10 : Jg= jets(2,g); QQ[x0, y0, z0][x1, y1, z1][x2, y2, z2] o10 : RingMap QQ[t0][t1][t2] <--- ---------------------------------------------------------------------------------------------------- 2 2 2 2 2 3 (- 2x0*x2 + y2 - x1 , - 2x0*x1 + y1, - x0 + y0, - 3x0 x2 + z2 - 3x0*x1 , - 3x0 x1 + z1, - x0 + z0) |
i11 : isWellDefined Jg o11 = true |