Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
Class Library for Numbers
Free library for arbitrary precision arithmetic
  • Free and open-source software portal

Class Library for Numbers (CLN) is a free library for arbitrary precision arithmetic. It operates on signed integers, rational numbers, floating point numbers, complex numbers, modular numbers, and univariate polynomials. Its implementation programming language is C++.

We don't have any images related to Class Library for Numbers yet.
We don't have any YouTube videos related to Class Library for Numbers yet.
We don't have any PDF documents related to Class Library for Numbers yet.
We don't have any Books related to Class Library for Numbers yet.
We don't have any archived web articles related to Class Library for Numbers yet.

Details

CLN uses object oriented techniques and operator overloading to achieve a natural algebraic syntax: The sum x of two variables a and b is written as x = a + b, as opposed to the function sum(&xab).

CLN uses class inheritance to model the natural subsets of the available number types: E.g. the integer class is a subtype of the rational class, just as the integer numbers are a subset of the rational numbers. The complex numbers and all its subtypes behave exactly like the types of numbers known to the Common Lisp language, giving CLN another meaning: it becomes an abbreviation of Common Lisp Numbers. Due to this, CLN can be and is used for implementations of Common Lisp, other interpreted languages, or computer algebra systems.

The implementation is efficient. It can be configured to use the GNU Multi-Precision Library as kernel for speed-critical inner loops and implements advanced algorithms like Schönhage–Strassen multiplication, binary splitting1 for computing certain mathematical constants and others. All CLN objects are either immediate or reference counted, providing for non-interruptive garbage collection with no burden on the main application.

See also

References

  1. Haible, Bruno; Papanikolaou, Thomas (1998). "Fast multiprecision evaluation of series of rational numbers". In Buhler, Joe P. (ed.). Algorithmic Number Theory. Lecture Notes in Computer Science. Vol. 1423. pp. 338–350. doi:10.1007/BFb0054873. ISBN 978-3-540-69113-6. 978-3-540-69113-6