ACM Home Page
Please provide us with feedback. Feedback
MPFR: A multiple-precision binary floating-point library with correct rounding
Full text PdfPdf (135 KB)
Source
ACM Transactions on Mathematical Software (TOMS) archive
Volume 33 ,  Issue 2  (June 2007) table of contents
Article No. 13  
Year of Publication: 2007
ISSN:0098-3500
Authors
Laurent Fousse  LORIA, Nancy Cedex, France
Guillaume Hanrot  LORIA, Nancy Cedex, France
Vincent Lefèvre  LORIA, Nancy Cedex, France
Patrick Pélissier  LORIA, Nancy Cedex, France
Paul Zimmermann  LORIA, Nancy Cedex, France
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 21,   Downloads (12 Months): 145,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1236463.1236468
What is a DOI?

ABSTRACT

This article presents a multiple-precision binary floating-point library, written in the ISO C language, and based on the GNU MP library. Its particularity is to extend to arbitrary-precision, ideas from the IEEE 754 standard, by providing correct rounding and exceptions. We demonstrate how these strong semantics are achieved---with no significant slowdown with respect to other arbitrary-precision tools---and discuss a few applications where such a library can be useful.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Batut, C., Belabas, K., Bernardi, D., Cohen, H., and Olivier, M. 2000. User's Guide to PARI/GP. http://pari.math.u-bordeaux.fr/pub/pari/manuals/2.1.6/users.pdf.
 
2
Booker, A. R. 2005. Artin's conjecture, Turing's method and the Riemann hypothesis. http://www.arxiv.org/abs/math.NT/0507502. 37 pages.
 
3
Booker, A. R., Strömbergsson, A., and Venkatesh, A. 2006. Effective computation of Maass cusp forms. http://www.math.uu.se/~astrombe/papers/papers.html. Preprint. 29 pages.
4
 
5
Brent, R. P. 1981a. An idealist's view of semantics for integer and real types. Tech. Rep. TR-CS-81-14, Australian National University, 12 pp.
 
6
Brent, R. P. 1981b. MP user's guide. Tech. Rep. TR-CS-81-08, Australian National University. 4th ed. 73 pp.
 
7
Char, B. W., Geddes, K. O., Gonnet, G. H., Leong, B. L., Monagan, M. B., and Watt, S. M. 1991. Maple V: Language Reference Manual. Springer-Verlag.
8
9
 
10
Cowlishaw, M. 2005. The decNumber C library, 3.32 ed. IBM UK Laboratories. 55 pp.
 
11
Cuyt, A., Kuterna, P., Verdonk, B., and Vervloet, J. 2001. Arithmos: a reliable integrated computational environment. http://www.cant.ua.ac.be/arithmos/index.html.
 
12
 
13
Defour, D., Hanrot, G., Lefèvre, V., Muller, J.-M., Revol, N., and Zimmermann, P. 2004. Proposal for a standardization of mathematical function implementation in floating-point arithmetic. Numerical Algorithms 37, 1--4, 367--375.
 
14
Gay, D. M. 1990. Correctly rounded binary-decimal and decimal-binary conversions. Numerical Analysis Manuscript 90-10, AT&T Bell Laboratories.
 
15
 
16
Granlund, T. 2004. GNU MP: The GNU Multiple Precision Arithmetic Library, 4.1.4 ed. http://gmplib.org/.
 
