## MPFUN: A Portable High Performance Multiprecision Package (1990)

Citations: | 49 - 4 self |

### BibTeX

@TECHREPORT{Bailey90mpfun:a,

author = {David H. Bailey},

title = {MPFUN: A Portable High Performance Multiprecision Package},

institution = {},

year = {1990}

}

### Years of Citing Articles

### OpenURL

### Abstract

The author has written a package of Fortran routines that perform a variety of arithmetic operations and transcendental functions on floating point numbers of arbitrarily high precision, including large integers. This package features (1) virtually universal portability, (2) high performance, especially on vector supercomputers, (3) advanced algorithms, including FFT-based multiplication and quadratically convergent algorithms for π and transcendental functions, and (4) extensive self-checking and debug facilities that permit the package to be used as a rigorous system integrity test. Converting application programs to run with these routines is facilitated by an automatic translator program. This paper describes the routines in the package and includes discussion of the algorithms employed, the implementation techniques, performance results and some applications. Notable among the performance results is that this package runs up to 40 times faster than another widely used package on a RISC workstation, and it runs up to 400 times faster than the other package on a Cray supercomputer.

### Citations

2948 | A method for obtaining digital signatures and public-key cryptosystems
- Rivest, Shamir, et al.
- 1978
(Show Context)
Citation Context ...example [2]). An eminently practical application of multiprecision computation is the emergingseld of public-key cryptography, in particular research on the Rivest-Shamir-Adleman (RSA) 3 cryptosystem =-=[27, 17]-=-. This cryptosystem relies on the exponentiation of a large integer to a large integer power modulo a third large integer. The RSA cryptosystem has also spawned a great deal of research into advanced ... |

2202 |
The Art of Computer Programming
- Knuth
- 1998
(Show Context)
Citation Context ... with complexity as low as n log n log log n. The history of the development of advanced multiprecision multiplication algorithms will not be reviewed here. The interested reader is referred to Knuth =-=[24]. Bec-=-ause of the diculty of implementing these advanced schemes and the widespread misconception that these algorithms are not suitable for \practical" application, they are rarely employed. For examp... |

618 |
Mathematical: A System for Doing Mathematics by Computer
- Wolfram
- 1988
(Show Context)
Citation Context ... distributed by Symbolics, Inc. MACSYMA is actually a complete symbolic mathematics package, and its multiprecision arithmetic capability is only one part. A newer package of this sort is Mathematica =-=[32]-=-, distributed by Wolfram Research, Inc. It features support of impressive full-color graphics for owners of advanced workstations. There exist a number of other multiprecision systems in use that are ... |

133 | Quantitative universality for a class of non-linear transformations
- Feigenbaum
- 1978
(Show Context)
Citation Context ... regarding other classical constants, such as log and e + , and also regarding some constants that have arisen in twentieth century mathematics, such as the Feigenbaumsconstant (4:669201609 ) [13, =-=-=-18] and the Bernsteinsconstant (0:2801694990 ) [31]. However, in most of these cases algorithms are known that permit these numbers to be computed to high precision. When this is done, the hypothesi... |

86 | Fast multiple-precision evaluation of elementary functions
- Brent
- 1976
(Show Context)
Citation Context ...number of advanced algorithms have been discovered for the computation of that feature very high rates of convergence [8, 9]. Thesrst of these was discovered independently by Salamin [28] and Brent [=-=10]-=- and is referred to as either the Salamin-Brent algorithm or the Gauss-Legendre algorithm, since the mathematical basis of this algorithm has its roots in the nineteenth century. This algorithm exhibi... |

57 | Multiple-precision zero-finding methods and the complexity of elementary function evaluation
- Brent
- 1976
(Show Context)
Citation Context ...xp x k The run time of the basic log routine is only about 2.5 times that of the exp routine. The advanced routine for log employs a quadratically convergent algorithm due to Salamin, as described in =-=[12]-=-. Inputs t that are extremely close to 1 are handled using a Taylor series. Otherwise let n be the number of bits of precision required in the result. If t is exactly two, select m > n=2. Then the fol... |

