My copy of FLINT -- please use https://github.com/wbhart/flint2/ for development
C C++ Python Makefile TeX Batchfile
Clone or download
Permalink
Failed to load latest commit information.
aprcl Merge branch 'trunk' of https://github.com/wbhart/flint2 into trunk Jul 23, 2016
arith Merge pull request #294 from isuruf/dll2 Oct 11, 2016
build.vc14 appveyor: remove ntl testing Apr 12, 2016
d_mat Remove traces, fix memory leaks, fix bug in d_mat_init, fix segfault. Oct 20, 2016
d_vec replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
doc Add test code and docs for sub_dddmmmsss and cleanup. Mar 2, 2017
double_extras replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
examples replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fft Fix a test function which got mangled by a prior commit. Feb 23, 2017
flintxx replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpq move doc of _fmpq_vec_init and _fmpq_vec_clear Aug 19, 2016
fmpq_mat empty matrix has denominator 1 May 19, 2017
fmpq_poly Fix bug in memory allocation of string for fmpq polynomials. Jul 21, 2017
fmpq_vec fixing minor issues Sep 7, 2016
fmpz fix fmpz_set_d_2exp Aug 4, 2017
fmpz_factor Add helper for factorization and fix indentation Jan 10, 2017
fmpz_lll Fix t-heuristic_dot. Feb 17, 2017
fmpz_mat fix memory leak in fmpz_mat_mul_strassen Aug 3, 2017
fmpz_mod_poly Add missing include. May 18, 2016
fmpz_mod_poly_factor Strengthen distinct degree tests. Feb 17, 2017
fmpz_mpoly Add empty test to prevent build system complaining. Mar 14, 2017
fmpz_poly Merge remote-tracking branch 'wbhart/trunk' into trunk Mar 3, 2017
fmpz_poly_factor One more helper Jan 16, 2017
fmpz_poly_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_poly_q replace GPL with LGPL in header of fmpz_poly_q/*; part of #244 Apr 26, 2016
fmpz_vec Add initial implementation of CLD bounds and all prerequisite functions. Oct 6, 2016
fq use (fast) resultant for norms in finite fields rather than slow Feb 21, 2017
fq_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_mat_templates replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_nmod Fix some compiler warnings. Mar 2, 2017
fq_nmod_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_nmod_poly Add mullow_univariate functions for fq_poly. Dec 1, 2016
fq_nmod_poly_factor replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_nmod_vec replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_poly Add mullow_univariate functions for fq_poly. Dec 1, 2016
fq_poly_factor replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_poly_factor_templates Fix factorization over finite fields Jan 12, 2017
fq_poly_templates Fix for fq_poly_divides. Apr 10, 2017
fq_templates replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_vec replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_vec_templates replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_poly replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_poly_factor replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_vec replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
interfaces replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
long_extras Fix function signature mismatch Nov 6, 2016
mpf_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpf_vec replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpfr_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpfr_vec replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpn_extras replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_mat Improve Howell form Aug 18, 2016
nmod_poly Add some missing flint_mallocs and flint_frees. Jul 23, 2016
nmod_poly_factor Strengthen distinct degree tests. Feb 17, 2017
nmod_poly_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_vec Merge branch 'trunk' into license3 Apr 28, 2016
padic replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
padic_mat replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
padic_poly replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
perm replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
profile replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
qadic Add more missing FLINT_DLL Nov 6, 2016
qsieve Fix bug found by Fredrik in qsieve. This is #313. Feb 1, 2017
test Add test code and docs for sub_dddmmmsss and cleanup. Mar 2, 2017
ulong_extras Add fmpz_is_perfect_power. Jan 9, 2017
.appveyor_msvc_build.cmd appveyor: comment out tests Apr 12, 2016
.appveyor_msys_build.sh Fix mpfr directory and bump mpir version 2.7.2. for appveyor Jul 25, 2017
.build_dependencies Fix mpfr directory and bump mpir version 2.7.2. for appveyor Jul 25, 2017
.build_dependencies.cmd Build static libraries as tests support only lib_flint Apr 12, 2016
.gitattributes Added gitattributes. Jan 17, 2011
.gitignore Add more missing FLINT_DLL Nov 6, 2016
.travis.yml Forgot some 2.7.0 -> 2.7.2 changes Jul 25, 2017
AUTHORS Update AUTHORS. Aug 5, 2016
INSTALL Added INSTALL file. Jan 16, 2011
LICENSE changed LICENSE file to contain LGPL 2.1, change README Apr 28, 2016
Makefile.in Initial implementation of hashmap (untested). Nov 19, 2016
Makefile.subdirs Switch from -std=c99 to -std=gnu99 for profile, to keep MinGW happy. Jul 31, 2015
NEWS Update NEWS. Aug 13, 2015
NTL-interface.h Remove NTL_CLIENT from NTL-interface.h Jun 1, 2016
README fix README Apr 28, 2016
appveyor.yml Forgot some 2.7.0 -> 2.7.2 changes Jul 25, 2017
aprcl.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
arith.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
arithxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
clz_tab.c change DLL build to use declspec annotations rather then a DEF file Aug 20, 2014
code_conventions.txt Added note about FLINT_DLL to code_conventions.txt. Aug 31, 2014
configure Separate sieve and C for openmp in qsieve. Introduce HAVE_OPENMP flag… Jan 21, 2017
d_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
d_vec.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
double_extras.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
exception.c First attempt at divexact_array. Mar 3, 2017
exception.h First attempt at divexact_array. Mar 3, 2017
fft.h Parallelise the FFT with openmp. Jan 24, 2017
fft_tuning32.in mpir -> gmp replacements May 7, 2013
fft_tuning64.in mpir -> gmp replacements May 7, 2013
flint.h Update version to 2.5.3 for arb. Mar 2, 2017
flint.supp Adds a suppression file "Invalid Read"s by __gmpn_copyi. Dec 28, 2011
flintxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpq.h move _fmpq_vec_init and _fmpq_vec_clear back to fmpq.h for compatibility Sep 1, 2016
fmpq_mat.h Add more missing FLINT_DLL Nov 6, 2016
fmpq_matxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpq_poly.h add const to some declarations Mar 5, 2017
fmpq_polyxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpq_vec.h Merge pull request #282 from videlec/num_real_roots_sturm Sep 7, 2016
fmpqxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz-conversions-gc.in Switched to using WORD/UWORD instead of L and UL. Oct 4, 2013
fmpz-conversions-reentrant.in Switched to using WORD/UWORD instead of L and UL. Oct 4, 2013
fmpz-conversions-single.in Switched to using WORD/UWORD instead of L and UL. Oct 4, 2013
fmpz.h Fix constness in fmpz_preinvn_init. Apr 10, 2017
fmpz_factor.h Add helper for factorization and fix indentation Jan 10, 2017
fmpz_factorxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_lll.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_mat.h Add more missing FLINT_DLL Nov 6, 2016
fmpz_matxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_mod_poly.h Merge branch 'trunk' into minpoly May 6, 2016
fmpz_mod_poly_factor.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_mod_poly_factorxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_mod_polyxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_mpoly.h First attempt at divexact_array. Mar 3, 2017
fmpz_poly.h remove_content_2exp and scale_2exp for fmpz_poly Jan 11, 2017
fmpz_poly_factor.h Speed up row removal and remove some unneeded includes and updated co… Oct 22, 2016
fmpz_poly_factorxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_poly_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_poly_matxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_poly_q.h Add more missing FLINT_DLL Nov 6, 2016
fmpz_poly_qxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_polyxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpz_vec.h Add initial implementation of CLD bounds and all prerequisite functions. Oct 6, 2016
fmpz_vecxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fmpzxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fprintf.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_mat_templates.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_nmod.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_nmod_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_nmod_poly.h Add bivariate-to-univariate multiplication for fq_poly. Dec 1, 2016
fq_nmod_poly_factor.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_nmod_vec.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_poly.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_poly_factor.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_poly_factor_templates.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_poly_templates.h Add mullow_univariate functions for fq_poly. Dec 1, 2016
fq_templates.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_vec.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_vec_templates.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_poly.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_poly_factor.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fq_zech_vec.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
fscanf.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
gmpcompat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
hashmap.c Fix bugs in hashmap implementation and commit files! Nov 23, 2016
hashmap.h Fix a problem for some C compilers. Mar 8, 2017
long_extras.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
longlong.h Add test code and docs for sub_dddmmmsss and cleanup. Mar 2, 2017
memory_manager.c Add a bunch of basic functions for mpoly and clean up a little. Sep 14, 2016
mpf_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpf_vec.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpfr_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpfr_vec.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
mpn_extras.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_mat.h Add more missing FLINT_DLL Nov 6, 2016
nmod_matxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_poly.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_poly_factor.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_poly_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_poly_matxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_polyxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_vec.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
nmod_vecxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
padic.h Add more missing FLINT_DLL Nov 6, 2016
padic_mat.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
padic_matxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
padic_poly.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
padic_polyxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
padicxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
perm.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
permxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
printf.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
profiler.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
profiler.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
qadic.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
qadicxx.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
qsieve.h Fix bug found by Fredrik in qsieve. This is #313. Feb 1, 2017
scanf.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
sprintf.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
sscanf.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
templates.h replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016
test_helpers.c Add more missing FLINT_DLL Nov 6, 2016
thread_support.c Add a bunch of basic functions for mpoly and clean up a little. Sep 14, 2016
todo.txt Added some stuff to todo Jul 12, 2015
ulong_extras.h Add n_is_perfect_power. Jan 8, 2017
version.c replace GPL with LGPL in header of *.c/h/cpp/txt files; part of #244 Apr 26, 2016

README

FLINT 2
=======

FLINT (Fast Library for Number Theory) is a C library in support of computations
in number theory. It's also a research project into algorithms in number theory.

FLINT 2 is a complete rewrite of the FLINT library from scratch. It includes
much cleaner code and in many cases much faster algorithms and implementations.

At this stage FLINT consists mainly of fast integer and polynomial 
arithmetic and linear algebra. In the future it is planned that FLINT will 
contain algorithms for algebraic number theory and other number theoretic
functionality.

William Hart -- 16 Jan 2011.

License
-------
This version is distributed under LGPL 2.1 (GNU Lesser General Public License).
See the LICENSE file.