1 | initial version |
I think you want the .lift() method:
sage: P.<x,y,z,t>=PolynomialRing(QQ,4)
sage: C1= 17*x^2 + 7*y^2 - 26*y*z + 7*z^2
sage: C2= 13*y^2 - 7*y*z + 13*z^2 - 51*t^2
sage: f = x^4+y^4+z^4-18*t^4
sage:
sage: f in ideal(C1,C2)
True
sage:
sage: CI = ideal(C1, C2)
sage: coords = f.lift(CI)
sage: coords
[1/17*x^2 + 1/13*y*z - 21/221*t^2, -7/221*x^2 + 1/13*y^2 + 1/13*z^2 + 6/17*t^2]
sage: rebuilt = sum(coord*base for coord, base in zip(coords, [C1, C2]))
sage: rebuilt
x^4 + y^4 + z^4 - 18*t^4
sage: f == rebuilt
True