45 |
Polynomial Time Algorithms for Finding Integer Relations Among
- Hastad, Just, et al.
- 1989
(Show Context)
Citation Context ...es some reasonably simple, low-degree polynomial can be tested by computing the vector (1; ; 2 ; ; n 1 ) and then applying one of the recently discovered integer relationsnding algorithms [5, 19,=-= 20]-=-. Such algorithms, when applied to an n-long vector x, determine whether there exist integers a i such that P a i x i = 0. Thus if a computationsnds such a set of integers a i , these integers are the... |

34 | A high-performance FFT algorithm for vector supercomputers
- Bailey
- 1993
(Show Context)
Citation Context ...course be economically computed using some variation of the fast Fourier transform (FFT) algorithm. The particular FFT algorithm utilized for the MPFUN advanced multiplication routine is described in =-=[3]. It -=-wassrst proposed by Swarztrauber and is sometimes called the \Stockham-Transpose-Stockham" FFT. This algorithm features reasonably high performance on most computers, including vector and cache m... |

31 |
Generalization of the Euclidean Algorithm for Real Numbers to All Dimensions Higher Than Two
- Ferguson, Forcade
- 1979
(Show Context)
Citation Context ...es some reasonably simple, low-degree polynomial can be tested by computing the vector (1; ; 2 ; ; n 1 ) and then applying one of the recently discovered integer relationsnding algorithms [5, 19,=-= 20]-=-. Such algorithms, when applied to an n-long vector x, determine whether there exist integers a i such that P a i x i = 0. Thus if a computationsnds such a set of integers a i , these integers are the... |

28 | te Riele, Disproof of the Mertens conjecture
- Odlyzko, J
- 1985
(Show Context)
Citation Context ...igh precision computations? Some particularly nice applications of high precision computation to pure mathematics include the disproof of the Mertens conjecture by A. M. Odlyzko and H. J. J. te Riele =-=[26], the-=- disproof of the Bernstein conjecture in approximation theory by Varga and Carpenter and the resolution of the \one-ninth" conjecture [31]. A number of other examples of multiprecision applicatio... |

27 |
Exponentiation cryptosystems on
- Comba
- 1990
(Show Context)
Citation Context ...ample [2]). An eminently practical application of multiprecision computation is the emerging field of public-key cryptography, in particular research on the Rivest-Shamir-Adleman (RSA) 3cryptosystem =-=[27, 17]-=-. This cryptosystem relies on the exponentiation of a large integer to a large integer power modulo a third large integer. The RSA cryptosystem has also spawned a great deal of research into advanced ... |

19 |
A Fortran Multiple Precision Arithmetic Package
- Brent
- 1978
(Show Context)
Citation Context ...her Multiprecision Systems Several software packages are available for multiprecision computation. One that has been around for a while is the Brent MP multiprecision package, authored by R. P. Brent =-=[11]-=-. This package has the advantage of being freely available either from the author or from various other sources. It is very complete, including detailed numerical controls and many special functions. ... |

18 |
High-precision division and square root
- Karp, Markstein
- 1997
(Show Context)
Citation Context ...mployed, which converges to 1=b: x k+1 = x k + (1 bx k )x k where the muliplication () x k is performed with only half of the normal level of precision. 10 Thesnal iteration is performed as follows [2=-=-=-3]: a=b (ax n ) + [a (ax n )b]x n where the multiplications ax n and []x n are performed with only half of thesnal level of precision. Note that each iteration of this algorithm involves only an addi... |

17 | The arithmetic-geometric mean and fast computation of elementary functions
- Borwein, Borwein
- 1984
(Show Context)
Citation Context ...t : x k+1 = x k (t + 1 log x k ) 14 It might be mentioned that quadratically convergent algorithms for exp and log weresrst presented by Brent in [10], and others were presented in by the Borweins in =-=[7-=-]. Based on the author's comparisons, however, the Salamin algorithm is signicantly faster than either the Brent or the Borwein algorithm. For this reason the Salamin algorithm was selected for inclus... |

