riordanmr@clvax1.cl.msu.edu (Mark Riordan) (04/18/91)
Archive-name: math/bignum/msu-bignum-archive/1991-04-17
Archive-directory: cl-next1.cl.msu.edu:/math/ [35.8.4.21]
Original-posting-by: riordanmr@clvax1.cl.msu.edu (Mark Riordan)
Original-subject: Large Integer Arithmetic Packages
Reposted-by: emv@msen.com (Edward Vielmetti, MSEN)
In response to recent Email requests, I have assembled this list of
large-integer packages of which I have heard.
For your convenience, I have placed compressed tar files of
most of these on cl-next1.cl.msu.edu (35.8.4.21). They are
available for anonymous FTP in the directory "math".
However, what I have may not be the most current version in all cases.
Here they are, in no particular order:
mp
Multiple Precision package that comes with some Unixes
Multiple precision package accessed via -lmp flag on your
compiler. Provides +, -, *, /, gcd, exponentiation,
sqrt. Comes with SunOS, NeXT Mach, BBN Mach 1000,
and probably a few others. See "man mp".
Object code only, of course.
PARI
Henri Cohen, et al., Universite Bordeaux I, Paris, FRANCE
Multiple precision desk calculator and library routines.
Contains optimized assembly code for Motorola 68020,
semi-optimized code for SPARC, and apparently rather slow
generic C version. Does both integers and reals.
Does vectors and matrices as well as scalars.
Contains a number of advanced functions, some of which I've
never heard of. ("Weber's function"?)
Has a factorization function, primality test, & other related stuff.
Plenty of TEX documentation.
Public domain, but you can't distribute modified versions.
Filename: pari-1.32.1.tar.Z
Arithmetic in Global Fields (Arith)
Kevin R. Coombes, David R. Grant
Package of routines for arbitrary precision integers or
polynomials over finite fields. Includes basic +, -, *, /
and a few others like gcd. Source code in C.
Distributed under the terms of the GNU public license.
Includes man pages and TEX documentation.
Filename: arith.tar.Z
Arbitrary Precision Math Library
Llyod Zusman Los Gatos, CA
C package which supports basic +, -, *, /. Provides for radix
points (i.e., non-integers). Not as polished as the others here.
Posted to comp.sources.misc in October 1988.
Filename: ampl.tar.Z
BigNum
J. Vuillemin, INRIA, FRANCE, and others.
Distributed by Digital Equipment Paris Research Lab (DECPRL)
A "portable and efficient arbitrary-precision integer" package.
C code, with generic C "kernel", plus assembly "kernels" for
MC680x0, Intel i960, MIPS, NS32032, Pyramid, and of course VAX.
This is probably one of the better-known packages of this type.
Implements +, -, *, /, mod, plus logical operations OR, AND, XOR.
Both signed and unsigned arithmetic available.
Available via email from librarian@decprl.dec.com.
You will receive 5 shell archives. Give your postal address
and you will also receive printed documentation from France.
Package includes TEX documentation.
Publicly available for non-commercial use.
Filename: bignum.tar.Z
Lenstra's package
Arjen Lenstra Bellcore
Portable unsigned integer package written entirely in C.
Includes +, -, *, /, exponentiation, mod, primality testing,
sqrt, random number generator, and a few others. The package
was uncommented and undocumented; I have tried to add enough
comments to get by. This is the only of these packages that I
have actually used. It works well and is very portable.
I haven't done any benchmarks against the others, but the code
looks clever & Lenstra is an accomplished number theorist.
Unlike the other packages here, this one requires you to allocate
storage statically--only a problem if your numbers are really huge.
Arjen has placed the code in the public domain.
Filename: lenstra.tar.Z
SPX
Kannan Alagappan & Joseph Tardo, DEC
This is a huge prototype public key authentication system
based on RSA. I mention it here because those who have heard
of SPX have probably correctly guessed that it contains a large
integer package and I want to inform you that the large integer
package it contains is indeed DEC's BigNum from France.
You can get a beta test copy of SPX from crl.dec.com (192.58.206.2).
Use it only for testing, as it "may" expire on a certain date.
Mark Riordan riordanmr@clvax1.cl.msu.edu
Michigan State University 17 April 1991
-- comp.archives file verification
cl-next1.cl.msu.edu
total 718
-rw-r--r-- 1 ftp other 4287 Apr 17 22:24 BIGNUMS.TXT
-rw-r--r-- 1 ftp other 74733 Apr 17 22:07 apml.tar.Z
-rw-r--r-- 1 ftp other 72153 Apr 17 21:41 arith.tar.Z
-rw-r--r-- 1 ftp other 146131 Apr 17 21:44 bignum.tar.Z
-rw-r--r-- 1 ftp other 25345 Apr 17 22:05 lenstra.tar.Z
-rw-r--r-- 1 ftp other 389604 Apr 17 21:41 pari-1.32.1.tar.Z
found msu-bignum-archive ok
cl-next1.cl.msu.edu:/math/