Fast Library for Number Theory
Encyclopedia
The Fast Library for Number Theory (FLINT) is a highly optimized
C
library for number theory
applications. The two major areas of functionality currently implemented in FLINT are polynomial arithmetic
over the integers and a quadratic sieve
. The library is designed to be compiled with the GNU Multi-Precision Library (GMP)
and is released under the GNU General Public License
. It is developed by William Hart of the University of Warwick
and David Harvey of Harvard University
to address the speed limitations of the Pari
and NTL
libraries.
Optimization (computer science)
In computer science, program optimization or software optimization is the process of modifying a software system to make some aspect of it work more efficiently or use fewer resources...
C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
library for number theory
Number theory
Number theory is a branch of pure mathematics devoted primarily to the study of the integers. Number theorists study prime numbers as well...
applications. The two major areas of functionality currently implemented in FLINT are polynomial arithmetic
Polynomial arithmetic
Polynomial arithmetic includes basic mathematical operations such as addition, subtraction, and multiplication. These operations are defined naturally as if the variable x was an element of S. Division is defined similarly, but requires that S be a field. Examples of fields include rational...
over the integers and a quadratic sieve
Quadratic sieve
The quadratic sieve algorithm is a modern integer factorization algorithm and, in practice, the second fastest method known . It is still the fastest for integers under 100 decimal digits or so, and is considerably simpler than the number field sieve...
. The library is designed to be compiled with the GNU Multi-Precision Library (GMP)
GNU Multi-Precision Library
The GNU Multiple Precision Arithmetic Library, also known as GMP, is a free library for arbitrary-precision arithmetic, operating on signed integers, rational numbers, and floating point numbers...
and is released under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
. It is developed by William Hart of the University of Warwick
University of Warwick
The University of Warwick is a public research university located in Coventry, United Kingdom...
and David Harvey of Harvard University
Harvard University
Harvard University is a private Ivy League university located in Cambridge, Massachusetts, United States, established in 1636 by the Massachusetts legislature. Harvard is the oldest institution of higher learning in the United States and the first corporation chartered in the country...
to address the speed limitations of the Pari
PARI/GP
PARI/GP is a computer algebra system with the main aim of facilitating number theory computations. It is free software; versions 2.1.0 and higher are distributed under the GNU General Public License...
and NTL
Number Theory Library
NTL is a C++ library for doing number theory. NTL supports arbitrary length integer and arbitrary precision floating point arithmetic, finite fields, vectors, matrices, polynomials, lattice basis reduction and basic linear algebra. NTL is free software released under the GNU General Public License....
libraries.
Design Philosophy
- Asymptotically Fast Algorithms
- Implementations Fast as or Faster than Alternatives
- Written in Pure C
- Reliance on GMP
- Extensively Tested
- Extensively Profiled
- Support for Parallel Computation