16 |
Computation of π using arithmetic-geometric mean
- Salamin
- 1976
(Show Context)
Citation Context .... Recently a number of advanced algorithms have been discovered for the computation of π that feature very high rates of convergence [8, 9]. The first of these was discovered independently by Salamin =-=[28]-=- and Brent [10] and is referred to as either the Salamin-Brent algorithm or the Gauss-Legendre algorithm, since the mathematical basis of this algorithm has its roots in the nineteenth century. This a... |

15 |
A multiprecise integer arithmetic package", The
- Buell, Ward
- 1989
(Show Context)
Citation Context ...ision systems in use that are specically targeted for a particular computer system or for special applications. A package for large integer 4 computation, with a focus on the Cray-2, is described in [=-=14]-=-. With the multiprecision computation tools currently available, some may question the need for yet another. In this regard, the author has attempted to combine some of the more valuable features of e... |

11 | A Fortran Package for Floating-Point Multiple-Precision Arithmetic
- Smith
- 1991
(Show Context)
Citation Context ...has the advantage of being freely available either from the author or from various other sources. It is very complete, including detailed numerical controls and many special functions. Recently Smith =-=[30]-=- described a similar package that features improved performance for certain transcendental functions. Another package available at some sites is MACSYMA, which was originally developed at MIT but is n... |

10 |
Exponentiation cryptosystems on the IBM PC
- Comba
- 1990
(Show Context)
Citation Context ...example [2]). An eminently practical application of multiprecision computation is the emergingseld of public-key cryptography, in particular research on the Rivest-Shamir-Adleman (RSA) 3 cryptosystem =-=[27, 17]-=-. This cryptosystem relies on the exponentiation of a large integer to a large integer power modulo a third large integer. The RSA cryptosystem has also spawned a great deal of research into advanced ... |

10 |
Computation of r using arithmetic-geometric mean
- Salamin
- 1976
(Show Context)
Citation Context ... . Recently a number of advanced algorithms have been discovered for the computation of that feature very high rates of convergence [8, 9]. Thesrst of these was discovered independently by Salamin [2=-=8]-=- and Brent [10] and is referred to as either the Salamin-Brent algorithm or the Gauss-Legendre algorithm, since the mathematical basis of this algorithm has its roots in the nineteenth century. This a... |

