#20086: rational powers in ZZ[X] and QQ[X]
-------------------------------------+-------------------------------------
       Reporter:  cheuberg           |        Owner:
           Type:  defect             |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.2
      Component:  basic arithmetic   |   Resolution:
       Keywords:                     |    Merged in:
        Authors:  Clemens            |    Reviewers:  Benjamin Hackl,
  Heuberger, Vincent Delecroix,      |  Vincent Delecroix
  Benjamin Hackl                     |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:  public/20086       |  e56adf4325379d05441efb4dd9487c2cc7904ddc
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------

Comment (by behackl):

 Replying to [comment:75 nbruin]:
 > Perhaps don't bother getting a grammatically correct ordinal. Note that
 the current code doesn't get it correct anyway: It's 21st, 22nd, 23rd.
 >
 > Better to formulate the error message in a way that doesn't depend on
 correct ordinal spelling, e.g.
 > `ValueError("(%s)^(1/%s) does not lie in ring"%(f,n))`
 >

 I do like the version with explicit ordinals in the errors more, so I
 fixed them. :-)



 > Concerning further optimization: testing degree is of course a
 worthwhile cheap trick. A follow-up ticket should probably use square-free
 factorization; something along the lines:
 >
 >  - if the characteristic p divides n then first check that the
 polynomial only has p-th powers of the variables in it. Take p-th root
 (i.e., replace variables and take p-th root of coefficients) and take
 (n/p)-th root of resulting polynomial
 >
 >  - In characteristic 0 then take g=f/GCD(f,f.derivative()), check that
 `g^n` divides `f`, take n-th root of `f/(g^n)`, multiply by g and return
 that.
 >
 > In positive characteristic we may first need to take all p-th powers
 out.

 Of course, there is always potential to improve the performance. However,
 like you said, this should happen in a follow-up ticket.

--
Ticket URL: <http://trac.sagemath.org/ticket/20086#comment:77>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to