On 17 November 2016 at 20:15, Johan S. H. Rosenkilde <maill...@atuin.dk> wrote:
> John Cremona writes:
>> That was the algorithm I implemented in Magma.  It was not very hard.
>
> Indeed. My student made an effort of comparing C++, Cython and pure Sage
> implementations, in combination with various tweaks to the algorithm.
> In the end the Cython version was at best 2x faster than  my pure Sage
> implementation. Which is probably not surprising to Cython veterans, but
> it was to me :-)
>
>> > I have semi-unpolished code in my public repo [2] which uses that
>> > implementation for shifted Popov form, order basis, etc., allowing the
>> > whole host of normal forms and K[x] equation solvers. They work and are
>> > tremendously useful, and they are reasonably fast for small-medium
>> > matrices. If there is interest and I can get reviewers, I can become
>> > motivated to polishing them off for Sage proper.
>>
>> I think there is interest.
>
> Good to hear.
>
>> I once used the weak Popov form in a talk with Hendrik Lenstra in the
>> audience and he was quite amused since it appeared to be (and I think
>> he is right) much the same as his brother Arjen had written about in
>> his (earlier!) thesis.
>
> The algorithm in [1] by Arjen Lenstra is somewhat similar to what
> Mulders and Storjohann's algorithm, but it is asymptotically slower.
> The one you implemented in Sage

Not me -- but I did review it in 2010! -- see
https://trac.sagemath.org/ticket/9069

>  is closer to Lenstra's algorithm (and
> has its complexity) than it is to the one of M-S.
>
> Mulders and Storjohann's algorith even predates the Lenstras: it was
> (very loosely) outlined in 1980 in Kailath's legendary book. Arne
> Storjohann himself seems slightly embarrassed that it now carries his
> name; his article was just the first to really write it properly and
> analyse it, and the article's intended contents were lots of stuff it
> was used for.
>
> Best,
> Johan
>
>
>
> [1] Lenstra, A.K. 1985. “Factoring Multivariate Polynomials over Finite
> Fields.” Journal of Computer and System Sciences 30 (2): 235–248.
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to