Global Information Lookup Global Information

GNU Multiple Precision Arithmetic Library information


GNU Multiple Precision Arithmetic Library
Developer(s)GNU Project
Initial release1991; 33 years ago (1991)[1]
Stable release
6.3.0[2] Edit this on Wikidata / 30 July 2023
Repositorygmplib.org/repo/
Written inC, (C++, assembly optionally)
TypeMathematical software
LicenseDual LGPLv3 and GPLv2[3]
Websitegmplib.org

GNU Multiple Precision Arithmetic Library (GMP) is a free library for arbitrary-precision arithmetic, operating on signed integers, rational numbers, and floating-point numbers.[3] There are no practical limits to the precision except the ones implied by the available memory (operands may be of up to 232−1 bits on 32-bit machines and 237 bits on 64-bit machines).[4][5] GMP has a rich set of functions, and the functions have a regular interface. The basic interface is for C, but wrappers exist for other languages, including Ada, C++, C#, Julia, .NET, OCaml, Perl, PHP, Python, R, Ruby, and Rust. Prior to 2008, Kaffe, a Java virtual machine, used GMP to support Java built-in arbitrary precision arithmetic.[6] Shortly after, GMP support was added to GNU Classpath.[7]

The main target applications of GMP are cryptography applications and research, Internet security applications, and computer algebra systems.

GMP aims to be faster than any other bignum library for all operand sizes. Some important factors in doing this are:

  • Full words are the basic type for all arithmetic.
  • Different algorithms are used for different operand sizes; algorithms which are more efficient with large numbers are not used when dealing with small numbers.
  • Assembly (specialized for different processors) are used in the most common inner loops to optimize them as much as possible.

The first GMP release was made in 1991. It is constantly developed and maintained.[8]

GMP is part of the GNU project (although its website being off gnu.org may cause confusion), and is distributed under the GNU Lesser General Public License (LGPL).

GMP is used for integer arithmetic in many computer algebra systems such as Mathematica[9] and Maple.[10] It is also used in the Computational Geometry Algorithms Library (CGAL).

GMP is needed to build the GNU Compiler Collection (GCC).[11]

  1. ^ "GNU MP archive". Retrieved 2018-12-03.
  2. ^ Torbjörn Granlund (30 July 2023). "GMP 6.3.0 released". Retrieved 30 July 2023.
  3. ^ a b "What is GMP?". Retrieved 2014-04-07.
  4. ^ Granlund, Torbjorn (2009-07-06). "Problems with mpz_set_str and huge strings". Retrieved 2013-03-17.
  5. ^ "GMP 6.0 News". Retrieved 2019-10-04.
  6. ^ Hughes, Andrew John (2008-02-28). "Removed GMP math?". Retrieved 2013-03-17.
  7. ^ "GNU Classpath 0.98 "Better Late Than Never"". 2009-02-05. Retrieved 2013-03-17.
  8. ^ "GNU MP Bignum Library". Retrieved 2018-12-03.
  9. ^ "The Mathematica Kernel: Issues in the Design and Implementation". October 2006. Retrieved 2013-03-17.
  10. ^ "The GNU Multiple Precision (GMP) Library". Maplesoft. Retrieved 2013-03-17.
  11. ^ GCC uses the GNU MPFR library, which in turn relies on GMP. "GCC 4.3 Release Series: Changes, New Features, and Fixes". 2012-11-02. Retrieved 2013-03-17.

and 18 Related for: GNU Multiple Precision Arithmetic Library information

Request time (Page generated in 0.8868 seconds.)

GNU Multiple Precision Arithmetic Library

Last Update:

GNU Multiple Precision Arithmetic Library (GMP) is a free library for arbitrary-precision arithmetic, operating on signed integers, rational numbers, and...

Word Count : 639

GNU MPFR

Last Update:

software portal The GNU Multiple Precision Floating-Point Reliable Library (GNU MPFR) is a GNU portable C library for arbitrary-precision binary floating-point...

Word Count : 472

Mersenne Twister

Last Update:

default as of 1.7) Linux libraries and software: GLib, GNU Multiple Precision Arithmetic Library, GNU Octave, GNU Scientific Library Other: Microsoft Excel...

Word Count : 3613

GMP

Last Update:

Minimum Pension, in UK occupational pensions GNU Multiple Precision Arithmetic Library, a software library Granulocyte-macrophage progenitor Guanosine...

Word Count : 260

Wolfram Mathematica

Last Update:

(version 5, 2003), and by adopting the GNU Multiple Precision Arithmetic Library to evaluate high-precision arithmetic. Version 5.2 (2005) added automatic...

Word Count : 1759

Rational data type

Last Update:

C & C++ there are projects like the GNU Multiple Precision Arithmetic Library. The Apache Commons Math library provides rational numbers for Java with...

Word Count : 815

Saturation arithmetic

Last Update:

Saturation arithmetic for integers has also been implemented in software for a number of programming languages including C, C++, such as the GNU Compiler...

Word Count : 1060

GNU Scientific Library

Last Update:

The GNU Scientific Library (or GSL) is a software library for numerical computations in applied mathematics and science. The GSL is written in C; wrappers...

Word Count : 871

Modular exponentiation

Last Update:

BC Math library has a bcpowmod() function [4] to perform modular exponentiation The GNU Multiple Precision Arithmetic Library (GMP) library contains...

Word Count : 2802

Extended precision

Last Update:

expressions on the base format. In contrast to extended precision, arbitrary-precision arithmetic refers to implementations of much larger numeric types...

Word Count : 4025

Motorola 68000

Last Update:

Granlund, Torbjörn (November 14, 2020). The GNU Multiple Precision Arithmetic Library (PDF) (Ed. 6.2.1 ed.). GNU Project. p. 13. Archived (PDF) from the original...

Word Count : 7221

Interval arithmetic

Last Update:

Ball arithmetic by Joris van der Hoeven kv - a C++ Library for Verified Numerical Computation kv on GitHub Arb - a C library for arbitrary-precision ball...

Word Count : 8153

Scientific notation

Last Update:

(f77), Intel Fortran, Compaq/Digital Visual Fortran, and GNU Fortran (gfortran) "Double Precision, REAL**16". DEC Fortran 77 Manual. Digital Equipment Corporation...

Word Count : 4802

Rounding

Last Update:

rounding to nearest only. This library uses up to 768 bits of working precision. It was included in the GNU C Library in 2001, but the "slow paths" (providing...

Word Count : 8286

NaN

Last Update:

"ArithmeticException (Java Platform SE 8)". docs.oracle.com. "Math::BigInt". perldoc.perl.org. Retrieved 12 June 2015. "Parsing of Floats (The GNU C...

Word Count : 3688

List of numerical libraries

Last Update:

Multi-Precision Library is a library for doing arbitrary-precision arithmetic. hypre (High Performance Preconditioners) is an open-source library of routines...

Word Count : 2595

Libgcrypt

Last Update:

fundamental cryptographic building blocks: Libgcrypt features its own multiple precision arithmetic implementation, with assembler implementations for a variety...

Word Count : 380

C data types

Last Update:

basic arithmetic types, such as integer and real number types, and syntax to build array and compound types. Headers for the C standard library, to be...

Word Count : 3253

PDF Search Engine © AllGlobal.net