Boost logo

Boost :

Subject: Re: [boost] Is there interest in e_float: Multiple-precision float and special functions?
From: Christopher Kormanyos (e_float_at_[hidden])
Date: 2011-06-02 05:10:24

Multiple-precision is precision larger than that available with float, double, long double, etc. A floating point representation has about 7 decimal digits of precision, double-precision has about 15. GCC's new __float128 has up to 34 decimal digits of precision. That sounds like a lot. But even still, many applications in science and engineering such as geology or compiler verification require even more digits such as 50, hundreds, thousands or even more. Multiple-precision provides this added precision. There are several multiple-precision packages already available such as GMP, MPFR, MPIR, etc. My e_float library is unique because it uses strong C++ semantics and style while maintaining a high level of C++ portability. I also offer a wide selection of special functions. You can get the ACM version of the code here: Or use this direct link: The code in the link has PDF documentation. The ACM version of the code is free. However, the ACM article is not free. I need to go to a library to get my own article. Any good university library will have subscriptions to all ACM publications. Regards, Chris. ________________________________ From: Edward Diener <eldiener_at_[hidden]> To: boost_at_[hidden] Sent: Thursday, June 2, 2011 12:06 AM Subject: Re: [boost] Is there interest in e_float: Multiple-precision float and special functions? On 6/1/2011 4:34 PM, Christopher Kormanyos wrote: > Is there interest in my e_float library for potential inclusion in boost? > > e_float is a portable C++ system for multiple-precision floating-point calculations and > calculations of special functions. What is multiple precision floating point and how does this differ from float, double, or long double ? > The e_float library supports 30 to 300 decimal digits > of precision. It has an extendable architecture featuring a uniform C++ mathematical layer > which can be used with any suitably prepared big-number back end such as GMP, MPFR, etc. > The e_float system implements many high precision special functions and extends some > of these to very large parameter ranges not available from other systems. > Interoperability with Microsoft's CLR, Python (via Boost.Python) and Mathematica > > are supported. The e_float library is well-tested and has high performance. > > Further details can be found in my original work published in the ACM: > Christopher Kormanyos, > "Algorithm 910: A Portable C++ Multiple-Precision System for Special-Function Calculations", > ACM Trans. Math. Soft. 37, 4, 2010, article 45. This does not help anybody since it is inaccessible. > > > > e_float is potentially suited for boost because: > >     * It provides a uniform, standardization-capable interface to multiple precision mathematics. >     * It has a sound mathematical foundation (published in the ACM). >     * It has been programmed from the ground up using modern C++ programming idioms. >     * It uses a layered architecture that hosts any number of big-number back ends. >     * It is highly portable, robust and durable. >     * It has a broad test suite developed in conjunction with code coverage analyses. >     * It is extendable. Additional functions, parameter ranges and test cases can be added. >     * It provides interfaces to very high level languages. Your library sounds interesting but perhaps you can explain it in relation to what C++ already has as far as floating point support. _______________________________________________ Unsubscribe & other changes:

Boost list run by bdawes at, gregod at, cpdaniel at, john at