FLINT: Fast Library for Number Theory¶
Welcome to FLINT’s documentation! FLINT is a C library for doing number theory, maintained by William Hart.
- Source code on GitHub: https://github.com/wbhart/flint2
- Issue tracker: https://github.com/wbhart/flint2/issues
- Mailing list: https://groups.google.com/group/flint-devel
FLINT is free software distributed under the GNU Lesser General Public License (LGPL), version 2.1 or later.
General utilities¶
Integers¶
- ulong_extras.h – arithmetic and number-theoretic functions for single-word integers
- fmpz.h – integers
- fmpz_vec.h – vectors of integers
- fmpz_factor.h – integer factorisation
- fmpz_mat.h – matrices over the integers
- fmpz_lll.h – LLL reduction
- fmpz_poly.h – univariate polynomials over the integers
- fmpz_poly_mat.h – matrices of polynomials over the integers
- fmpz_poly_factor.h – factorisation of polynomials over the integers
- fmpz_mpoly.h – multivariate polynomials over the integers
- long_extras.h – support functions for signed word arithmetic
- longlong.h – support functions for multi-word arithmetic
- mpn_extras.h – support functions for limb arrays
- aprcl.h – APRCL primality testing
- arith.h – arithmetic and special functions
- fft.h – Schoenhage-Strassen FFT
- qsieve.h – Quadratic sieve
Rational numbers¶
- fmpq.h – rational numbers
- fmpq_vec.h – vectors over rational numbers
- fmpq_mat.h – matrices over the rational numbers
- fmpq_poly.h – univariate polynomials over the rational numbers
- fmpq_mpoly.h – multivariate polynomials over the rational numbers
- fmpz_poly_q.h – rational functions over the rational numbers
Integers mod n¶
- nmod_vec.h – vectors over integers mod n (word-size n)
- nmod_mat.h – matrices over integers mod n (word-size n)
- nmod_poly.h – univariate polynomials over integers mod n (word-size n)
- nmod_poly_mat.h – matrices of univariate polynomials over integers mod n (word-size n)
- nmod_poly_factor.h – factorisation of univariate polynomials over integers mod n (word-size n)
- nmod_mpoly.h – multivariate polynomials over integers mod n (word-size n)
- fmpz_mod_poly.h – polynomials over integers mod n
- fmpz_mod_poly_factor.h – factorisation of polynomials over integers mod n
Finite fields¶
- fq_nmod.h – finite fields (word-size characteristic)
- fq_nmod_vec.h – vectors over finite fields (word-size characteristic)
- fq_nmod_mat.h – matrices over finite fields (word-size characteristic)
- fq_nmod_poly.h – univariate polynomials over finite fields (word-size characteristic)
- fq_nmod_poly_factor.h – factorisation of univariate polynomials over finite fields (word-size characteristic)
- fq_zech.h – finite fields (Zech logarithm representation)
- fq_zech_vec.h – vectors over finite fields (Zech logarithm representation)
- fq_zech_mat.h – matrices over finite fields (Zech logarithm representation)
- fq_zech_poly.h – univariate polynomials over finite fields (Zech logarithm representation)
- fq_zech_poly_factor.h – factorisation of univariate polynomials over finite fields (Zech logarithm representation)
p-adic numbers¶
Floating-point support code¶
- double_extras.h – support functions for double arithmetic
- d_vec.h – double precision vectors
- d_mat.h – double precision matrices
- mpf_vec.h – vectors of MPF floating-point numbers
- mpf_mat.h – matrices of MPF floating-point numbers
- mpfr_vec.h – vectors of MPFR floating-point numbers
- mpfr_mat.h – matrices of MPFR floating-point numbers