On Feb 13, 2008 9:57 AM, Nick Alexander <[EMAIL PROTECTED]> wrote:
>
>
> On 13-Feb-08, at 6:06 AM, John Cremona wrote:
>
> >
> > I just discovered sage.rings.arith.discrete_log_generic(), not until
> > after implementing a similar function for elliptic curves over finite
> > fields (patch to be submitted before too long).  I thought it was a
> > pity that we cannot apparently use the same code for dlogs in an
> > additive group (as in what I just wrote) and a multiplcative one (as
> > in discrete_log_generic()).  Could we?
>
> At this time, not easily.

I think it would be trivial.  Just pass in a function of two arguments called
"mul" instead of using "*".   It's the same way Python's sort works.
(One should probably also pass in a pow function.)

> Some of the categorical work initiated at
> SD7 could help with this.  The relevant instigator is Nicholas Thiery
> and the implementors are, at this time, Robert Bradshaw, David Roe,
> and Mike Hansen.  (Apologies if I added/dropped anyone.)

That sort of complicated stuff would only be necessary maybe for
efficiency reasons -- but then you shouldn't be using a generic
algorithm.

>
> > Also, in the code for sage.rings.arith.discrete_log_generic(), which I
> > see was written by WIlliam and David Joyner in prehistoric times
> > (2005-01-05 must be before the first ever reease of Sage!)  there is
> > an inefficiency in using an array for g instead of a dict.  Shall I
> > write a patch for that?
>
> Please do.

Yes, please.  That was before I knew about some tricks like that....

>
> >
>



-- 
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org

--~--~---------~--~----~------------~-------~--~----~
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://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to