id,summary,reporter,owner,description,type,status,priority,milestone,component,resolution,keywords,cc,merged,author,reviewer,upstream,work_issues,branch,commit,dependencies,stopgaps
15422,factorization of non-squarefree polynomials over the p-adics,jdemeyer,,"1) The following should be an `ArithmeticError` since whether or not the polynomial factors depends on the `O(3^20)` error term (`t^2 - 3^20` factors while `t^2 - 3^21` does not):
{{{
sage: R. = PolynomialRing(Qp(3))
sage: (t^2).factor()
((1 + O(3^20))*t + (O(3^20)))^2
}}}
2) The following should directly call PARI's `factorpadic` without coercing the coefficients to `Qp` first:
{{{
sage: R. = PolynomialRing(QQ)
sage: ((t-1)^2).factor_padic(3,5)
(1 + O(3^5))*t^2 + (1 + 2*3 + 2*3^2 + 2*3^3 + 2*3^4 + O(3^5))*t + (1 + O(3^5))
}}}
The attached patch also does some clean-up of the various p-adic polynomial classes, now `_repr()` and `factor()` are implemented in exactly one place. One consequence of this is that `_repr()` for polynomials over `Zp` has changed: non-exact zeros are now printed.
'''Apply''' [attachment:15422_factorpadic.patch]",defect,closed,major,sage-5.13,padics,fixed,,zimmerma mmezzarobba roed robharron,sage-5.13.rc0,Jeroen Demeyer,"Robert Bradshaw, David Roe",N/A,,,,"#864, #9640, #10018, #11868",