17
Hack, M. 2004. On intermediate precision required for correctly-rounding decimal-to-binary floating-point conversion. In Proceedings of the 6th Conference Real Numbers and Computers (RNC'6). Schloss Dagstuhl, Germany.
 
18
Haible, B. and Kreckel, R. 2005. CLN, a class library for numbers. http://www.ginac.de/CLN/. Version 1.1.11.
 
19
Haible, B. and Papanikolaou, T. 1997. Fast multiprecision evaluation of series of rational numbers. Tech. Rep. TI-7/97, Darmstadt University of Technology.
 
20
Hanrot, G., Lefèvre, V., Pélissier, P., and Zimmermann, P. 2005. The MPFR library. http://www.mpfr.org/. Version 2.2.0.
 
21
Hull, T. E. 1978. Desirable floating-point arithmetic and elementary functions for numerical computation. In Proceedings of the 4th IEEE Symposium on Computer Arithmetic (Arith'4). 63--69.
 
22
IEEE. 1985. IEEE standard for binary floating-point arithmetic. ANSI/IEEE Std 754-1985.
 
23
Kahan, W. 1996. Lecture notes on the status of IEEE standard 754 for binary floating-point arithmetic. http://http.cs.berkeley.edu/~wkahan/ieee754status/ieee754.ps. 30 pp.
 
24
Krandick, W. and Johnson, J. R. 1993. Efficient multiprecision floating point multiplication with optimal directional rounding. In Proceedings of the 11th IEEE Symposium on Computer Arithmetic (Arith'11). Windsor, Ontario.
 
25
Kreinovich, V. and Rump, S. 2006. Towards optimal use of multi-precision arithmetic: A remark. http://www.ti3.tu-harburg.de/~rump/. 4 pp.
 
26
Lefèvre, V. 2004. The generic multiple-precision floating-point addition with exact rounding (as in the MPFR library). In Proceedings of 6th Conference on Real Numbers and Computers (RNC'6). Schloss Dagstuhl, Germany.
 
27
Mulders, T. 2000. On short multiplications and divisions. AAECC 11, 1, 69--88.
 
28
 
29
Müller, N. T. 1997. Towards a real RealRAM: a prototype using C++. In Proceedings of the 6th International Conference on Numerical Analysis. Plovdiv.
 
30
Nguyen, P. and Stehlé, D. 2005. Floating-point LLL revisited. In Proceedings of Eurocrypt 2005. Lecture Notes in Computer Science, vol. 3494. Springer-Verlag, 215--233.
 
31
Priest, D. M. 1991. Algorithms for arbitrary precision floating point arithmetic. In Proceedings of the 10th Symposium on Computer Arithmetic, P. Kornerup and D. Matula, Eds. IEEE Computer Society Press, Grenoble, France, 132--144.
 
32
Revol, N. and Rouillier, F. 2005. MPFI, a multiple precision interval arithmetic library based on MPFR. http://mpfi.gforge.inria.fr/.
 
33
Shoup, V. 2005. NTL: A library for doing number theory. http://www.shoup.net/ntl/. Version 5.4.
34
 
35
Sofroniou, M. and Spaletta, G. 2005. Precise numerical computation. Journal of Logic and Algebraic Programming. Special Issue on Practical Development of Exact Real Number Computation 64, 1, 113--134.
36
 
37
Steele, G. L. and White, J. L. 2003. How to print floating-point numbers accurately. In 20 Years of the ACM/SIGPLAN Conference on Programming Language Design and Implementation (1979--1999): A Selection. Retrospective. 3 pp.
 
38
Sun Microsystems. 2004. Libmcr 0.9 beta: A reference correctly-rounded library of basic double-precision transcendental elementary functions. http://www.sun.com/download/products.xml?id=41797765.
 
39
The Arenaire project. 2005. CR-Libm, a library of correctly rounded elementary functions in double-precision. http://lipforge.ens-lyon.fr/projects/crlibm/. Version 0.8.
40
 
41
42



REVIEW

"Wolfgang Schreiner : Reviewer"

Many computer programs in science and engineering depend on the accurate and efficient computation of continuous quantities represented as floating-point numbers. These numbers are stored as bit strings of fixed length that allow their implementat  more...

Collaborative Colleagues:
Laurent Fousse: colleagues
Guillaume Hanrot: colleagues
Vincent Lefèvre: colleagues
Patrick Pélissier: colleagues
Paul Zimmermann: colleagues