Ask Your Question
1

Changing Parent on multivariable polynomial ring

asked 2020-09-11 19:28:25 +0100

whatupmatt gravatar image

This question is similar to https://ask.sagemath.org/question/803...

R.<x,y,z,w> = QQ[]
f=x*y*z*w
f1=derivative(f,x)
f2=derivative(f,y)
f3=derivative(f,z)
f4=derivative(f,w)
J = R.ideal([f1, f2, f3,f4])

Now f is in its Jacobian by Euler identity so we can lift f as follows.

f in J

returns true.

f.lift(J)

returns the lift of f. Now consider h=f^(2)/ (xyz). Although this seems like a rational function, this is actually a polynomial.

h in J

returns true. However, I get an error when doing

h.lift(J)

The reason for this is Sage reads h as living not in the multivariable ring, but the fraction field of it because I divided by xyz. Apparently, there is no lift function for polynomials living in the fraction field. However, it is still an honest polynomial as it divides cleanly with no remainder. To be more clear,

f.parent()

returns Multivariate Polynomial Ring in x, y, z, w over Rational Field.

h.parent()

returns Fraction Field of Multivariate Polynomial Ring in x, y, z, w over Rational Field. Is there a way to make h belong to the multivariate ring instead of its fraction field so I can apply the lift function?

edit retag flag offensive close merge delete

Comments

By the way, J = R.ideal(jacobian(f,R.gens()).list()) and J = R.ideal(f.gradient()) and J = f.jacobian_ideal().

rburing gravatar imagerburing ( 2020-09-11 21:40:57 +0100 )edit

1 Answer

Sort by ยป oldest newest most voted
2

answered 2020-09-11 21:35:46 +0100

rburing gravatar image

If you do explicit division of polynomials with /, you (reasonably) end up in the fraction field of the polynomial ring. What you want to do instead is division with //, which is division (ignoring the remainder) in the polynomial ring. Since you know the remainder is zero, this will be the actual quotient, as a member of the polynomial ring.

(If you have an element q in the fraction field of R and it has denominator 1, then you can also convert it to an element of the polynomial ring by R(q).)

edit flag offensive delete link more

Comments

Great, thanks for your help.

whatupmatt gravatar imagewhatupmatt ( 2020-09-11 22:58:37 +0100 )edit

You're welcome. You can accept the answer by pressing the check mark button under the voting arrows (also on all of your other answered questions).

rburing gravatar imagerburing ( 2020-09-11 23:35:02 +0100 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2020-09-11 19:28:25 +0100

Seen: 369 times

Last updated: Sep 11 '20