"William Stein" <[EMAIL PROTECTED]> writes:

> On 7/24/07, Nick Alexander <[EMAIL PROTECTED]> wrote:
>> "Alec Mihailovs" <[EMAIL PROTECTED]> writes:
>>
>> > May I suggest to add timing to the examples in the documentation - that
>> > would be very useful.
>> >
>> > For example, in recent discussion about Bell numbers on the math-fun list,
>> > it was noted that it takes a very long time to calculate bell(1000) in 
>> > Maple
>> > while BellB[1000] in Mathematica is much faster. I looked at the
>> > corresponding section in SAGE Reference manual,
>> >
>> > http://modular.math.washington.edu/sage/doc/html/ref/module-sage.combinat.combinat.html
>> >
>> > and couldn't tell how much time it takes in SAGE (probably, rather long,
>> > because it wraps GAP's Bell.)
>>
>> sage: sage.combinat.expnums.expnums(10, 1)
>>  [1, 1, 2, 5, 15, 52, 203, 877, 4140, 21147]
>>
>> for computing Bell numbers quickly.  It's not asymptotically faster
>> than Gap, but it is fairly tuned.
>
> Nick,
>
> On this topic, SAGE's bell_number command currently still *calls*
> GAP.  It seems to me it should call your expnums function.  What
> do you think?  Should it cache answers?  Thoughts?  Basically
> I want to improve SAGE's bell_number command so it isn't so slow
> by using your expnums function.  Also, I wonder what the memory
> issues are.

bell_number probably should call expnums.  Answers are already
cached by expnums.

There is a tuning improvement to be made: by doubling the amount of
storage required, you can save recomputing the first n when you ask
for the first n+k.  Asymptotically, that makes no difference, but I
could implement it anyway.

Nick

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
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