How do I let them know about a bug ?
- To: mathgroup at smc.vnet.net
- Subject: [mg83736] How do I let them know about a bug ?
- From: giovanni resta <g.restaCUT at CUTiit.cnr.it>
- Date: Thu, 29 Nov 2007 06:29:30 -0500 (EST)
Hi,
first of all let me express my joy
in the discovery of this newsgroup.
I was playing with Mathematica 6
(which has some very very nice features!)
of a collegue of mine and exploring
the new features.
I saw that RamanujanTau[n] has been
moved into the kernel and has a much more
efficient implementation.
In Issues, they say that when evaluated
on large prime operands it can take
long time, and they make this example:
RamanujanTau[214928639999] // Timing
{29.7385,
336969318523447435477041542002543549208693346637507838687265285}
By lazily factoring it,
I realized that the computed value was obviously wrong,
so I checked for other prime operands.
To make a long story short I saw that for
prime operands greater than about 2*10^6 the function
returned results that were almost surely wrong.
So I worked a little on Attributes, to see how
the function was implemented.
I discovered that when the operand is a prime
greater or equal to 1999993 the algorithm they used
is wrong.
In that case they uses this formula:
(1/2) p^5 HurwitzClassNumber[4*p]
which is clearly broken (by the way, the nice
HurwitzClassNumber function is hidden).
Indeed there is a way to compute tau(n) using the Hurwitz Class
Number function H(x), and it contains the term (1/2) p^5 H(4*p)
but it is much more complicated than that, since it needs also
the evaluation of H() in about other O(sqrt(p)) points!
Thus, for a number as large as 214928639999 the right running
time will be simply "too long".
Anyway, the right formula for tau() using H() can be found in the paper:
http://pages.cs.wisc.edu/~cdx/CompTau.pdf
I hope that this will be useful to anybody which will play
with the fascinating Ramanujan tau function.
I wonder if I have to send a message to the Mathematica Team (how??)
or if they read this newsgroup.
bye,
g.