List of arbitrary-precision arithmetic software

Last updated

This article lists libraries, applications, and other software which enable or support arbitrary-precision arithmetic.

Contents

Libraries

Package-library nameNumber typeLanguageLicense
Boost Multiprecision Library Integers, rationals, floats, and complex C++ and backends using GMP/MPFR Boost
TTMath Integers, floats C++ BSD
LibBF Integers, floats C MIT
BeeNum Integers, rationals C++ MIT
longer-int Integers C GPL
GNU Multi-Precision Library (and MPFR) Integers, rationals, and floats C and C++ with bindings LGPL
CLN Integers, rationals, floats, and complexC++ GPL
ARPREC Integers, floats, and complexC++ BSD-type
MAPM, MAPM Integers, decimal and complex floats C (bindings for C++) Freeware
MPIR (mathematics software) Integers, rationals, and floats C and C++ with bindings LGPL
CORE Integers, rationals, and floats C++ Freeware
LEDA Integers, rationals, and floats C++Proprietary [1]
CGAL Integers, rationals, and floats C++ LGPL
GeometricTools Integers and rationals C++ Boost
LibTomMath Integers C Public Domain or WTFPL (dual-licensed)
libgcrypt Integers CLGPL
OpenSSL Integers C Apache License 2.0 [2]
Arbitraire Floats C MIT License
mbed TLS Integers C Apache License 2.0 and GPL
JScience Integers, rationals, and floats Java BSD-type
JAS Integers, rationals, and complex numbersJava LGPL
Big-Math Integers, rationals, and complex numbersJava MIT
JLinAlg Decimals, rationals, and complex numbersJava LGPL
Apfloat Integers, rationals, floats, and complex numbersJava, C++ MIT License
MPArith Integers, rationals, floats, and complex numbers Pascal, Delphi Zlib
InfInt Integers C++ MPL
bigz Integers, rationals C (bindings for C++) BSD-type
C++ BigInt Class Integers C++ GPL
num Integers, rationals, and complex Rust Apache License 2.0
num7 Decimals C++ MIT
float Floats Rust Apache License 2.0
astro-float Floats Rust MIT
fgmp Integers C Public Domain
imath Integers, rationals ANSI C MIT
hebimath Integers, rationals, naturals, floats C (C99) MIT
bsdnt Integers, naturalsC BSD (2-clause)
integer-simple Integers Haskell BSD (3-clause)
bigints Integers Nim MIT
libzahl (WIP) Integers C ISC
decimal Decimals Go BSD (3-clause)
mpmath Floats and complex Python BSD
Computable Reals Computable Reals Common Lisp BSD (3-clause)
libmpdec and libmpdec++ Decimal floats C and C++ BSD (2-clause)
GEM Library Floats and complex numbers MATLAB and GNU Octave MPL
Bignums library Integers, rationals, floats, and complex Snap! Unknown
Hyper Integers, reals, floatsFor .NET Framework, written in VB.NET and ML64 assemblerNon-commercial use

Stand-alone application software

Software that supports arbitrary precision computations:

Languages

Programming languages that support arbitrary precision computations, either built-in, or in the standard library of the language:

Online calculators

For one-off calculations. Runs on server or in browser. No installation or compilation required.

References

  1. https://www.algorithmic-solutions.info/leda_manual/License_Terms_Availability.html
  2. "OpenSSL 3.0 Has Been Released!". OpenSSL Blog. Sep 7, 2021. Retrieved 2024-10-11.
  3. "BigInt". Can I use. Retrieved 2021-03-16.