https://github.com/flintlib/flint
FLINT (Fast Library for Number Theory)
https://github.com/flintlib/flint
arbitrary-precision-arithmetic computer-algebra factorization linear-algebra number-theory polynomial-arithmetic
Last synced: about 1 month ago
JSON representation
FLINT (Fast Library for Number Theory)
- Host: GitHub
- URL: https://github.com/flintlib/flint
- Owner: flintlib
- License: lgpl-3.0
- Created: 2012-01-02T08:26:24.000Z (over 13 years ago)
- Default Branch: main
- Last Pushed: 2024-05-01T23:44:22.000Z (12 months ago)
- Last Synced: 2024-05-02T00:01:09.985Z (12 months ago)
- Topics: arbitrary-precision-arithmetic, computer-algebra, factorization, linear-algebra, number-theory, polynomial-arithmetic
- Language: C
- Homepage: http://www.flintlib.org
- Size: 72.3 MB
- Stars: 379
- Watchers: 18
- Forks: 230
- Open Issues: 237
-
Metadata Files:
- Readme: README.md
- License: COPYING
- Authors: AUTHORS
Awesome Lists containing this project
README
[](https://flintlib.org/doc/#)
[](https://github.com/flintlib/flint/actions/workflows/CI.yml)
[](https://codecov.io/gh/flintlib/flint)# FLINT (Fast Library for Number Theory)
Website: https://flintlib.org
Mailing list: https://groups.google.com/g/flint-devel
## Overview
FLINT is a C library in support of computations in number theory. It's also a
research project into algorithms in number theory. FLINT consists mainly of fast
scalar and polynomial arithmetic, factorization and linear algebra over many
basic rings (integers, rationals, reals, finite fields, number fields, p-adics).
It includes some higher-level functionality for algebraic and analytic number
theory.FLINT 2, released in 2011 was a complete rewrite of FLINT 1.x from scratch.
FLINT 3, released in 2023, incorporates the [Arb](https://arblib.org/),
[Antic](https://github.com/flintlib/antic),
[Calcium](https://fredrikj.net/calcium/) and
[Generic-Rings](https://github.com/fredrik-johansson/generic-rings) libraries,
formerly developed separately.## Documentation
For FLINT's online documentation, see https://flintlib.org/doc/.
## Building from source
This example assumes that [GMP](https://gmplib.org/), [MPFR](https://www.mpfr.org/)
and the [GNU build system](https://www.gnu.org/software/automake/manual/html_node/GNU-Build-System.html)
are already installed. To install them on a Ubuntu system, writeapt install libgmp-dev libmpfr-dev make autoconf libtool-bin
possibly with super-user privileges.
To download, bootstrap, configure and build everything, write
git clone https://github.com/flintlib/flint.git && cd flint
./bootstrap.sh
./configure # ./configure --help for more options
make
make check # optional
make install # optional
make examples # optional
cd doc && make html && cd .. # optional: documentationSee FLINT's documentation for further instructions on how to build FLINT.
## Authors
FLINT was started in 2007 by
[David Harvey](https://web.maths.unsw.edu.au/~davidharvey/) and
[William Hart](https://www.dpmms.cam.ac.uk/person/wh369). Maintenance was later
taken over solely by William Hart who remained in charge of the project
until 2022. A large number of authors have contributed to FLINT over the years;
for a complete list, see https://flintlib.org/authors.html or the `AUTHORS` file.The current maintainers are:
* [Fredrik Johansson](https://fredrikj.net/) ([email protected]) (project leader since 2022)
* [Albin Ahlbäck](https://albinahlback.gitlab.io/) ([email protected])## License
FLINT is distributed under LGPL (GNU Lesser General Public License) version 3 or
later. See the `COPYING.LESSER` and `COPYING` files.