#15422: factorization of non-squarefree polynomials over the p-adics
-----------------------------------------------+---------------------------
       Reporter:  jdemeyer                     |        Owner:
           Type:  defect                       |       Status:
       Priority:  major                        |  needs_review
      Component:  padics                       |    Milestone:  sage-5.13
       Keywords:                               |   Resolution:
        Authors:  Jeroen Demeyer               |    Merged in:
Report Upstream:  N/A                          |    Reviewers:  Robert
         Branch:                               |  Bradshaw
   Dependencies:  #864, #9640, #10018, #11868  |  Work issues:
                                               |       Commit:
                                               |     Stopgaps:
-----------------------------------------------+---------------------------

Comment (by jdemeyer):

 There is a precedent:
 {{{
 sage: (1 + O(2^2)).is_square()
 ---------------------------------------------------------------------------
 PrecisionError                            Traceback (most recent call
 last)
 <ipython-input-2-a8b4da3a4425> in <module>()
 ----> 1 (Integer(1) + O(Integer(2)**Integer(2))).is_square()

 /usr/local/src/sage-5.13.beta1/local/lib/python2.7/site-
 packages/sage/rings/padics/padic_generic_element.so in
 sage.rings.padics.padic_generic_element.pAdicGenericElement.is_square
 (sage/rings/padics/padic_generic_element.c:6916)()

 /usr/local/src/sage-5.13.beta1/local/lib/python2.7/site-
 packages/sage/rings/padics/padic_capped_relative_element.so in
 
sage.rings.padics.padic_capped_relative_element.pAdicCappedRelativeElement.residue
 (sage/rings/padics/padic_capped_relative_element.c:17528)()

 PrecisionError: Not enough precision known in order to compute residue.
 }}}

 This is exactly the same as factoring `t^2 - (1 + O(2^2))`, so the latter
 should be an error also.

 (I didn't know about `PrecisionError`, so I'm changing the patch to return
 a `PrecisionError` instead of `ArithmeticError`).

--
Ticket URL: <http://trac.sagemath.org/ticket/15422#comment:26>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to