9 | Automatic translation of Fortran programs to multiprecision
- Bailey
- 1991
(Show Context)
Citation Context ...ator then parses the input code and generates a program that has all of the calls to the appropriate MPFUN routines. This translator program is described in a separate paper available from the author =-=[1]-=-. 3. Overview of the Package The MPFUN package consists of approximately 10,000 lines of Fortran code organized into 87 subprograms. These routines operate on three custom data types: multiprecision (... |

9 | The computation of r to 29,360,000 decimal digits using Borweins’ quartically convergent algorithm
- BAILEY
- 1988
(Show Context)
Citation Context ...e Chudnovskys have more recently extended their calculation to beyond two billion digits [16]. Statistical analyses of these results have so far not yielded any statistical anomalies (see for example =-=[2]-=-). An eminently practical application of multiprecision computation is the emergingseld of public-key cryptography, in particular research on the Rivest-Shamir-Adleman (RSA) 3 cryptosystem [27, 17]. T... |

9 |
Numerical Results on Relations Between Numerical Constants Using a New Algorithm
- Bailey, Ferguson
- 1989
(Show Context)
Citation Context ...es some reasonably simple, low-degree polynomial can be tested by computing the vector (1; ; 2 ; ; n 1 ) and then applying one of the recently discovered integer relationsnding algorithms [5, 19,=-= 20]-=-. Such algorithms, when applied to an n-long vector x, determine whether there exist integers a i such that P a i x i = 0. Thus if a computationsnds such a set of integers a i , these integers are the... |

8 |
The Computation of π to 29,360,000 Decimal Digits Using Borweins’ Quartically Convergent Algorithm
- Bailey
- 1988
(Show Context)
Citation Context ...e Chudnovskys have more recently extended their calculation to beyond two billion digits [16]. Statistical analyses of these results have so far not yielded any statistical anomalies (see for example =-=[2]-=-). An eminently practical application of multiprecision computation is the emerging field of public-key cryptography, in particular research on the Rivest-Shamir-Adleman (RSA) 3cryptosystem [27, 17].... |

7 |
How to calculate Feigenbaum constants on your
- Briggs
- 1989
(Show Context)
Citation Context ... regarding other classical constants, such as log and e + , and also regarding some constants that have arisen in twentieth century mathematics, such as the Feigenbaumsconstant (4:669201609 ) [13, =-=-=-18] and the Bernsteinsconstant (0:2801694990 ) [31]. However, in most of these cases algorithms are known that permit these numbers to be computed to high precision. When this is done, the hypothesi... |

6 | Numerical results on the transcendence of constants involving π, e, and Euler’s constant
- Bailey
- 1988
(Show Context)
Citation Context ...h results are of interest by themselves. Clearly such analysis can be applied to any constant that can be computed to suciently high precision. The author has performed some computations of this type =-=[4, -=-5], and others are in progress. Some recent results include the following: ifssatises an integer polynomial of degree 50 or less, then the Euclidean norm of the coecients must exceed 7 10 17 ; if Fei... |

5 |
A History of Pi, Golem
- Beckmann
- 1977
(Show Context)
Citation Context ... be presented here. Interested readers are referred to the respective papers. 7. Computing The computation of to high precision has a long and colorful history. Interested readers are referred to [6] for discussion of the classical history of computing . Recently a number of advanced algorithms have been discovered for the computation of that feature very high rates of convergence [8, 9]. Thes... |

3 |
modular equations and approximations to pi
- Borwein, Borwein, et al.
- 1989
(Show Context)
Citation Context ...erred to [6] for discussion of the classical history of computing . Recently a number of advanced algorithms have been discovered for the computation of that feature very high rates of convergence [8=-=, 9]-=-. Thesrst of these was discovered independently by Salamin [28] and Brent [10] and is referred to as either the Salamin-Brent algorithm or the Gauss-Legendre algorithm, since the mathematical basis of... |

3 |
Modular Equations
- Borwein, Borwein, et al.
- 1989
(Show Context)
Citation Context ...erred to [6] for discussion of the classical history of computing π. Recently a number of advanced algorithms have been discovered for the computation of π that feature very high rates of convergence =-=[8, 9]-=-. The first of these was discovered independently by Salamin [28] and Brent [10] and is referred to as either the Salamin-Brent algorithm or the Gauss-Legendre algorithm, since the mathematical basis ... |

2 |
Computation and Arithmetic Nature of Classical Constants
- Chudnovsky, Chudnovsky
- 1989
(Show Context)
Citation Context ...y statistical anomalies in the results. The computation of has been of particular interest in this regard, and recently the one billion digit mark was passed by both Kanada [22] and the Chudnovskys [=-=15]-=-, and the Chudnovskys have more recently extended their calculation to beyond two billion digits [16]. Statistical analyses of these results have so far not yielded any statistical anomalies (see for ... |

2 |
personal communication
- Slowinski
- 1991
(Show Context)
Citation Context ...” multiplication algorithm, to the author’s knowledge. One instance where an 8advanced multiplication technique was employed is [17]. Another is Slowinski’s searches for large Mersenne prime numbers =-=[29]-=-. The author has implemented a number of these schemes, including variations of the Karatsuba-Winograd algorithm and schemes based on the discrete Fourier transform (DFT) in various number fields [24]... |

1 |
The Number Field Sieve
- M
- 1990
(Show Context)
Citation Context ...er with 155 digits, which was accomplished by means of numerous computer systems communicating by electronic mail. This computation employed a new factoring algorithm, known as the \numberseld sieve&q=-=uot; [25]-=-. An indirect application of multiprecision computation is the integrity testing of computer systems. A unique feature of multiprecision computations is that they are exceedingly unforgiving of hardwa... |