Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of boost. Click here for the latest Boost documentation.

Using With NTL - a High-Precision Floating-Point Library

The special functions and tools in this library can be used with NTL::RR (an arbitrary precision number type), via the bindings in boost/math/bindings/rr.hpp. See also NTL: A Library for doing Number Theory by Victor Shoup

Unfortunately NTL::RR doesn't quite satisfy our conceptual requirements, so there is a very thin wrapper class boost::math::ntl::RR defined in boost/math/bindings/rr.hpp that you should use in place of NTL::RR. The class is intended to be a drop-in replacement for the "real" NTL::RR that adds some syntactic sugar to keep this library happy, plus some of the standard library functions not implemented in NTL.

Finally there is a high precision Lanczos approximation suitable for use with boost::math::ntl::RR, used at 1000-bit precision in libs/math/tools/ntl_rr_lanczos.hpp. The approximation has a theoretical precision of > 90 decimal digits, and an experimental precision of > 100 decimal digits. To use that approximation, just include that header before any of the special function headers (if you don't use it, you'll get a slower, but fully generic implementation for all of the gamma-like functions).