Hello,

I'm trying to implement an algorithm for factorization of bivariate
polynomials. A step of the algorithm is Hensel lifting and I was not
able to coerce a Taylor development of degree k into a Taylor
development of degree k+1. More precisely, I have a polynomial in the
quotient ring R[t] / (t^k) and I want to see it in R[t] / (t^(k+1)). I
would like to use the quotient rings because many calculus are done in
each of them.

My two attempts were the followings
{{{
sage: K.<t> = PolynomialRing(QQ,'t')
sage: A2 = QuotientRing(K, Ideal(t^2))
sage: A3 = QuotientRing(K, Ideal(t^3))
sage: P = A2(t^4 + 3*t + 1)
}}}

First method: try to coerce
{{{
sage: A3(P)
Traceback (click to the left of this block for traceback)
...
TypeError: Unable to coerce 3*tbar + 1 (<class
'sage.rings.polynomial.polynomial_quotient_ring_element.PolynomialQuotie
\
ntRingElement'>) to Rational
}}}

Second method substitute
{{{
sage: P.substitute(t=A3.gen()).parent()
sage: P.parent()
Univariate Quotient Polynomial Ring in tbar over Rational Field with
modulus t^2
}}}

Is Hensel lifting yet implemented in Sage ? Does anybody have a
solution for this particular problem ?

Thanks,
Vincent

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to