MACSYMA

When this article was published Mathematica did not exist as a commercial product. Its spectacular growth and that of Maple, Axiom and many other packages such as Matlab show how quickly these tools have established themselves throughout the sciences.


RAMANUJAN NOTEBOOK

This page from [Ramanujan's second Notebook] (cite Berndt) is representative of his work on modular equations.

SCAN IN PAGE


LEGENDRE'S IDENTITY

A nice proof of this follows by (i) differentiating both sides - one gets zero- and then taking the limit at $k /to 0$. We illustrate this in [Maple]. It is interesting to note that Legendre's faith in and knowledge of limits precluded his developing this proof. Instead he evaluated all quantities at $(3^(1/2)-1)/2$ (the third [singular value]) a considerable tour de force!

`diff/LegendreKc` := proc(k,x)
diff(k,x)*(-1/k*LegendreKc(k)+1/k/(1-k^2)*LegendreEc(k));
end:

`diff/LegendreKc1` := proc(k,x)
diff(k,x)*(k/(1-k^2)*LegendreKc1(k)-1/k/(1-k^2)*LegendreEc1(k));
end:

`diff/LegendreEc` := proc(k,x)
diff(k,x)*(-1/k*LegendreKc(k)+1/k*LegendreEc(k));
end:

`diff/LegendreEc1` := proc(k,x)
diff(k,x)*(k/(1-k^2)*LegendreKc1(k)-k/(1-k^2)*LegendreEc1(k));
end:

alias (Kc=LegendreKc,Ec= LegendreEc,Kc1= LegendreKc1, Ec1=LegendreEc1);

LL:=Kc*Ec1+Ec*Kc1-Kc*Kc1;

diff(LL(t),t); simplify(");

LL((sqrt(3)-1)/2); evalf(");


ALPHA

It is very easy to compute $\alpha$ for $r>0$. One uses the [functional equation

$\alpha(1/r)=\frac{r^(1/2)-\alpha(r)} r] for $r<1$ and a truncation of [theta expansion]. Two terms suffice to obtain 10 digits on $r>1$.

th3:=proc(q,N) local n;1+2*sum(q^(n^2),n=1..N);end:

th3d:=proc(q,N) local n;2*sum(n^2*q^(n^2),n=1..N);end:

alpha:=proc(r,N) local q,n; q:=exp(-Pi*r^(1/2));
(1/Pi)-4*r^(1/2)*th3d(-q,N)/th3(-q,N);"/th3(q,N)^4; end:

alphaf:=proc(s,n) local a;
if s>1 then a:=alpha(s,n) else a:=sqrt(s)-s*alpha(1/s,n) fi;evalf(");end:

We may get a sense of $\alpha$'s lovely recursive properties from a [PLOT] on [0,10].

plota:=proc(a,b) local r;

print(plot(alphaf(r,2),r=a..b)); end:

#we need to get the plot to run with th piecewise definition cleanly

Lattice basis reduction allows us to illustrate the algbraic nature of $\alopha$ and indeed discover values:

readlib(lattice):
Digits:=20;

minpoly(alphaf(2,3),3);

minpoly(alphaf(5,2),4);
expand(subs(_X=1/2*5^(1/2)-1/2*(2*5^(1/2)-2)^(1/2),"));

Digits:=40;

minpoly(alphaf(27,2),6);
expand(subs(_X=3/2*3^(1/2)+3/2-3*2^(1/3),"));

#alpha(27) (takes too long for minpoly interactively?)


GENERAL COMPUTATIONAL UPDATE

Since the publication of our article our predictions have been matched and more. All these calculations have been performed using methods described within the paper. We detail the most interesting:


BILLIONS

In 1989, The Chudnovsky Brothers computed 1,011,196,961 digits of pi using {Series 163]. This used an IBM3090/VF for 120hrs and a CRAY2 for 28hrs) In short order Kanada then computed 1,073,741,799 digits (2^30-25) with a verification run in under 161 hours. He used the [quartic algorithm] and the related Gauss-Salamin-Brent algorithm (cite Pi&AGM). In 1991 the Chudnovskys then computed in excess of 2.16 billion digits (Many details of their largely home -built computer are given in "The Mountains of Pi, ref. New Yorker). Early in 1995, Kanada computed in excess of 3x??billion digits after which the Chudnovsky's reported (personal communication) that in 1994 they had passed the 4 billion mark:

"Thank you very much for your message. If it really matters, the "latest" round of calculations of $\pi$ was conducted last year as a part of testing of an upgrade to our machine. The actual end computation date was May 18, 1994 (as tapes and file dates indicate). The method used was still our favorite identity (from h(-163)=1). The core of bignum codes was the combinations of several "fast" convolution algorithms, applied depending on the length. The number of decimal digits of $\pi$ computed in that calculations was over 4,044,000,000. We will send you a reprint from Grosswald volume that touches on some techniques in our approach. Among amusing issues in this computations was the break of 32-bit addressing limit in file/array sizes. All computations were run instead in 64-bit (virtual) address space (and that required some tinkering with storage and tape devices).We would be happy to get preprints of your projects.

With best wishes,

David and Gregory"


The two most recent record computations were performed by Yasumasa Kanada and his colleagues during 1995. It is worth emphasizing that each of his computations effectively performs the equivalent of a few hundred full precision multiplications. A single such multiplication {\sl performed on the same machine but without using FFT ideas} would take several years.

The details follow. More is available at [link to Pi sites] including more analysis of the digits.

********************************************************************************p> 2^32 Digits: "Two independent calculations based on two different algorithms generated4,294,967,296 (=2^32) decimal digits of pi and the two generated sequences matched 4,294,967,286 decimal digits, e.g., 10 decimal digits difference. Then we are declaring 4,294,960,000 decimal digits as the

new world record."

Main program run:

Job start (1-st) : 28th July 1995 22:59

Job end (1-st) : 31st July 1995 07:42

Elapsed time (1-st) : 56:44:24

Vector CPU (1-st) : 67:33:04

Job start (2-nd) : 04th Aug. 1995 20:38

Job end (2-nd) : 07st Aug. 1995 05:35

Elapsed time (2-nd) : 56:57:11

Vector CPU (2-nd) : 66:15:37

Main memory : 1792.75 MB

ES memory : 25120 MB

Disk storage : 2 GB * 2 = 4 GB (as for the intermediate data storage)

Algorithm : Borweins' 4-th order convergent algorithm

Verification program run:

Job start (1-st) : 11th Aug. 1995 21:31

Job end (1-st) : 14st Aug. 1995 15:54

Elapsed time (1-st) : 66:23:29

Vector CPU (1-st) : 77:14:59

Job start (2-nd) : 25th Aug. 1995 23:12

Job end (2-nd) : 28st Aug. 1995 15:09

Elapsed time (2-nd) : 63:57:22

Vector CPU (2-nd) : 75:10:29

Main memory : 1792.75 MB

ES memory : 26152 MB

Disk storage : 2 GB * 3 = 6 GB (as for the intermediate data storage)

Algorithm : Gauss-Legendre algorithm

October 12, 1995.

And then:

********************************************************************

3*2^31: "Our latest record was established as follows:

Declared record: 6,442,450,000 decimal digits. Two independent calculations based on two different algorithms generated 6,442,450,944 (=3*2^31) decimal digits of pi and the two generated sequences matched to 6,442,450,938 decimal digits, e.g., 6 decimal digits difference. Then we are declaring 6,442,450,000 decimal digits as the new world record."

Main program run:

Job start : 19th September 1995 20:54

Job end : 24th September 1995 17:32

Elapsed time : 116:38:12

Vector CPU : 112:36:06

Main memory : 1856.75 MB

ES memory : 32764 MB

Algorithm : Borwein's 4-th order convergent algorithm

Verification program run:

Job start : 06th October 1995 09:58

Job end : 11th October 1995 21:38

Elapsed time : 131:40:24

Vector CPU : 135:45:52

Main memory : 1792.75 MB

ES memory : 32328 MB

Algorithm : Gauss-Legendre algorithm

4,000,000,000-th digits of pi and 1/pi: <== Not updated because of disk

storage problem.

pi : 94375 34306 22684 47216

1/pi: 71480 70425 69013 58924

^

4,000,000,000-th

(First digit '3' for pi or '0' for 1/pi is not included in the above count.)

Frequency distribution for pi-3 up to 6,000,000,000 decimal places:

'0' : 599963005; '1' : 600033260; '2' : 599999169; '3' : 600000243

'4' : 599957439; '5' : 600017176; '6' : 600016588; '7' : 600009044

'8' : 599987038; '9' : 600017038; Chi square = 9.00

Frequency distribution for 1/pi up to 6,000,000,000 decimal places:

'0' : 599978305; '1' : 600024329; '2' : 600007880; '3' : 600006529

'4' : 599976720; '5' : 599986534; '6' : 600012285; '7' : 600023761

'8' : 599975659; '9' : 600007998; Chi square = 5.44

4,294,960,000-th digits of pi and 1/pi; <== Not updated because of disk

storage problem.

pi : 55675 13149 35865 45528

1/pi: 96350 29339 14953 51156

^

4,294,960,000-th

(First digit '3' for pi or '0' for 1/pi is not included in the above count.)

Programs were written by Mr. Daisuke TAKAHASHI, a member of Kanada Lab. CPU used was HITAC S-3800/480 at the Computer Centre, University of Tokyo. Two CPUs were definitely used through single job parallel processing for a total of four programs run.

Yasumasa KANADA

Computer Centre, University of Tokyo

Bunkyo-ku Yayoi 2-11-16

Tokyo 113 Japan

Fax : +81-3-3814-7231 (office)

E-mail: kanada@pi.cc.u-tokyo.ac.jp

********************************************************************************p>