I did try to check that Mathematica was getting the right answer, but
I had no luck. I don't know how to convert a mathematica matrix into
ordinary matrix form in SAGE, so when I do the comparison it always
just says false.

Bill.

On 3 Dec, 15:21, Clement Pernet <[EMAIL PROTECTED]> wrote:
> Hi there,
>
> The method using x^k mod charpoly (or minpoly) is clearly the only
> method I know about for that problem.
> If n is smallish, this is the good way to do it.
>
> For larger n (say n=O(k)), the computation of the n power of A in step 3
> is the bottleneck (n^4 or n^(w+1) ops in Q, so roughly O(n^5) bit ops).
> In this case, a good approach is to replace M by its Frobenius form F =
> U^-1AU in step 3 and apply the similarity transformation at last.
>
> Clément
>
> David Harvey a écrit :
>
> >On Dec 3, 2007, at 8:40 AM, Bill Hart wrote:
>
> >>I've just been looking at SAGE ticket number 173:
>
> >>http://www.sagemath.org:9002/sage_trac/ticket/173
>
> >>The idea is that Mathematica raises a 3 dimensional matrix M over QQ
> >>to the power 20,000 much faster than either SAGE or Magma.
>
> >>I don't know any algorithm for doing this efficiently. I only know one
> >>algorithm:
>
> >>1) Compute the  characteristic polynomial p(x) of M (time 0.00s)
> >>2) Compute x^20000 mod p (time 0.22s)
> >>3) Substitute M into the result (time 0.00s)
>
> >>It's pretty obvious where the time is going here - polynomial
> >>arithmetic. I guess this is the algorithm being used. Is Pari or NTL
> >>being used for the polynomial expmod?
>
> >>I reckon we can speed this up. What do people think?
>
> >I would have guessed the algorithm was just "compute M^20000 using
> >repeated squaring". But your suggestion is quite interesting.
>
> >Maybe first check that mathematica is getting the right answer, and
> >not some stupid floating point approximation or something.
>
> >david
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to