[flint] annotated tag upstream/2.4.5 created (now 29d76c5)

Julien Puydt julien.puydt at laposte.net
Tue Feb 17 17:15:43 UTC 2015


This is an automated email from the git hooks/post-receive script.

jpuydt-guest pushed a change to annotated tag upstream/2.4.5
in repository flint.

        at  29d76c5   (tag)
   tagging  c577b3cb2c41a84ff8dacbd39b9e1dc5839c2ee6 (commit)
 tagged by  Julien Puydt
        on  Tue Feb 17 17:00:49 2015 +0100

- Log -----------------------------------------------------------------
Upstream version 2.4.5

Andres W. Goens Jokisch (41):
      First commit to fq
      Minor changes and indenting
      Added basic arithmetic for Fq, using qadic.
      Forgot one file
      Merge branch 'padic' of https://github.com/SPancratz/flint2 into fq
      Merge branch 'padic' of https://github.com/SPancratz/flint2 into fq
      added norm, frobenius. (small change: norm, trace return an fq_t as well, not a padic_t)
      Merge branch 'padic' of https://github.com/SPancratz/flint2 into fq
      corrected a few typos, tried to investigate a mistake in the tests to inv and mul
      fixed error where random non-well defined fq elements would be generated.
      added tests for frobenius, norm and trace
      added benchmarks for mul and inv
      cleanup, mainly on Bill's feedback
      draft .h file for fq_poly
      added fq_poly_change_ctx
      small change to signature of init2
      changed benchmarks so they would not take into acount the time taken to generate the random examples
      Basic fq_poly functionality. Compiles, but does not work yet.
      Merge branch 'padic' of https://github.com/SPancratz/flint2 into fq
      progress made on basic memory management. still not working though (->ctx comparison seems to be broken)
      t-add working now.
      minor fix on both ctx_equal functions.
      minor edit
      added documentation for fq_poly
      reverted changes to include context comparison in qadic, padic
      Merge branch 'padic' of https://github.com/SPancratz/flint2 into fq
      added substraction, negative including test and doc
      adds set and get coefficents for fq_poly
      corrects residual errors from ctx_equal
      small typo
      Merge branch 'fq' of https://github.com/SPancratz/flint2 into fq
      adds gcd
      adds documentation and test to gcd_euclidean, make_monic. make_monic not working now: segfault which traces back to a null pointer trying to be compared by fmpz_equal
      Merge branch 'fq' of https://github.com/SPancratz/flint2 into fq
      corrected profiling for fq
      Merge branch 'fq' of https://github.com/SPancratz/flint2 into fq
      fixed memory problem in make_monic
      fixes memory problem and inv. problem on gcd_euclidean. still not working though: (cannot find coprime polynomials)
      rewrote gcd_euclidean, now working
      fixed headers for replacements of long -> len_t
      updated replace_longs script for removing typo that forgot documentation

Andres Wilhelm Goens Joksich (19):
      Merge remote-tracking branch 'bill/trunk' into origin/fq
      updated makefiles in directories
      extended documentation
      added tests to fq_mul_ui, si and fmpz
      forgot one
      added test for hamming weight + fixed bug in hamming weight code
      mpz_likely_prime and mpn_tdiv_q adapted for gmp
      mpn_rrandom -> flint_mpn_rrandom, mpn_urandomb -> flint_mpn_urandomb, but still has a memory problem
      fixed memory problems on flint_mpn_urandomb
      documented replacement functions mpn_rrandom, mpn_urandomb, and mpn_tdiv_q
      just to save the script for replacing
      forgot headers
      forgot docs!
      last few changes to script. replacement ran: long -> len_t, still has to be changed on comments!
      finished long->len_t, it builds
      fixed comments
      changed conventions to reflect long -> len_t
      Merge remote-tracking branch 'bill/trunk' into mingw
      removed files added by the script

Andy Novocin (31):
      Added in fmpz_mat fread.c, test/t-print_read.c, doc string, header adjustment
      Improved the fmpz_poly_hensel.c example function
      Fixed minor typos in fmpz_poly_hensel.c
      added recursive checking to fmpz_poly_hensel.c
      Merge branch 'trunk' of git://github.com/SPancratz/flint2 into hensel_branch
      Merge branch 'trunk' of git://github.com/SPancratz/flint2 into hensel_branch
      added testing in fmpz_poly_hensel.c example
      adapted fmpz_poly_hensel.c to testing hensel_start code
      added squarefree factoring code to examples
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into hensel_branch
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into hensel_branch
      not working yet but working on zassenhaus
      complete up to getting to compile in examples zassenhaus
      Merge branch 'trunk' of git://github.com/SPancratz/flint2 into hensel_branch
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into hensel_branch
      Merge branch 'trunk' of git://github.com/SPancratz/flint2 into hensel_branch
      code compiles saving progress before porting to main areas
      zassenhaus now handles a nonmonic nontrivial example
      moved fmpz_poly_factor_squarefree to fmpz_poly_factor module
      added template of test function for squarefree factor
      made zassenhaus code compatible with ISO C90
      ported zassenhaus from examples into fmpz_poly_factor module, adjusted example files accordingly
      Merge branch 'trunk' of git://github.com/SPancratz/flint2 into hensel_branch
      Merge branch 'trunk' of git://github.com/SPancratz/flint2 into hensel_branch
      added zassenhaus.c
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into hensel_branch
      WARNING unflagged printfs inserted to zassenhaus and zassenhaus_recombination for bughunting
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into hensel_branch
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into hensel_branch
      Merge branch 'trunk' of git://github.com/SPancratz/flint2 into hensel_branch
      fixed the one hensel example

Curtis Bright (13):
      fix missing backslashes in Makefile.in
      remove unused variable
      fix bell_number_bsplit on n=0
      constant doesn't fit in signed long under 32 bit system
      ensure poly is not zero before making monic
      fix typo in mpn_gcd_full doc
      fix bit unpacking problem
      ensure poly is not zero before making monic
      fix typos
      make outer prime-finding loop actually useful
      include string.h for memset
      fix qsieve on 32-bit systems
      correctly handle 0^0

Dana Jacobsen (2):
      Allow large bases
      Rewrite n_is_prime and n_is_probabprime

Daniel Woodhouse (6):
      Copied Bill's makefile. SKIP THIS COMMIT.
      Merge commit 'origin/roadmap' into nmod_mpoly
      Added initialization, some memory management, and a random nmod_mpoly function to
      I have implemented the heap multiplication algorithm, given it a test
      Fixed a bug in nmod_mpoly_mul_heap, added CRT to fmpz and used
      I have updated the .txt files and I think I have added all the files I have modified.

François Bissey (1):
      Mac OS X fix: get a correct install_name for libflint.dylib

Fredrik Johansson (723):
      added implementation of Ramanujan tau function
      add an _fmpz_vec_sort function, just wrapping qsort
      add functions for computing the divisors and divisor sums of integers
      add n_nth_prime, n_nth_prime_bounds, n_prime_pi_bounds and refactor some code
      remove unused math.h references
      Merge commit '223b1b87868' into ulong
      fix ansi compliance
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into ulong
      Merge branch 'orm2' into ulong
      fix fmpz_set_si of LONG_MIN
      add mpn_extras module with preliminary factoring helper functions
      add preliminary fmpz factoring code to the arith module
      consistently use longs in the factoring code
      fix naming mpn_factor_* and add missing mpn_extras.h
      fix mpn_extras.txt
      update divisors, divisor_sigma, ramanujan_tau to permit fmpz instead of long
      use balanced product for divisor_sigma
      add n_euler_phi, n_moebius_mu, n_moebius_mu_vec arithmetic functions
      add n_is_squarefree function (missing from last commit)
      remove an unused variable
      Add fmpz_euler_phi, fmpz_moebius_mu plus helper function fmpz_abs_fits_ui.
      Asymptotically fast computation of harmonic numbers.
      add an fmpz_fac_ui function
      add an fmpz_fac_ui function
      add rudimentary fmpz_mat_mul (needed for a Stirling number test)
      implement arith functions for computation of Stirling numbers
      Merge remote branch 'sebastian/seb' into factor
      update arith tests
      Improvements to Stirling number functions.
      Merge remote branch 'sebastian/seb' into arith
      fmpz_mat linear algebra functions, initial checkin
      Improvements to fmpz_mat solving; added matrix inversion.
      avoid unnecessary allocation in _fmpz_mat_solve_fflu
      tidy fmpz_mat documentation
      fix parentheses in FLINT_REENTRANT macro
      create an nmod_mat module, with several multiplication algorithms
      some fmpz_mat bugfixes and more tests; add an fmpz_mat_equal() function
      improve and greatly simplify nmod_mat multiplication code; some more nmod_mat functions and tests
      Add n_nextprime (ported from flint1)
      Ported fmpz CRT function from FLINT 1
      fix a bug in fmpz_mat_solve_mat test code that prevented all cases from being tested
      fix a documentation typo
      Add nmod_mat solve/det/rank/inv functions and tests
      Add Strassen multiplication for nmod_mat (ported from FLINT 1)
      Implement multimodular multiplication for fmpz_mat matrices
      Automatic selection between fmpz_mat_mul_classical and fmpz_mat_mul_multi_mod; some code refinements
      some matrix code cleanup
      merge sebastian/seb
      minor fmpz_mat doc update
      Merge remote branch 'sebastian/seb' into matrix
      rename fmpz_mat_copy -> fmpz_mat_set
      add fmpz_mat_entry macro and update fmpz_mat documentation
      implement computation of vectors of Bernoulli numbers
      combine small factors to make bernoulli_vec faster for n < 1000
      fix missing include
      implement computation of Bernoulli polynomials
      include documentation for Bernoulli polynomials
      update todo.txt, organising into sections and adding several items for arith/nmod_mat/fmpz_mat
      add fmpz efficiency items to todo.txt
      add n_randprime (based on flint 1.6), n_randtest_prime and use for nmod_mat tests
      make n_nextprime raise an exception when no next prime exists
      replace remaining instances of n_nextprime with n_randtest_prime
      merge weirdness
      fix 32/64 bit limits in harmonic.c
      Merge remote branch 'sebastian/seb'
      initial checkin of an fmpq module
      add a bit of documentation
      fix _fmpq_reconstruct_fmpz not to return the opposite of what the documentation says it should
      fix some bugs and add tests for several fmpq functions
      fix bugs in fmpq_reconstruct_fmpz and write tests for the function
      add test and documentation entry for n_sizeinbase
      fix fmpz_mat_set and fmpz_mat_zero to operate on rows; add fmpz_mat_zero proto and tests
      add mpz style fmpz_fdiv_ui for computing remainder without setting result in an fmpz
      include fmpz_mat_set as promised in a previous commit
      add simple incremental fmpz CRT functions, with new test code
      Merge remote branch 'origin/master'
      implement multimodular fmpz_mat determinant computation
      add some helper functions to cleanup code
      make nmod_mat Gauss elimination faster for small moduli; fix fmpz_mat_det_multimod to take advantage of this
      faster two-limb unreduced nmod_mat Gaussian elimination; added some utility functions and extended matrix sizes in tests
      add example CRT programs and some more documentation in fmpz.txt
      make CRT example programs interactive
      fix printing
      simplify fmpz_multi_mod_ui and fix segmentation fault when input is larger than the product of moduli
      simplify fmpz multi mod and CRT interface
      add a todo item
      speed up backward/forward substitution in nmod_mat solving
      Implement computation of Bell numbers
      make test a bit more solid
      Add a function fmpz_bernoulli_denom for computing denominators of Bernoulli numbers
      Implement fmpz_bernoulli_vec_2 for faster computation of Bernoulli numbers using high-order multisection + fast floating-point canonicalisation
      trivial comment edit
      small fix
      add a function fmpz_mat_det_bound
      Update fmpz_mat_det_multi_mod to support a proven bound; otherwise require at least 100 bits of safety. Add documentation.
      small fix to allow docs to build
      fix example
      Cleanup and reorganise fmpz_mat_det functions; add profile code and enable automatic use of det_multi_mod
      Enhance _fmpz_mat_rowreduce to return the permutation order; tweak interface for several related functions
      Add fmpz_mat add/sub/neg functions
      Add fmpz_mat_unit for creating the unit/identity matrix
      Implement fmpz_mat_kernel for computing right kernel/nullspace
      Merge branch 'master' into fast_bernoulli
      Implement a function nmod_poly_integral
      Implement nmod_poly_log_series for logarithm series expansion
      merge
      fix fmpz_mat code accessing mat->entries (one case in solve_mat remaining)
      Add a function for computing factorials mod p
      small code simplification
      Implement vector computation of Euler numbers
      Merge branch 'master' into fast_bernoulli
      Implemented the zeta function algorithm for computing isolated Bernoulli numbers
      Implemented the zeta function algorithm for isolated Euler numbers
      implement multimodular vector bernoulli number computation
      Cleanup Bernoulli numbers and add profile code
      Implement Euler polynomials
      fix typo
      Implement Swinnerton-Dyer polynomials
      Implement fmpz_bin_uiui for binomial coefficients
      Implement fmpz_mul2_uiui and fmpz_divexact2_uiui
      Implement Legendre polynomials
      fix typo
      use fmpz_mul/divexact2_uiui in bernoulli_polynomial
      update todo.txt entries
      Avoid a temporary allocation in nmod_poly_inv_series_newton
      Implement nmod_poly_exp_series, using Newton iteration
      make nmod_poly_inv_series_newton more memory-efficient -- only need n temp limbs
      Avoid some redundant operations in nmod_poly_exp_series
      Include missing test file for nmod_poly_integral
      Implement multimodular algorithm for Bell numbers; rename Bell number functions
      Include files missing in last commit
      avoid division by zero in bell_number_size when n = 0
      fix and add tests for log_series_monomial_ui
      don't declare this function as static, since I may need to call it elsewhere...
      Add nmod_poly_exp_series_monomial_ui
      Implement a superfast basecase version of nmod_poly_exp_series
      speedup n_factorial_mod2_preinv for special cases
      Implement partition function p and Landau's function (vector versions)
      Implement sqrt_series and invsqrt_series for nmod_poly
      Add some todo items
      some nmod_poly.txt cleanup
      Implement an fmpq_poly_integral function
      Implement fmpq_poly_log_series
      Implement asin, asinh, atan, atanh for nmod_poly
      Implement sin, cos, tan series for nmod_poly
      Implement cosh, sinh, tanh series for nmod_poly
      use left-to-right exponentiation in Euler product (slight speedup of Bernoulli and Euler numbers)
      Implement exp_series for fmpq_polys
      Implement atan series for fmpq_poly
      Improve efficiency of nmod_poly invsqrt_series and tan_series
      Implement sqrt and invsqrt series for fmpq_poly
      Implement asin, asinh, atanh series for fmpq_poly
      fix memory leak in fmpq_poly_exp_series
      Implement fmpq_poly_tan_series
      Implement cos, sin series for fmpq_poly
      Implement sinh, cosh, tanh series for fmpq_poly
      Fix warnings (unused variables, missing include, one type error)
      possible workaround for mpn_divisible_1_p
      fix several valgrind-reported issues
      oops, forgot to switch off debug mul_classical
      fix for nmod_poly_log_series too
      fix more valgrind reported issues
      fix memory leak in det_multi_mod and several more minor issues detected by valgrind
      fix one 32-bit issue and more valgrind complaints
      merge from master
      merge from master
      experimental new fmpq_mat module
      add fmpq randbits methods
      fmpq_mat inv, solve_mat, and tests
      Implement fmpq_mat_rref
      Add lots of fmpz_mat utility functions
      Implement fmpz_mat_solve_bound for bounding solutions of nonsingular systems
      Implement Dixon's p-adic algorithm and fast matrix rational reconstruction for nonsingular fmpz_mat solving (initial code)
      Add fmpq module documentation; also add fmpq_inv with tests
      fmpq_mat_get_fmpz_mat_rowwise: allow den to be NULL
      remove spurious copyright lines
      fmpq_mat solve tweaks; provide separate 'dixon' and 'fraction_free' versions
      slightly speed up nmod_mat arithmetic with a full limb modulus by adding an add_sssaaaaaa macro to longlong.h (warning: not tested on 32-bit)
      Use fmpq type for Bernoulli number and harmonic number functions; some function renaming
      rename Stirling number functions
      add stirling_matrix example program
      Add some more fmpq_mat utility functions; documentation for fmpq and fmpq_mat modules
      add some introductory text about fmpq and fmpq_mat to the docs
      speed up fmpq_mul
      faster fmpq add, sub, addmul, addsub; improve fmpq_randtest to generate more special values (needs more work)
      slightly faster fmpq_mat 2x2 inverse
      fix memory leak and add tests for fmpz_mat_scalar_mod_fmpz
      make fmpz_mat_solve_dixon able to recognise singular matrices; add function to documentation
      minor efficiency tweak in fmpz_CRT_ui
      add a convenience function fmpz_set_ui_mod
      make fmpz_mat_set_nmod_mat consistent with the fmpz function by setting a signed value; add separate fmpz_mat_set_nmod_mat_unsigned
      add doc
      add fmpz_poly_get/set_nmod_poly methods
      implement CRT_ui for fmpz_polys
      add CRT_ui functions for fmpz_mat
      inline fmpz neg, set_si, set_ui
      rm unused variables
      constify _fmpq_print
      add fmpq_div; tune fmpq_set_si
      add fmpq_mat set, zero
      add generation of Hilbert matrices
      add fmpq_mat_rref_classical (obviously slow, intended for testing purposes only)
      fix and add tests for fmpq_div
      debug and add tests for fmpq_mat_rref functions
      fix major fmpq_mat memory leak...
      Merge branch 'master' of http://selmer.warwick.ac.uk/flint2
      fmpq_mat documentation edits; some code refactoring
      use fmpq_mat_rref_classical for dim <= 2
      (implement an inlined version of fmpz_mat_mul_classical todo: docs, use in fmpz_mat_mul)
      fmpz_mat_mul tuning
      add fmpz_mat_rref_fraction_free; some renaming and tweaking of utility functions
      small doc clarification
      implement Calkin-Wilf tree enumeration of the rationals for the fmpq type
      minor tidying
      provide fmpq_mat_solve functions with success return values and test them; fix some function signatures
      some TODO updates
      impl fmpq_height, _height_bits, enumeration in height order
      fix ulong_extras.txt
      add missing fmpq doc entries
      minor doc tweak
      add return code for fmpq_mat_inv; update tests and docs
      typos
      merge from sebastian
      merge from sebastian
      Merge remote branch 'sebastian/seb'
      Merge remote branch 'sebastian/seb'
      fix fmpz_poly_gcd_heuristic bug for length == 2 case
      initial checkin of an fmpz_poly_mat module (many tests and docs needed)
      experimental KS fmpz_poly_mat multiplication code (currently broken, at least in the signed case)
      fix non-underscore versions of fmpz_poly_bit_pack functions, and add tests+docs
      fix and add tests for mul_KS; automatically use it for large matrices
      add todo items
      add evaluate_fmpz and several basic tests for fmpz_poly_mat
      add docs for fmpz_poly_mat module
      Merge remote branch 'origin/master'
      Merge remote branch 'sebastian/seb'
      Merge remote branch 'sebastian/seb'
      add _fmpz_poly_CRT_ui_precomp, and document both CRT functions
      Add fmpz_lcm
      add _fmpz_vec_lcm
      Add fmpz_poly multipoint interpolation and evaluation (naive algorithms only)
      update todo.txt
      Add fmpq_poly_interpolate_fmpz_vec, and move implementation to the fmpq_poly module
      Add fmpz_poly_mat_det_interpolate, and some todo items
      merge from master
      tidy code for fmpq_mat_get_fmpz_mat_ functions
      rename _mat_unit functions to _mat_one for consistency
      add missing Makefile for fmpz_poly_mat
      fix an fmpz variable not being inited/cleared in a test
      update doc version number and date; add fmpz_poly_mat intro
      better doc introduction for fmpq
      fix a typo
      fix swallowed documentation sections, and add _fmpz_vec_lcm entry
      add _nmod_vec_dot_bound_limbs
      add nmod_mat_solve_tril (fast recursive lower triangular solving), and a randtril function
      add _nmod_vec_dot functions
      use _nmod_vec_dot in nmod_mat multiplication; cleanup code and fix stupid slowness in solve_tril
      add nmod_mat_solve_triu
      add nmod_mat_addmul and nmod_mat_submul, plus some bugfixes
      improve introduction for the nmod_mat_t module in the manual
      new in-progress nmod_mat LU decomposition (cleaner code, handling arbitrary rank)
      implement asymptotically fast nmod_mat LU decomposition (not used by anything yet)
      use nmod_mat_lu for nmod_mat_det; various bugfixes
      add nmod_mat_zero, nmod_mat_rref, nmod_mat_nullspace
      remove commented out code and notes
      update nmod_mat_rank to use new LU decomposition
      use nmod_mat_lu for solve, solve_mat and inv; some fixing
      nuke the old nmod_mat_rowreduce functions
      update nmod_mat/doc/nmod_mat.txt
      afford a slightly larger modulus in fmpz_mat_solve_dixon (todo: move this computation to a function nmod_mat or whatever)
      remove obsolte file solve_lu_precomp.c
      tidy nmod_mat.txt
      make nmod_mat_rref faster
      factor out nmod_mat optimal modulus
      add Sebastian's perm module
      add _perm_parity to the perm module and use it in various functions
      fix an uninitialized variable
      rm unused file pivot.c
      add perm tests
      fix function signature
      add fmpz_mat_det_divisor for heuristically computing divisor of det(A)
      Faster modular fmpz_mat determinant computation using the lcm trick
      fix typo
      update some todo items
      improve fmpz_mat_solve_dixon to use multimodular multiplication
      rewrite fmpq_reconstruct_fmpz to be cleaner, faster, and allow custom N, D bounds (functions to be renamed)
      use the normal addmul function in nmod_mat_mul_strassen
      rename nmod_mat_solve, solve_mat -> solve_vec, solve
      add nmod_mat neg, scalar_mul, and fix bug with m x 0 x n matrix multiplication
      fix n x 0 x m mul bug also in fmpz_mat, fmpq_mat and fmpz_poly_mat modules
      make functions in perm.h __inline__ to avoid gcc warnings
      a much faster fmpz_poly_interpolate_fmpz_vec
      tweak fmpz_poly_interpolate_fmpz_vec and strengthen tests
      add nmod_poly_evaluate_nmod_vec and nmod_poly_interpolate_nmod_vec
      add todo items
      add nmod_poly_product_roots_nmod_vec
      implement nmod_poly_div_root for fast division by (x-c)
      add barycentric version of nmod_poly interpolation (usually faster); some tweaking and renaming
      add fmpz_poly_div_root
      use _fmpz_poly_div_root to speed up fmpq_poly_interpolate_fmpz_vec
      simplify modular determinant bound
      fix too large allocation
      add fmpz_cmp_si, and fix 0 not being tested(?) in t-fmpz_cmp_ui
      add some missing functionality (WARNING: TESTS/DOCS MISSING)
      add missing makefile
      Implement power series composition for fmpz_polys
      Implement fmpz_poly compositional inverse (Lagrange and Newton)
      Implemented power series composition for nmod_poly
      some code tidying
      add citation for Brent-Kung
      add nmod_poly series reversion; some doc updates
      Implement power series composition for fmpq_poly
      add NMOD_VEC_DOT as a macro
      new algorithm for nmod_poly series reversion (fast Lagrange); also speed up Newton
      rename nmod_poly functions compinv_series -> reverse_series, etc
      revise fmpz_poly power series reversion functions
      fix small doc error
      Implement fmpq_poly power reversion algorithms (Lagrange, fast Lagrange, Newton)
      add fmpq_poly_reverse_series; handle integer cases efficiently
      document fmpq_poly reversion functions
      fix some typos in fmpq.txt
      merge from Sebastian
      fix whitespace and a compiler warning in factor_lehman.c
      update todo
      use fast Lagrange by default in fmpq_poly_reverse_series
      more todo items
      add _fmpz_vec_height and fmpz_poly_height
      Implement computation of cyclotomic polynomials
      fix too many coefficients being written
      latex fix
      Implemented computation of Dedekind sums
      add a todo item
      Fast computation of the partition function p(n) (finally\!)
      Use Knuth's algorithm for faster Dedekind sums; some small changes
      Various improvements to partition counting
      rename partition_function_vec -> number_of_...
      speed up partition function by factoring the exponential sums
      remove a file that shouldn't be there
      update documentation
      further speed up and tidy partitions code
      speed up p(n) for small n; fix a potential 32-bit overflow
      Add Chebyshev polynomials T_n(x), U_n(x)
      Implement computation of the minimal polynomial of cos(2pi/n)
      add lookup table to speed up cosine minpoly for n <= 58
      use fast formula for minpoly of cos(2*pi/p), p prime
      speed up p(n) using mpfr_root for exp(x/k), and Newton iteration for cos(pi*p/q)
      add Chudnovsky algorithm for pi (original code by Hanhong Xue); some changes to p(n)
      Merge remote-tracking branch 'origin/trunk' into trunk
      Add nmod_poly_mulmod
      add nmod_poly_powmod functions
      Make calls to gmp_randinit lazy to speed up flint_randinit/clear when not used
      make ulong_extras random functions use the state instead of globals
      first commit of CZ nmod_poly factorisation ported from flint1 (many functions don't have tests yet)
      add nmod_poly_factor_berlekamp
      add nmod_poly_is_squarefree; some fixes
      add nmod_poly_factor_squarefree
      add test code for is_irreducible
      Add top-level factoring routine based on Berlekamp
      add nmod_poly deflation/deflate/inflate functions
      top level nmod_poly_factor, using sqf+deflation
      some todo items
      add fmpz_bin_uiui prototype
      Merge remote-tracking branch 'origin/trunk' into trunk
      large update of fmpz_poly_mat (inv, rank, rref, nullspace, enhancements); needs some cleanup
      add fmpz_fib_ui
      update fmpz_poly_mat documentation
      add fmpz_poly_mat sqr, pow functions
      add fmpz_poly_mat_prod (balanced product)
      fix a typo
      fix some todo entries
      minor cleanup of partition function, and a better precision bound
      update n_clog, n_flog, n_sizeinbase to avoid division
      faster fmpz_flog/clog; add fmpz_dlog (double precision natural logarithm)
      fix two doc typos
      add fmpz_val2, fmpq_mul_2exp, fmpq_div_2exp
      add fmpq_poly_evaluate_fmpq; rename underscore function to match
      add continued fraction expansion to the fmpq module
      add fmpq_set_cfrac
      doc update
      add an nmod_poly_mat module
      add nmod_poly_mat KS multiplication; tweak the corresponding fmpz_poly_mat code
      implement generic binary splitting for series of rational numbers, plus code for computing Euler's constant with it
      implement asymptotically fast zeta(n)
      add fmpz_cdiv/tdiv_q_2exp
      add partitions example program
      add _fmpz_vec_sum, _fmpz_vec_prod
      Merge branch 'trunk' of github.com:fredrik-johansson/flint2 into trunk
      move fmpz_factor functions to a new module; some tweaks
      faster version of _fmpz_vec_max_bits
      tidy fmpz_mat module (clean up function names and interfaces)
      fix returns in det_interpolate; rename a variable
      remove copypaste leftover
      add fmpz_get/set_d
      use fmpz_set_d to fix potential 32-bit problem in dedekind_sum
      some todo.txt housekeeping
      fix two includes
      update code for Bell numbers
      update fmpz_fdiv_r
      rename reverse_series -> revert_series
      fix two copyrights
      fix remaining reverse -> revert files
      rename fmpz_mat kernel -> nullspace
      rename fmpz_mat_kernel -> fmpz_mat_nullspace (for real)
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      add placeholder nmod_poly_rem
      add nmod_poly modular composition (classical and Brent-Kung)
      add fmpz_is_square
      add function for computing the number of sum of squares representations of a number
      small test fix
      Merge remote-tracking branch 'origin/trunk' into trunk
      Merge remote-tracking branch 'origin/trunk' into trunk
      Merge remote-tracking branch 'origin/trunk' into trunk
      Merge remote-tracking branch 'origin/trunk' into trunk
      fix a documentation typo
      add fmpz_poly_mat truncate, mullow, sqrlow, pow_trunc
      add fmpz_mat multi CRT/mod functions
      add trace matrix functions
      use a sign flag instead of separate signed/unsigned versions for CRT functions
      Merge remote-tracking branch 'origin/trunk' into trunk
      fix bernoulli numbers
      Merge remote-tracking branch 'origin/trunk' into trunk
      Merge pull request #2 from mmklee/flint_small_bug_fix
      add custom memory allocation functions and use throughout flint
      fix memory error in test for n_sizeinbase
      fix memory access bug in fmpz_mat_solve with empty matrix
      add qsieve to build dirs (accidentally deleted?)
      fix memory leaks in fft test code
      fix two memory leaks in fmpz_mat test code
      fix missing init/clears in fmpz_vec tests
      fix a memory leak in the fmpq module test code
      fix uninitialised variable in test for mpq_init_set_readonly
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      fix memory leaks in pow_addchains
      fix another test leak
      fix another small test memory leak
      fix uninitialised memory in fmpz_init_set_readonly
      fix a length 0 bug in bell numbers
      fix memory leaks in fmpq_poly tests
      fix more test code memory leaks
      free memory in qsieve test
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      fix memory leaks in gcd_modular and gcd_heuristic
      fix another test code leak
      some small documentation fixes
      merge from Sebastian
      consistently use (-n/2,n/2] instead of [-n/2,n/2)
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      remove unused fmpz CRT functions
      fix memory leak in the padic module
      add fmpz_poly Newton basis conversion functions
      minor tidying
      implement fast Taylor shift code
      add fast Taylor shift
      Merge branch 'conversion' of github.com:fredrik-johansson/flint2 into conversion
      add fast multipoint evaluation and interpolation for nmod_poly (working, but needs integration)
      improve multipoint evaluation for small lengths
      add fmpz_rfac_ui and fmpz_rfac_uiui
      minor tweak
      enable fast eval/interpolation algorithms by default; add documentation
      Merge branch 'conversion' into trunk
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      two fixes in the padic module
      add a first (quadratic) implementation of fmpz_poly_sqrt
      fix n_sqrtmod to work with x > LONG_MAX
      add nmod_poly_sqrt
      avoid signed n_jacobi argument in another place
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      Merge pull request #3 from curtisbright/trunk
      improve nmod_mat_mul for tiny moduli by packing entries
      Merge remote-tracking branch 'github/trunk' into trunk
      bugfix for last commit
      add mul_interpolate and sqr_interpolate for nmod_poly_mat
      some changes to todo.txt
      fast factorial computation mod p
      fix n >= p case in n_factorial
      fix potential overflow in square root code mod p^k
      add fmpz_mul_tdiv_q_2exp
      add fmpz_poly scalar mul_2exp, fdiv_2exp, tdiv_2exp
      fix n >= p case in n_factorial
      fix potential overflow in square root code mod p^k
      add fmpz_mul_tdiv_q_2exp
      add fmpz_poly scalar mul_2exp, fdiv_2exp, tdiv_2exp
      Merge pull request #4 from TomMD/trunk
      fix C++ style comments
      optimize _fmpz_vec_height
      add two utility functions fmpz_abs_lbound/ubound_ui_2exp
      Merge pull request #7 from lina-kulakova/trunk
      use a simpler and more precise bound for the term magnitude in number_of_partitions
      fix fallback version of add_sssaaaaaa
      fix the factorial_fast_mod2_preinv test
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      fix a couple of unused variable warnings
      use mpn_zero instead of memset
      Merge branch 'trunk' into merge16
      Merge branch 'trunk' of https://github.com/GaloisInc/flint2 into merge16
      possible fix for popcnt config
      the return value should probably be inverted
      Merge pull request #9 from GaloisInc/trunk
      add fmpq_cmp
      add a couple of functions needed by sage (need docs/improving)
      Merge pull request #10 from GaloisInc/trunk
      fix nmod_poly_xgcd for len = 1, and fix a memory leak in xgcd_euclidean
      Merge branch 'trunk' of github.com:fredrik-johansson/flint2 into trunk
      fix an accident in a previous commit
      fix warnings for unused variables
      fix corner case in powmod and powmod2
      fix test failure for fmpz_poly_mulhigh_karatsuba_n
      fix test failure for nmod_poly mulhigh_classical
      fmpz_poly_sqrt_classical: call the right function
      Merge remote branch 'spancratz/trunk' into trunk
      propagate bugfix for xgcd_euclidean to xgcd and xgcd_hgcd
      Merge remote branch 'origin/trunk' into trunk
      tests and docs for fmpz_poly_scalar_*_mpz function
      experimental alternative version of _fmpz_cleanup, allowing fmpz_clear to be called afterwards
      include prototype
      make randtest methods produce sparse polys; fix nmod_poly_mulhigh (again)
      add test code for fmpz_poly_set/get_coeff_mpz
      add tests for fmpq_poly_scalar_div/mul_mpz
      harden nmod_poly_xgcd tests to cover previously fixed bug
      introduce a test iteration multiplier and enable it in the fmpz_poly module
      enable test iteration multiplier for a few more modules
      add fmpz_poly_equal_fmpz and fix the fmpz_poly_xgcd test for output = 0
      give functions in the arith module an arith_ prefix
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      fix bug in fmpz_sqrtmod
      fix test failure in print/read_pretty
      prefer classical multiplication when one polynomial is short
      improve algorithm selection for fmpz_poly_gcd
      use len2 or n in mullow cutoff
      fix t-print_read_pretty some more (var also won't be read if len = 1)
      fix a subtle bug in fmpz_bit_unpack causing corruption of fmpz_unused_arr
      fix definition of _padic_log_balanced
      fix a 32-bit warning
      relax error count in t-is_probabprime_fermat
      fix test for cyclotomic_polynomial
      Merge remote branch 'wbhart/trunk' into trunk
      fix sign normalisation issue in gcd_modular
      speed up fmpq_poly get/set_coeff tests
      reindent and slightly clean up gcd_modular
      try dividing by the shorter polynomial first
      make unbalanced divisions nonrecursive in fmpz_poly_divrem
      move two incorrectly named files
      make _fmpz_poly_div_divconquer nonrecursive in the unbalanced case
      add a comment
      fix quadratic memory usage and stack overflow in nmod_poly_div_divconquer
      make unbalanced case in nmod_poly_divrem_divconquer iterative
      lower cutoff for fmpz_poly_rem_basecase
      enable test multiplier in the fmpz module
      enable test multiplier in the fmpz_vec module; fix one memleak
      fix some valgrind complaints about the test code
      insert a missing _fmpz_cleanup()
      fix a silly test memory leak
      fix a memory leak in fmpz_mod_poly_divrem_f
      fix another small test memory leak
      fix some latex errors
      Merge remote branch 'wbhart/trunk' into trunk
      make fmpz_poly_pseudo_divrem not always use the basecase algorithm
      Merge remote branch 'origin/trunk' into trunk
      add entries for 2.3 to NEWS
      add n_powmod_ui variants and use everywhere; fixing a bug in fmpz_powm_ui
      fix aliasing bug in fmpz_poly_pseudo_rem
      avoid recursion in fmpz_mod_poly_divrem_divconquer
      disallow LONG_MIN in sdiv_qrnnd test
      enable multiplier in ulong_extras tests
      fix(?) a bug in factor_lehman
      fix non-invertible length-0 case in gcd_euclidean_f
      fix segfault in fmpz_mod_poly_radix due to degR not being set
      fix some whitespace issues
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      fix markup problems in fft.txt
      speed up nmod_mat_mul with modulus barely <= 2^(FLINT_BITS/2)
      update the nmod_mat documentation
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      use C++-safe malloc casts in perm.h
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      Merge remote-tracking branch 'github/trunk' into trunk
      fix bug in nmod_mat_rref and add test code
      remove perm parameter from rref functions
      Merge remote-tracking branch 'origin/trunk' into trunk
      fix t-rref
      test larger matrices
      Merge remote-tracking branch 'github/trunk' into trunk
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      fix nmod_mat_transpose
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      fix a prototype
      Merge remote-tracking branch 'origin/trunk' into trunk
      add fmpz_tdiv_qr
      Merge remote-tracking branch 'github/trunk' into trunk
      Merge remote-tracking branch 'lina/trunk' into trunk
      slight cleanup of nmod_poly_exp_series, and fix a valgrind complaint
      make return value from solve_cramer with empty rhs consistent with the other functions
      free mpz's with huge allocated space, to avoid wasting memory
      add fmpz_poly_bound_roots for bounding the magnitude of the roots
      Merge remote branch 'origin/trunk' into trunk
      a new double_extras module, with a fast Lambert W function
      add fmpz_mat_sqr and fmpz_mat_pow
      use faster algorithm for fmpz_mat_rref, and improve test code
      improve rref for fmpz_poly_mat, nmod_poly_mat
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      fix makefiles in new modules
      Merge remote-tracking branch 'github/trunk' into trunk
      fix potential parenthesis issue with FLINT_ABS
      increase working precision in bernoulli_number_zeta
      new code for generating primes
      add ability to jump with prime iterator
      add primegen example program
      add option to just count the primes
      update todo.txt
      merge
      add fmpz_neg_ui, fmpz_set_uiui, fmpz_neg_uiui, and improve fmpz_mul_ui etc
      add missing fmpz_inits
      Merge remote-tracking branch 'github/trunk' into trunk
      make fmpz single implementation threadsafe
      Merge remote-tracking branch 'github/trunk' into trunk
      add configure test for __thread support, and flag to disable it
      Merge pull request #11 from argriffing/patch-1
      change exponent type in fmpz_factor from fmpz to ulong
      add n_gcd_full which takes operand in either order
      fix warnings
      fix warning about un-parenthesised && within ||
      fix another warning
      add nmod_inv, nmod_pow_ui for consistency
      silence a few more warnings
      improve test code and fix a potential bug in fmpz_poly_mat_mul_KS (no known failure though)
      fix issue with fmpz_jacobi
      propagate fmpz_poly_mat_mul_KS bugfix to sqr_KS
      fix warnings
      kill warning about string literal length
      fix bug in fmpq_set_si and add test
      mpir -> gmp replacements
      fix gmp incompatibility
      alises for mpn_neg_n/mpn_neg, mpn_com_n/mpn_com for gmp compatibility
      add flint_mpn_mulmod_2expp1_basecase (taken from MPIR)
      use mpn_tdiv_qr as fallback for mpn_tdiv_q
      allow fmpz/test/t-jacobi.c to run with gmp
      update documentation to mention GMP
      remove empty files
      add fallback for mpn_sumdiff_n
      Baillie is spelled Baillie
      remove an empty test file
      fix off-by-one error in is_prime_pseudosquare when flint_primes has not been computed previously
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      Merge remote-tracking branch 'jpflori/build_system' into trunk
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      document fmpz_factor_si
      threadsafe replacement for flint_primes (work in progress)
      documentation
      promote Martin Lee to 'significant contributor'
      change cutoffs for nmod_poly_factor: KS now usually wins, except for small degrees where CZ is still fastest
      fix fmpz_is_prime_pseudosquare on 32 bit
      cleanup / consistency fixes for the fmpq module
      cleanup / fix consistency for the fmpz_mat module
      cleanup / fix consistency for fmpq_mat
      cleanup / fix consistency in arith module
      Merge remote branch 'tom/gsoc-doc' into trunk
      Merge remote branch 'tom/is_squarefree' into trunk
      make is_squarefree an fmpz_poly method; slightly simplify it
      document fmpq_poly_reverse
      add flint_cleanup(), flint_register_cleanup_function(); use instead of _fmpz_cleanup() in test files; document memory management functions
      Merge remote branch 'tom/gsoc-doc' into trunk
      remove code (binary splitting, zeta(n)) obsoleted by arb
      remove some obsolete todo.txt entries
      fix _fmpz_cleanup to make repeated calls safe; add test code
      simplify _fmpz_demote_val
      fix to make repeated flint_cleanup() calls safe when there are registered cleanup functions
      fix t-val_fac on 32bit
      do fewer iterations in nmod_poly t-fread_print (file creation is very slow on some systems)
      create flint_get_num_threads / flint_set_num_threads interface
      small simplification
      easy-to-use profiling macros
      document profiling macros
      Merge remote branch 'origin/trunk' into trunk
      fix number of repetitions
      Merge remote branch 'tom/gsoc-doc' into trunk
      clarify documentation for stirling_X_vec_next functions
      fix function names in documentation
      simplify Stirling number code
      support den == NULL in fmpq_mat_get_fmpz_mat_colwise
      support den == NULL in fmpq_mat_get_fmpz_mat_colwise
      include void in function declarations
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      fix bug in KS2 and KS4 and add test
      nmod_poly_mul_KS: just call mpn_mul
      algorithm selection in nmod_poly_mul
      oops, remove debug code
      disable 64-bit-only test on 32-bit
      use plain mpn_mul also in nmod_poly_mullow_KS
      mpir.h -> gmp.h replacements
      Merge remote branch 'origin/trunk' into trunk
      include profiler.h among installed header files
      Merge remote-tracking branch 'wbhart/trunk' into trunk
      remove unneeded typedef for slong
      Merge remote branch 'wbhart/trunk' into trunk
      Make an internal function static to prevent namespace collisions with other code
      Merge remote branch 'wbhart/trunk' into trunk
      fix constness in declaration of __clz_tab
      silence some warnings
      Merge remote branch 'origin/trunk' into trunk
      fix (hopefully) d_lambertw accuracy issue on 32bit build on 64bit linux machines
      Merge remote branch 'wbhart/trunk' into trunk
      fix 32-bit failure in padic_poly_derivative
      better solution
      Sebastian's fix is better than mine
      Merge remote branch 'wbhart/trunk' into trunk
      Merge remote branch 'wbhart/trunk' into trunk
      add flint_cleanup calls in fft and mpfr_vec, and uncomment t-adjust_sqrt
      insert flint_cleanup calls in nmod_poly tests
      insert more flint_cleanup calls
      call flint_cleanup in ulong_extras tests
      Merge remote branch 'wbhart/trunk' into trunk
      missing flint_cleanups
      document fmpz_mod_poly_evaluate_fmpz_vec functions
      call n_factor all the way up to 64 bits in fmpz_factor; cleanup code a bit
      fix 1/den or -1/den incorrectly printing as 1 or -1 in fmpq_poly_fprint_pretty
      fix and speed up n_is_prime on 32-bit
      add table to t-is_prime
      test the right function in the right file

Frithjof Schulze (13):
      Silence some compiler warnings.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Merge branch 'trunk' of github.com:frithjof-schulze/flint2 into trunk
      Fix latex typos.
      Add fmpz_tdiv_ui().
      Merge remote-tracking branch 'upstream/trunk' into trunk
      Merge remote-tracking branch 'selmer/trunk' into trunk
      Merge remote-tracking branch 'upstream/trunk' into trunk
      Merge branch 'trunk' of git://github.com/fredrik-johansson/flint2 into trunk
      Fix escapes in Makefile.
      Correct nmod_poly example.
      nmod_poly: fix signatures of the sqrt functions in the documentation.
      Merge branch 'trunk' of https://github.com/wbhart/flint2 into trunk

Frithjof Schuze (2):
      Merge remote-tracking branch 'upstream/trunk' into trunk
      Fix markup in the documentation to be able to build the manual.

Jan Engelhardt (1):
      build: fix insufficient quoting in configure script

Jean-Pierre Flori (72):
      Corrected a typo in fmpz_size documentation.
      Correctly compile the NTL interface.
      Copy headers into a "flint" subdirectory.
      Define FLINT_CPIMPORT from PREFIX.
      Replace ?alloc and free by flint_?alloc and flint_free.
      Correctly build NTL interface finally.
      Detect errors occurring within foreach loops.
      Remove duplicate padic dir in BUILD_DIRS.
      Add files generated by configure to distclean target.
      Parallel testing.
      Use ABI in configure and modify uname use.
      Typos in the previous commit.
      Fix typo in fmpz_poly doc
      Fix mp_limb_t/ulong discrepancies in var/func decls.
      Fix matching for powerpc64 in a case statement.
      Fix for Darwin shared library name.
      Better dependency for install target.
      Share a common Makefile for all modules directories.
      Missing common Makefile.
      Use CFLAGS for testing and profiling.
      Let the user override ABI with an environment variable.
      Get rid of FLINT_TUNE variable, everything goes through CFLAGS.
      Print message to show that FLINT wa successfully configured.
      Catch potentiel illegal instruction error.
      Change the way headers and libraries are handled in build system.
      Use ABI_FLAG for profile targets.
      Use sed rather than awk for option parsing.
      There are no bashisms in configure.
      No bashisms in Makefiles either.
      Filter out build-tls potential crash.
      Use DESTDIR instead of PREFIX.
      Correct use of DESTDIR. PREFIX is still used.
      Possibility to use --with-mpir.
      Allow --enable-* options in configure.
      Parse CXX option passed to configure.
      Error out when static and shared versions are enable on Windows.
      Better option parsing.
      Allow --without-* options in configure.
      Sed script working with non-GNU sed.
      Add --[enable|disable]-pthread option.
      Remove comment introduced in 4cd2bc42a4aa5d
      Fix clean target by exporting MOD_DIR.
      Replace some $(FLINT_LIB) by library in make dependencies.
      Quiet make; inspired from BSDNT code.
      Allow shared and static make targets.
      Trigger library rebuild if headers changed.
      Add longlong.h header to HEADERS.
      Move Makefile.mod to Makefile.subdirs because of implicit .mod rule.
      Add verbose make target.
      Replace Makefile.mod by Makefile.subdirs within Makefile.in.
      Fix for make check in subdirs.
      Fix for make profile in subdirs.
      Add EXEEXT variable for executable extension.
      Merge branch 'trunk' into build_system
      Fix -lpthread typo.
      Fix EXEEXT typo.
      Define tests make target to build tests file without running them.
      Merge branch 'trunk' into sqrt
      Fix for extra librairies.
      Merge branch 'trunk' into sqrt
      Fix for extensions' headers.
      Tentative fixes for qadic sqrt.
      Fix compiler warnings (and a memory leak).
      Change remaining long into slong in nmod_poly module.
      Change long to slong in padic_poly module.
      Change long to slong in padic_mat module.
      Missing changes from slong to long for padic_poly and padic_mat modules.
      Change long to slong in qadic module.
      Missing changes from long to slong.
      Fix wrong file permissions.
      Another attempt to get correct ARM/Thumb/Thumb2 assembly code.
      Fix NTL interface tests. Reported by Francois Bissey.

Julien Puydt (1):
      Imported Upstream version 2.4.5

Lina Kulakova (49):
      fmpz_mod_poly factorisation: add new module fmpz_mod_poly_factor,
      fmpz_mod_poly: add function remove
      fmpz_mod_poly: add function mulmod
      fmpz_mod_poly: add function pow_trunc_binexp
      fmpz_mod_poly: add function pow_trunc
      fmpz_mod_poly: add function powmod_ui_binexp
      fmpz_mod_poly: add function powmod_fmpz_binexp
      fmpz_mod_poly_factor: add function is_irreducible
      fmpz_mod_poly_factor: add function factor_equal_deg_prob
      fmpz_mod_poly_factor: add function factor_equal_deg
      fmpz_mod_poly_factor: add function factor_cantor_zassenhaus
      fmpz_mod_poly: add function compose_mod_horner
      fmpz_mod_poly: add function compose_mod
      fmpz_mod_poly_factor: add function factor_distinct_deg
      fmpz_mod_poly_factor: add function pow
      fmpz_mod_poly_factor: add function factor_squarefree
      fmpz_mod_poly_factor: add function factor_fast_cantor_zassenhaus
      fmpz_mod_poly: add function compose_mod_brent_kung
      fmpz_mod_poly_compose_mod: automatically switch
      fmpz_mod_poly_factor: rename factor_fast_cantor_zassenhaus to factor_kalofen_shoup
      fmpz_mat_rref: fix comment
      fmpz_mat: add function rref_mod
      fmpz_mod_poly_factor_kaltofen_shoup: fix comments
      fmpz_mod_poly_factor: add function factor_berlekamp
      fmpz_mod_poly_factor: make factor_equal_deg_prob work for p=2
      fmpz_mod_poly_factor_berlekamp: fix test
      nmod_poly_factor: make factor_equal_deg_prob work for p=2
      fmpz_mod_poly_factor: fix some tests
      nmod_poly: add function factor_distinct_deg
      nmod_poly: add function factor_kaltofen_shoup
      fix code style (using indent)
      fmpz_mod_poly_factor: compute parameter beta inside function factor_distinct_deg
      nmod_poly: compute parameter beta inside function factor_distinct_deg
      fmpz_mod_poly: fix documentation
      fmpz_mod_poly_factor: add function is_squarefree
      fmpz_mod_poly_factor: add function is_irreducible_ddf
      fmpz_mod_poly_factor: rename is_irreducible into is_irreducible_rabin; add function is_irreducible
      factor_distinct_deg: fix beta computation
      fmpz_mod_poly: add function randtest_irreducible
      fmpz_mod_poly_factor: add benchmarking and profiling code for factorisation
      fmpz_mod_poly_factor: add function factor based on profiling measurments
      fmpz_mod_poly_factor: profiling: check whether the choice of algorithm was correct
      nmod_poly: add function randtest_irreducible
      nmod_poly: add profiling code for factorisation
      nmod_poly: improve function nmod_poly_factor
      fmpz_mod_poly_factor: fix test for is_squarefree
      nmod_poly: fix choice of factorisation algorithm for small moduli
      git:nopush tmp: check profiling
      Revert "git:nopush tmp: check profiling"

Martin Lee (66):
      fix: g++ complains about this when building Singular with Flint
      added 2-1 division using Newton inversion with a precomputed inverse
      added modular multiplication with a precomputed inverse
      added modular powering with a precomputed inverse
      added modular Brent-Kung composition with a precomputed inverse
      changed distinct degree factorization so as to use precomputed inverse versions, less gcd's,
      added benchmark test
      added docu of mulmod_preinv
      added docu for 2-1 division with precomputed inverse
      added docu for powmod_ui_binexp_preinv
      added docu of compose_mod_brent_kung_preinv
      added profile test for modular multiplication with precomputed inverse
      fixed a bug in distinct degree factorization
      fixed a memory leak
      fix 'factorization' of linear polys
      fix 'factorization' of linear polys
      fix: check for assumptions on input
      chg: const qualifier
      added 2-1 division using Newton inversion with a precomputed inverse
      added modular multiplication with a precomputed inverse
      added modular powering with a precomputed inverse
      added modular Brent-Kung composition with a precomputed inverse
      changed distinct degree factorization so as to use precomputed inverse versions, less gcd's, and less modular compositions
      better description of assumptions on the input
      added docu for reverse
      added docu for 2-1 division with precomputed inverse
      added docu for modular multiplication with precomputed inverse
      added docu for modular powering with precomputed inverse
      added docu for Brent Kung modular composition with precomputed inverse
      removed semicolons from docu
      small improvement of fmpz_mod_poly/divrem_basecase
      added irreducibility test using ddf
      changed is_irreducible to is_irreducible_rabin
      changed is_irreducible to using is_irreducible_ddf by default
      updated docu
      improved ddf based irreducibility testing
      use divrem_q1 if possible
      added powmod_mpz_binexp_preinv
      improved div_newton21_preinv
      use powmod_mpz_binexp_preinv in equal degree factorization
      added powmod_ui_binexp_preinv to fmpz_mod_poly
      use powmod_fmpz/ui_binexp_preinv in equal degree factorization
      updated documentation of fmpz_mod_poly and nmod_poly
      printf -> flint_printf
      added a version of Brent Kung modular composition that takes a precomputed matrix as input
      docu for new functions
      use compose_mod_brent_kung_precomp_preinv in distinct degree factorization
      ported compose_mod_brent_kung_precomp_preinv from nmod_poly to fmpz_mod_poly
      use compose_mod_brent_kung_precomp_preinv in fmpz_mod_poly_factor_distinct_deg
      added test for compose_mod_brent_kung_precomp_preinv
      some optimizations for modular composition
      deleted some semi-colon
      added docu for fmpz_mod_poly_compose_mod_brent_kung_precomp_preinv
      added powmod_x_fmpz_preinv to compute x^e mod f
      added powmod_x_ui_preinv to compute x^e mod f
      use modular composition to compute baby steps if characteristic is much larger than deg of poly
      use modular composition to compute baby steps if characteristic is much larger than deg of poly
      renamed div(rem)_newton21_preinv to div(rem)_newton_n_preinv
      more renaming of div(rem)_newton21 in fmpz_mod_poly
      mroe renaming of div(rem)_newton21 in nmod_poly
      more renaming of div(rem)_newton21 in C++ wrapper
      fix header clashes on cygwin64
      fixes of exception message formats and UL -> UWORD
      fix documentation of factor_distinct_deg
      fixed a missing clear
      some code simplifications and format consistency changes

Mike Hansen (224):
      Add proper dependency tracking for Makefile.subdirs.
      Merge remote-tracking branch 'goens/fq' into fq
      Add a .gitignore file
      Build fq / fq_poly and get tests to pass.
      Fix qadic tests when running tests in build directory without having done "make install"
      Allow "make profile" to target individual modules.
      Add fq_ctx_init_modulus for adding custom modulus.  No irreducibility
      Add more conversions to the NTL interface.
      Make Makefile.subdirs support cpp files and dependency tracking.
      Add fq_randtest_dense()
      Add Newton division for fmpz_mod_poly.
      Add fq_ctx_init_modulus and reduction based on Newton division.
      Add fq/profile/p-mul_vs_ntl to time multiplication against NTL.
      Add fq_poly/profile/p-mul_vs_ntl.cpp
      Performance improvements for fmpz_mod_poly/div_newton_preinv
      Ignore ppm files.
      Make fq and fq_poly use flint_printf
      Add zz_p, zz_pX, zz_pE, zz_pEX support in NTL interface
      Update output of fq/profile and fq_poly/profile to be more friendly to producing plots
      Revert "Performance improvements for fmpz_mod_poly/div_newton_preinv"
      Fix profiler.o dependencies in Makefile.subdirs
      Test signed integers in fq_mul_fmpz.
      Some API changes for fq and fq_poly to add future compatibility with fq_zech.
      Add fq/pow_ui.c
      Add fq_fprint and fq_print
      Add fq_ctx_randtest
      Add fq_vec (with templates).
      Add fq_ctx_fprint
      Add fq_poly_fprint etc.
      Add fq_poly_mulmod
      Add fq_poly_powmod_fmpz_binexp and fq_poly_powmod_ui_binexp
      Add "infrastructure" for fq_poly_factor_*
      Add fq_sub_one
      Add fq_poly_compose_mod
      Add fq_poly_gen and fq_poly_remove
      Add fq_poly_factor_cantor_zassenhaus
      Add fq_pth_root which needs to be optimized.
      Fix memleaks in fq_poly/gcd_euclidean.c
      Fix bug in fq_poly_make_monic.
      Add fq_poly_factor_concat
      Add fq_poly_factor_squarefree
      Add fq_poly_factor_kaltofen_shoup
      Close missing "}" in fq_vec_templates/header.h in c++ mode.
      Fix off by one error in profiling for fq and fq_poly.
      Reenable optimizations for fmpz_mod_poly/div_newton_preinv.c
      Add fq_mat
      Add fq_poly_compose_mod_brent_kung
      Add profiling for comparing factor_kaltofen_shoup_vs_ntl against NTL.
      Fix API chanages in NTL-interface.
      Add fq_vec_templates/scalar_submul_fq.c
      Add fq_poly_inv_series_newton.
      Add fq_poly_divrem_divconquer
      Add fq_poly_div_newton_preinv and fq_poly_divrem_newton_preinv
      Add fq_poly_mulmod_preinv
      Add fq_poly_compose_mod_brent_kung_preinv
      Add fq_poly_powmod_ui_binexp_preinv and fq_poly_powmod_fmpz_binexp_preinv
      Disable divrem_divconquer for now
      Some performance improvements for fq_poly_factor_distinct_deg
      More performance improvements to fq_poly_factor_distinct_deg
      Add fq_poly_factor_berlekamp
      Remove extra printing from p-factor_kaltofen_shoup_vs_ntl.cpp
      Add Ben-Or's random generation of irreducible polynomials (fq_poly_randtest_irreducible)
      Add fq_ctx_init
      Some profiling changes to fq_poly/profile/p-factor_kaltofen_shoup_vs_ntl.cpp
      Add inflation / deflation for fq_poly.
      Add factoring with deflation trick.
      Move fq_poly_inflate to proper directory
      API changes for consistency
      Remove fq api dependence on sparse modulus
      Have fq/test/* use fq_ctx_randtest
      Have fq_poly/test/* use fq_ctx_randtest
      Update profile code to use updated api
      Add documentation for fq_vec.
      Add a test for fq_pth_root.
      Add documentation for fq module.
      Add documentation for fq_mat.
      Get rid of _fq_poly_init and _fq_poly_clear
      Add fq_poly documentation.
      Misc. cleanup in fq.h / fq_poly.h / fq_poly/factor_berlekamp.c
      Improve test timings.
      Add fq_poly_powmod_fmpz_binexp_preinv to fq_poly_factor_equal_deg_prob
      improved fmpz_mod_poly_div_newton_preinv
      Fix header installation.
      Profile sparse vs. dense reduction in fq.
      Add fq_get_str and fq_get_str_pretty
      Add fq_poly_get_str and fq_poly_get_str_pretty
      Port improvements to _fq_poly_div_newton_preinv
      Switch fq_reduce based on sparsity of the modulus.
      Add fmpz_mod_poly_get_coeff_mpz and fmpz_mod_poly_set_coeff_mpz
      Fix first coefficient bug in fq_poly_get_str_pretty.
      Add fq_poly_compose_mod_horner_preinv and fq_poly_compose_mod_preinv
      Add profiling for fq_poly_compose_mod and fq_poly_compose_mod_preinv
      Make header files for templates more consistent with rest of header files.
      Add fq_poly/profile/p-iterated_frobenius.c
      Add fq_mat_mul_KS.
      Add cutoff for KS and classical multiplication in fq_mat.
      Add cutoff values in fq_poly_factor_distinct_deg for computing iterated Frobenius
      Fix fq_mat documentation.
      Use generic compose_mod_preinv vs. compose_mod_brent_kung_preinv
      Run indent on fq/*
      Run indent on fq_vec_templates/
      Run indent on fq_vec_templates/test/*
      Run indent on fq_mat_templates/*
      Run indent on fq_poly/*
      Renable fq_poly_divrem_divconquer.
      Add code for profiling fq_poly_mulmod vs. fq_poly_mulmod_preinv.
      Initial templates for fq_poly.
      Initial templates for fq tests.
      Add some prerequisites in nmod_poly.
      Add initial fq_nmod
      Add fq_nmod_vec
      Add bit packing / unpacking for fq / fq_nmod
      Add fq_nmod_mat
      Add fq_nmod_get_str and fq_nmod_get_str_pretty
      Add fq_nmod_poly
      Add profiling for fq_nmod_poly factoring vs. fq_poly_factoring
      Merge branch 'fq_nmod' into fq
      Fix issue with fq_poly_templates/mul.c and fq_poly_templates/sqr.c when reorder not in use
      Add fq_poly_templates/compose_mod_brent_kung_precomp_preinv.c
      Add n_primitive_root_prime
      Add initial discrete_log_bsgs function.
      Make modulus const in fq_nmod_ctx_init_modulus
      Add initial version of fq_zech
      Add fq_zech_vec
      Fix bug in fq_zech_bit_pack
      Add fq_zech_mat
      Add FQ_MUL_CLASSICAL_CUTOFF
      Fix memory leak in t-make_monic.c
      Add fq_zech_poly
      use fq_poly_compose_mod_brent_kung_precomp_preinv in distinct degree factorization
      Merge branch 'compose_mod_precomp' into fq
      Add fq_poly_powmod_fmpz_sliding_preinv
      Add sliding window exponentiation to fq_poly_factor_distinct_deg
      Merge branch 'fq_zech' into fq
      Fix fq_poly_templates/test/t-powmod_fmpz_sliding_preinv.c
      Add missing functions to fq_zech_poly
      Add some tuning / profiling code for fq_zech_poly
      Add fq_poly_is_irreducible_ben_or
      Add generation of sparse irreducible polynomials for nmod_poly
      Add some documentation for fq*
      Fix create_doc
      Standardize trace and norm interface for fq_nmod.
      Standardize trace and norm interface for fq_zech
      Update fq_zech tests to use flint_printf
      Doc fixes for fq*
      Add fq_nmod* documentation
      Add fq_zech* documentation
      Fix create_doc.c and add finite field sections to the manual.
      Add random generation of sparse irreducible polynomials for fmpz_mod_poly
      Update API in interfaces/test/t-NTL-interface.cpp
      Add NTL-interface.h dependency to Makefile
      Fix extern "C" in fq_*.h
      Fix problems in NTL interface
      Add docs and missing declarations for fmpz_mod_poly and nmod_poly.
      Remove unnecessary includes from fq*.h
      Ignore flint-manual.pdf
      Fix profiling code that uses NTL interface
      Fix p-factor_kaltofen_shoup_vs_ntl.cpp
      Fix poly_set_coeff_fmpz
      Add fq_poly_powmod_x_fmpz_preinv
      Template fq_poly/profile/p-iterated_frobenius
      Add fq_poly_templates/iterated_frobenius_preinv.c
      Add fq_poly_templates/profile/p-iterated_frobenius_table.c
      Add matrix precomp to fq_poly_templates/profile/p-iterated_frobenius.c
      Add rough cutoffs for iterated frobenius
      Add fq_poly_templates/profile/p-factor_xnpxp1.c
      Improve fq_zech/mul_ui.c by storing the prime field embedding.
      Update fq_zech_poly timings
      Use sliding window exponentiation in fq_poly_factor_equal_deg_prob
      Fix classical cutoff for fq_nmod_mat.h
      Add missing docs
      Merge remote-tracking branch 'upstream/trunk' into fq
      div(rem)_newton_preinv -> div(rem)_newton_n_preinv
      Split of fq factorisation routines into their own module
      Rename some files in fq_poly_factor_templates/*
      Update documentation for fq*
      Include fq_*poly_factor.h in fq_*poly.h
      Ignore generated manual files
      Merge remote-tracking branch 'upstream/trunk' into fq
      Fix issues in "make profile"
      Merge remote-tracking branch 'upstream/trunk' into fq
      Remove profiling code that depends on NTL for now
      Don't use $(CFLAGS) when building profiling code
      Remove unneeded PROF_CXX support for now
      Build main profiling code
      Rename nmod_poly_factor.doc to nmod_poly_factor.txt in create_doc.c
      Fix API changes in examples/fq_poly.c
      Merge remote-tracking branch 'upstream/flint-2.4' into trunk
      Use %wd and %wu in fq*
      Use WORD and UWORD
      Use gmp.h instead of mpir.h
      Change long to slong
      Run flint_cleanup() at end of test functions
      Fix documentation for div(rem)_newton_n_preinv
      Merge remote-tracking branch 'upstream/flint-2.4' into trunk
      Fix some memory issues in fq*
      Fix issues in fmpz_mod_poly_randtest_sparse_irreducible
      Add missing copyright notices
      Add tests dependency on static lib when FLINT_SHARED=0
      More long -> slong changes
      Remove superfluous result variable in *poly_randtest_sparse_irreducible
      A few more long -> slong
      Add valgrind target to Makefile
      Don't build all tests before running valgrind
      Make valgrind depend on the flint library.
      Add phony targets for valgrind
      Fix remaining WORD / UWORD issues
      Don't require monic modulus.
      Fix bug in templates.h
      Make sure non-monic moduli work.
      Add copyright headers missed by script
      Make fq*ctx_init_modulus not take p and d as arguments.
      Documentation additions / fixes
      Fix copyright in nmod_poly_gcdinv and nmod_poly_invmod
      Add docs for nmod_poly_gcdinv and nmod_poly_invmod
      Fix fq_factor_disticnt_deg on linear polynomials
      Add code for printing C preprocessor macros
      Fix exception messages to print right function
      Run indent on fq_poly_factor_templates
      Run indent on fq*_mat_templates
      Run indent on fq_poly_templates
      Add some docs on fq_zech
      Add fq_templates to TEMPLATE_DIRS in Makefile.in
      Fix bug in fq*_ctx_init_modulus

Ralf Hemmecke (1):
      docfix missing \code

SPancratz (894):
      Minor changes to mul_KS and mullow_KS in fmpz_poly
      Included reverse (method body, signature, documentation) in fmpz_poly
      Commit necessary because the previous work wasn't in the right branch
      Changed "fmpz_demote" to "fmpz_zero" in fmpz_poly_reverse
      Including sqrt and sqrtrem for fmpz
      Adding fmpz_poly_2norm, but no test code yet
      Included derivative for fmpz_poly
      Including content and primitive part in fmpz_poly
      Changed normalisation for fmpz_poly_primitive_part and added test code
      Added gcd_subresultant for fmpz_poly
      Updated header file and documentation for fmpz_poly
      Include wrapper fmpz_poly_gcd
      Evaluation using Horner's method for fmpz_poly
      Formatting (and sections) for fmpz_poly.h and the documentation
      Including fmpz_sizeinbase and fmpz_get_str
      Small formatting changes to print.c in fmpz_poly
      Including fmpz_set_str, with documentation and the changed header
      Including a note in the todo list for set_str, get_str, sizeinbase (all fmpz)
      Add string conversion methods for fmpz_poly
      Declare the argument to fmpz_poly_print "const"
      Updates for the string conversion methods in fmpz_poly
      Small fix to the verification of the format verification
      Included an _ method for fmpz_poly_derivative
      Including derivative for fmpq_poly
      Reformatting and adding sections for fmpq_poly.h
      Small simplifications to fmpq_poly_to_string
      Add t-derivative for fmpq_poly, plus small fixes
      Including content, primitive_part, monic, is_monic for fmpq_poly, no tests yet
      Added documentation for content, primitive_part and monic methods in fmpq_poly
      Added evaluation functions to the header file
      Added fmpz_poly_evaluate_mpq, with a Horner's method implementation
      Added evaluate_fmpz and evaluate_mpq to fmpq_poly
      Added documentation for the evaluation methods in fmpq_poly
      Bugfix for fmpq_poly_evaluate_fmpz
      Bugfix in fmpq_poly_scalar_mul_mpq
      Fixed bug in fmpq_poly_cmp
      Test files for fmpq_poly_cmp, content, monic, is_monic, primitive_part
      Changed one of the tests for t-fmpz_poly_gcd_subresultant
      Added fmpq_poly_is_squarefree plus documentation and tests
      Adding _ functions for fmpz_poly_shift_left/right
      Added shift_left, shift_right for fmpq_poly, plus docs and tests
      Changed way to choose algorithm in fmpz_poly_mul
      Small change to fmpz_poly_content
      Change to _fmpz_vec_content
      Include divexact_ui and _si in fmpz, plus doc and tests
      Add a single space to _fmpz_vec_is_zero
      Adding many tests to fmpz_vec/test
      Adding fmpq_poly_divexact_fmpz, _si, _ui plus subsequent changes
      Clean-up of fmpz_vec
      Changed calloc to malloc calls in fmpq_poly_to_string and _pretty
      Add a test for fmpz_vec_scalar_divexact_fmpz
      Changes to fmpq_poly (mostly cosmetic ones, but also adjusting copyright notes)
      Modified some test files for fmpz_vec (either cosmetic or adding more tests)
      Including t-scalar_mul_ui for fmpz_vec
      Small improvements to some tests in fmpq_poly
      Modified fmpq_poly/test/t-scalar_div_fmpz.c
      Modified some tests for fmpq_poly
      Fixed a bug in scalar division in fmpq_poly
      Fixed a bug in fmpq_poly_divrem (not providing output in canonical form)
      Fixed a bug in scalar division for fmpq_poly (not ensuring den is +ve)
      Tests and documentation in fmpz_vec and fmpq_poly
      Moving from ulong to long (fmpz_poly, fmpz_vec, fmpq_poly)
      Fixed a bug in t-mulmid_classical.c, giving a negative length
      Changes from ulong to long in mpfr_vec, mpfr_poly, nmod_vec, and nmod_poly
      Use of data types in fmpz_vec, fmpz_poly
      Updated use of data types in fmpq_poly
      Updated use of data types in fmpz_poly
      Updated use of data types in nmod_vec, nmod_poly
      Small fix:  modify mpfr_poly/test/t-FHT.c to include mpfr_vec.h
      Updated use of data types in mpfr_poly (incl mpfr_prec_t)
      Use calloc instead of malloc and mpn_zero in fmpz_poly_init
      Small improvement to the fmpz_poly_get_coeff_xxx functions
      Small change to fmpz_poly_normalise
      Remove redundant file fmpz_vec/scalar_divexact.c
      Casting return values of "malloc" appropriately
      Remove declarations from for loops, at least in the main code
      Fix an earlier commit which had two declarations of "i"
      Change the type of "dprec" to mpfr_prec_t
      Ensure the "mpfr_clear" statement is executed in mpfr_poly_bound_newton
      Remove some casts (fmpz *) from const fmpz * variables
      Fixed another memory leak in mpfr_poly/bound_newton.c
      Changed a %lu to a %li
      Update use of data types in fmpz_mat and mpfr_mat
      Update use of data types in LLL module
      Include the file "code_conventions.txt" in the top level
      Portable printing via gmp_printf in nmod_poly.h
      Avoiding -1UL in for loops
      Moving declarations out of for loops in fmpq_poly/test
      Moving declarations out of for loops in fmpz_poly/test
      Moving declarations out of for loops in fmpz_vec/test
      Move declarations out of for loops in fmpz_mat/test
      Move declarations out of for loops in nmod_poly/test and nmod_vec/test
      Move declarations out of for loops in fmpz/test
      Move declarations out of for loops in mpfr_mat/test (and _poly, _vec)
      Move declarations out of for loops in ulong_extras/test
      Fixing the output in t-is_perfect_power235.c
      Move declarations out of for loops in fmpz_mpoly/test
      Move declarations out of for loops in /test/...
      Move declarations out of for loops in /profile/...
      Moving declarations out of for loops in nmod_vec/profile
      Fix a problem with the output format in nmod_vec/profile/p-add_sub_neg
      Moving declarations out of for loops in ulong_extras/profile (and a few others)
      Removing the c99 option from the Makefile
      Moving declarations out of for loops in profiler.h
      Moving some more declarations out of for loops
      Including stdlib.h in many places in nmod_poly and nmod_vec
      Adding "u" suffix to some integers in is_prime_pseudosquare
      Adding "stdlib.h" to nmod_poly/t-init_realloc_clear
      Fixing the FLINT64 compile problem in is_prime_pseudosquare.c
      Adding "if FLINT64" to sqrt and sqrtrem in ulong_extras
      Removing unused variables and one bugfix in ulong_extras
      Removing unused variables and some casts (for signedness) in fmpz
      Use calloc in fmpz/realloc.c instead of malloc and mpn_zero
      Use calloc instead of malloc and mpn_zero in fmpq_poly_init2
      Use calloc instead of malloc and mpn_zero in fmpq_poly_realloc
      Small changes in fmpz_poly and fmpq_poly.
      Fixing the return type for _mpfr_vec_scalar_product
      Removing unused variables in nmod_vec and nmod_poly
      Removing unused variable in LLL/GSO_mpfr.c
      Small updates and fixes in the process of removing warnings from '-Wall'
      Using calloc instead of malloc and mpn_zero in fmpz_mpoly/init.c
      Small changes to fmpz_mpoly to remove some warnings
      Fix a bug (missing parentheses, operator precedence) in factor_SQUFOF.c
      Add -Wall -Werror to the CFLAGS in the Makefile again
      Going through all test files (except fmpz_mpoly) to remove warnings
      Reformatting of longlong.h
      Updating fmpz_mpoly to use 'long' instead 'ulong' in places
      Moving declarations to the top, reformatting (ulong_extras)
      Moving declarations and reformatting in fmpz (excl fmpz/link)
      Moving declarations in fmpz/link/*
      Moving declarations and reformatting in fmpz_vec
      Moving declarations, reformatting in fmpz_poly
      Moving declarations and reformatting, nmod_vec
      Moving declarations and reformatting, nmod_poly
      Applying intend to nmod_poly/*
      Moving declarations and reformatting, mpfr_poly
      Moving declarations and reformatting, fmpz_mat
      Moving declarations and reformatting, fmpq_poly, fmpz_mpoly, mpfr_mat, mpfr_vec
      Some reformatting of files in the top level
      Reformatting of files in LLL
      Reformatting of ulong_extras.h
      Some more reformatting in fmpz/*
      Some more reformatting in ulong_extras
      Replacing "inline" by "__inline__" and setting up a macro in flint.h
      Removing two casts "(long)" in fmpz/pow_ui.c
      The methods "round" and "sqrtf" don't seem to be part of ANSI C
      Small reformatting ('//') in ulong_extras/profile
      Changing '//' in fmpz/test, "make check MOD=fmpz" now works with -ansi
      Changing '//' in fmpz_vec/test
      Changing '//' in nmod_vec/test
      Changing '//' in nmod_poly/test/*
      Change '//' in fmpz_mpoly/test
      Replacing "//" in fmpz_poly/test
      Replacing "//" in fmpq_poly/test
      Adding "-pedantic -ansi" to CFLAGS
      Moving a number of declarations to the top
      Update code_conventions.txt
      Updating fmpz_poly/doc for ulong -> long, plus minor changes in fmpz_poly
      Update fmpz_vec/doc
      Updating fmpz_mat/doc
      Updating fmpq_poly/doc
      Updating nmod_vec/doc
      Small fix in fmpq_poly/randtest.c
      Updating nmod_poly/doc, plus a few changes in nmod_poly
      Update documentation for mpfr_mat, _poly, and _vec
      Update fmpz_mpoly/doc and small changes in fit_length
      Comparing the three polynomial multiplication methods
      Better choice of randomisation in fmpz_poly/profile/p-mul.c
      Improved choice of polynomial multiplication algorithm
      Remove -Werror from Makefile, add -O2
      Fix a "not-initialised" problem in profiler.c
      Work on fmpz_poly_pow_XXX
      Merge branch 'bill' into seb
      Including a multinomial recurrence for exponentiation
      Updated fmpz_poly/profile/p-mul.c to include RGB coloured images
      Small improvement to pow_multinomial.c, and modifying profile/p-pow.c
      Polynomial exponentiation (pow.c and profile/p-pow.c)
      Polynomial composition using Horner's method (fmpz_poly)
      Small modification to fmpq_poly/is_squarefree
      Documentation for polynomial composition (fmpz_poly)
      Further documentation for fmpq_poly_is_squarefree
      fmpq_poly_pow
      Compose and Rescale for fmpq_poly
      fmpq_poly_set_array_mpq
      Introducing fmpq_poly_from_string
      Changing "from_string" and "to_string" to "set_str" and "get_str" (fmpq_poly)
      Changing "from_string" and "to_string" to "set_str" and "get_str" (fmpz_poly)
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Removing the global random state for fmpz etc.
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Some more tidying up in fmpz_poly/test
      Small improvements to fmpq_poly/test/
      Changing fmpq/fmpz_poly composition and evaluation
      Fixed a bug in fmpq_poly_scalar_div_mpq (affects fmpq_poly_divrem)
      Minor changes to fmpq_poly_divrem
      Remove one cosmetic " " in fmpz_poly/evaluate
      Changes to polynomial composition
      Polynomial composition (divide-and-conquer)
      Remove fmpz_poly_t's from _fmpz_poly_compose_divconquer
      Some performance testing code in fmpz_poly/profile
      Polynomial composition for fmpz_poly
      Improvement and bug fix to fmpz_poly_compose()
      Further improvement to fmpz_poly_compose_divconquer, plus space analysis
      fmpz_poly_pseudo_divrem_cohen (and _pseudo_rem_cohen)
      Test file for fmpz_poly_compose
      First version of fmpz_poly_signature in FLINT2
      Small improvement to fmpz_poly_clear
      Small improvement to fmpz_poly_derivative
      Improvement to fmpz_poly_divrem_basecase, plus test code
      Small change to fmpz_poly_print
      Small change to fmpz_poly_normalise
      Small change to fmpz_poly_primitive_part
      Some work on pseudo division in fmpz_poly.
      Modify fmpz_poly_signature to match Cohen's algorithm 4.1.11
      Fix a memory leak in the test code for fmpz_poly_signature
      Reduce the number of test cases for fmpz_poly_evaluate_horner_mpq
      Modify fmpz_poly.h to change the signature for fmpz_poly_signature
      Modify the signature of fmpz_poly_signature
      Bug fix in the loop for normalisations in pseudo division over Z
      Rewrite fmpz_poly_reverse using indices instead of pointer increments
      Removed most allocations from fmpz_poly_divrem_divconquer recursive.
      Code improvement for the fmpz_poly multiplication functions
      Modified fmpz_poly_evaluate_horner, and plus more documentation
      Small cosmetic improvements to fmpq_poly_add and _canonicalise
      Small improvement to fmpq_poly_fit_length
      Removed unnecessary "normalise" from "fmpq_poly_inv"
      Bug fix in fmpq_poly_is_squarefree
      Small improvement to fmpq_poly_mul (re-arrange of some code, plus using init2)
      Small change to fmpq_poly_normalise
      Fix a bug in fmpz_poly/mullow_KS.c, not ensuring limbs1 >= limbs2
      Fix a bug in fmpz_poly/mul_KS.c, ensuring limbs1 >= limbs2 in mpn_mul
      Update multiplication functions in fmpz_poly, plus documentation
      Newton inversion of power series
      First version of div_divconquer in fmpz_poly
      Implemented _fmpz_poly_div_divconquer_recursive
      Small change to _fmpz_poly_divrem_basecase
      Small changes to Mulders short division
      Small changes to Mulders short division
      Merge branch 'seb' of github.com:SPancratz/flint2 into seb
      Separate code for fmpz_poly_div_basecase
      Added documentation and test code for div_basecase, update newton_inv
      Small change to the documentation of div_basecase
      Changed divrem_basecase to always be a full division, update documentation
      Added small comment to divremlow_divconquer_recursive
      A first version of fmpz_poly_rem_basecase
      Further improvement of fmpz_poly_rem_basecase
      Small improvement to divrem_divconquer, mostly cosmetic
      Improved divrem_divconquer_recursive
      Small update of the comments in divrem_divconquer_recursive
      Small improvement to divrem_basecase and rem_basecase
      divrem_divconquer_recursive no longer allocates temporary memory
      Updated divrem_divconquer accordingly
      Updated the documentation for polynomial division
      Add fmpz_poly_divrem, _div, and _rem
      Add something about divrem, div, and rem to the todo list
      Small improvement to the readability of divremlow_divconquer_recursive
      Small cosmetic changes to divrem_divconquer
      Added fmpz_poly/profile/bm-div_divconquer.c
      Improve documentation for pseudo_rem_cohen
      Added fmpz_poly_resultant (using the subresultant algorithm)
      Improvement of fmpz_poly_gcd_subresultant
      A few very small changes throughout fmpz_poly
      Update divrem_divconquer_recursive and divremlow_divconquer_recursive
      Small fix in fmpz_poly/pseudo_divrem_basecase.c
      Added fmpz_poly_pseudo_divrem_divconquer
      Change "ulong" to "long" in mpn_zero and mpn_store
      Small improvements in the memory allocation of pseudo_divrem_divconquer
      Align the various test cases for (pseudo) division
      Small update to pseudo_divrem_divconquer
      Small change to pseudo_divrem_divconquer
      Rename newton_inv to inv_newton
      Add fmpz_poly_inv_series
      Added fmpz_poly_div_series, plus a small fix for inv_series
      Methods pseudo_div and pseudo_rem for fmpz_poly, first implementation
      Small change to fmpq_poly/divrem.c in the case lenB == 1
      Add "div" and "rem" only methods to fmpq_poly
      Bug fix for divrem, div, rem in fmpq_poly
      Include truncate and inv_newton in fmpq_poly
      Update the low multiplication code in fmpz_poly
      Change fmpz_poly_mullow_n to fmpz_poly_mullow
      Small improvement to mullow_karatsuba_n.c
      Include fmpq_poly_mullow
      Change _fmpq_poly_mul to assume len1 >= len2 > 0
      Update fmpq_poly_set_array_mpq, fix leak in the test file
      Small fix to the "fmpz_poly" documentation
      Modified "fmpz_poly.txt" for inclusion into a LaTeX document
      Initial inclusion of the semi-automated manual.
      Update "fmpz_poly.txt" up to the section on "Euclidean division"
      Fixes a "control reaches the end of a non-void function" problem
      Fixes an "unused variable" problem
      Updated the "fmpz_poly" documentation for integration into LaTeX
      Updated some code for the manual (doc.c, doc.tex)
      Included "max_limbs" and "max_bits" in "fmpz_poly"
      Update the documentation of "fmpz_poly" to include more functions
      Update "fmpz.txt" for inclusion into a LaTeX file
      Update the documentation generation code to include group descriptions
      In "fmpz_poly.h", change "fmpz_vec_max_bits" to "fmpz_poly_max_bits"
      Include "fmpz_poly_pow_trunc"
      Include "fmpz_printf" and small improvement to "fmpz_print"
      Including "fmpz_poly_printf" and modify "fmpz_poly_print"
      Initial commit for the title page of the manual
      Include "_fmpz_poly_print" and "_fmpz_poly_printf"
      Bug fix in "doc/latex/doc.c"
      Re-arrange some of the includes;Definitely insignificant.
      Printing and pretty printing functions in the "fmpz_poly" header and docs
      Update "read", include "fread" in "fmpz_poly"
      Rename "printf" to "fprint", both in "fmpz" and "fmpz_poly"
      Bogus work-around the "mpn_modexact_1_odd" problem.
      Place the "fmpz_print" and "fmpz_fprint" into separate files
      Fix the problem with "mpn_modexact_1_odd" following a suggestion by Bill
      Adds read and fread to fmpz_poly
      Update "t-pow_trunc.c" in fmpz_poly
      Add new function "fmpz_cmp_ui"
      Add function "fmpz_poly_evaluate_mod"
      Add function "fmpz_poly_evaluate_mod"
      Merge branch 'seb' of github.com:SPancratz/flint2 into seb
      Update the documentation
      Set "0^0 == 1" in ulong_extras
      Include a bibliography (so far only for "ulong_extras")
      Modify the documentation to make use of the bibliography (plus small changes)
      Small fix of a typo in the documentation for ulong_extras
      Another run through the "fmpz" documentation
      Small updates to the "fmpz_mat" documentation, including the bibliography
      Small updates to the documentation in ulong_extras and fmpz_poly
      Modified the signature of "fmpz_poly_evaluate_mod()"
      Updated the documentation of "arith", "nmod_mat", "nmod_poly", and "nmod_vec"
      Add "fmpz_poly_zero_coeffs"
      Adds return values to the print and fprint methods in the fmpz module
      Adds return values to read and fread to the fmpz module.
      Fix an obvious bug in print and fprint, and in the documentation
      Adds return values to fmpz_poly printing functions
      Adds return values to the input functions for fmpz_poly
      Add test code for input and output in "fmpz"
      Adds test code for input/ output to fmpz_poly
      Small bugfix in the test code for "fmpz_poly_evaluate_mod"
      Include return values for "fmpz_poly_fprint_pretty".
      Small improvemen to "fprint" and "print" in fmpz
      Update the "fmpz_poly" part of the manual
      Update the "fmpz" part of the manual
      Bug fix in "fmpz_poly_fprint_pretty"
      Add "fmpz_poly_fread_pretty" with documentation and test code
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Modify powering in fmpz_poly to have 0^0 = 1
      Replace a ">> 1" by "/ 2UL"
      Remove unused code from fmpz_poly_pow_binexp
      Update the bibliography
      Update the fmpz_poly documentation of "pow_multinomial"
      Small fix to the nmod_poly documentation.
      Small improvement to the bibliography
      Adds fdiv_q_si to fmpz, and test code for fdiv_q_ui and fdiv_q_si.
      Update to fmpz for fdiv_q_si, fdiv_q_ui
      Update the fmpz_fdiv_q_si and _ui functions.
      Adds test code for fmpz_vec_scalar_divexact_fmpz, _si and _ui
      Added idiom "(a ^ b) < 0L" to check for opposite signs
      Fix the division by zero message in fmpz_fdiv_q
      Bug fix for the idiom (c2 ^ r) < 0L, which doesn't work when r == 0L
      Add fmpz_vec scalar division functions "fdiv_q_si" and "fdiv_q_ui"
      Add the functions "tdiv_q", "t_div_q_si" and "t_div_q_ui" to fmpz
      Small improvement to "fmpz_cdiv_q"
      Update to the "fdiv" functions in "fmpz"
      Add cdiv_q_si, cdiv_q_ui to fmpz, and update cdiv_q
      Rename scalar_fdiv_q to scalar_fdiv_q_fmpz in fmpz_vec
      Adds "scalar_tdiv_q_" functions to the fmpz_vec module
      Add scalar division functions to the fmpz_poly module.
      Fix fmpq_poly_pow so that 0^0 == 1
      Adds fmpq_poly_div_series
      Adds "fmpz_poly_lead" as a macro, no test code yet
      Add the "fmpq_poly" documentation to the manual
      Bugfix to fmpz_poly_divrem_divconquer
      Improve the documentation for fmpz_poly_lead and add test code
      Now really add the modified fmpq_poly documentation.
      Update various bits of the documentation
      Adds "fmpz_poly_get_coeff_ptr"
      Adds "fmpz_poly" test code for t-set_fmpz, t-set_mpz, t-set_si, t-set_ui
      Adds a first example program (delta_qexp, from flint1.6)
      Update of the example program delta_qexp
      Update the main Makefile to allow "make exmp"
      Adds fmpz_poly_is_zero, and test code for _zero and _is_zero
      Fixes a bug in fmpz_poly_scalar_addmul_fmpz()
      Adds fmpz_poly_scalar_submul_fmpz
      Removes "fmpz_poly_invmod" from the documentation.
      Update to the fmpq_poly input and output functions.
      Small improvement to fmpz_poly_fread and the documentation
      Remove the previous "fmpq_poly_print()"
      Improve the documentation
      Update exmp/delta_qexp to use the actual flint2 function
      Rename "exmp" to "examples"
      Bug fix in fmpz_poly_divrem
      Bug fix in fmpz_poly_div_divconquer
      Modifies tests in fmpz_poly and fmpq_poly to reduce their runtime
      Move the documentation of "fmpz_get_str"
      Update the documentation of fmpz_is_zero, and include that of fmpz_is_one
      Re-order the documentation in the group "Basic arithmetic" of fmpz
      Replace "nonzero" by "non-zero" throughout the documentation of "fmpz"
      Rename the group "GCD and extended GCD" to "Greatest common divisor"
      Rename the group "Addition" to "Addition and subtraction" in fmpz_vec
      Re-order documentation in "Scalar multiplication and division" in fmpz_vec
      Update the documentation of fmpz_mat_init_set
      Open a group "Input and output" in fmpz_mat
      Open a group "Comparison" in fmpz_mat
      Open a group "Basic assignment and manipulation" in fmpz_mat
      Re-order documentation in "Basic assignment and manipulation" in fmpz_poly
      Re-order the documentation in "Getting and setting coefficients" in fmpz_poly
      Re-order documentation in "Scalar multiplication" in fmpz_poly
      Update the documentation of "Powering" in fmpz_poly
      Update the documentation of fmpz_poly_resultant
      Update the documentation of fmpz_poly_div_divconquer
      Update the documentation of fmpz_poly_div_divconquer_recursive
      Rename "GCD, extended GCD" to "Greatest common divisor" in ulong_extras
      Rename "Modular reduction" to "Modular reduction and arithmetic" in nmod_vec
      Write documentation of "_nmod_vec_randtest"
      Re-order documentation in "Basic manipulation and comparison" in nmod_vec
      Re-name "Getting/setting coefficients" to "Getting and setting coefficients"
      Update "Polynomial properties" and "Getting ... coefficients" in nmod_poly
      Fix a typo in the documentation of "nmod_poly_print"
      Adds documentation for "nmod_poly_set"
      Rename "Addition/subtraction" to "Addition and subtraction"
      Update some documentation in "Scalar multiplication" in nmod_poly
      Update documentation in "Shifting" in nmod_poly
      Replace "vspace" by "vspace*".
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Adds "_fmpz_vec_fprint" with return code
      Rewrite "_fmpz_poly_fprint" to use "_fmpz_vec_fprint"
      Adds fmpz_vec input functions; no test code
      Rename "_fmpz_vec_copy" to "_fmpz_vec_set"
      Rename "_nmod_vec_copy" to "_nmod_vec_set"
      Rename "_mpfr_vec_copy" to "_mpfr_vec_set"
      Rename "fmpz_mat_copy" to "fmpz_mat_set"
      Rewrite the fmpz_mat output functions to have return values.
      Small layout change to fmpz_mat.h
      String input and output in "nmod_poly"
      Add some separators (for the various groups) to nmod_poly.h
      Re-organise the "nmod_poly" documentation according to the groups
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Update the fmpq_poly documentation, including scalar multiplication
      Improve the fmpq_poly scalar multiplication functions
      Modifies fmpz_randtest().
      Small fix in the documentation of ulong_extras
      Add "_fmpz_vec_randtest_unsigned()"
      Follow-up on a previous commit in which I left a typo
      Some documentation for fmpq_poly_randtest_foo
      Update n_randtest()
      Really small change to fmpz_poly/randtest.c
      Update the behaviour of fmpq_poly_randtest
      Bug fix for fmpz/randtest.
      Improves the documentation and test code for fmpz_vec_max_limbs
      Small bug fix in fmpz_poly/randtest.c
      Documentation for fmpq_poly in the manual
      Add a module "long_extras" with randtest() functions
      Improves ulong_extras/randtest
      Use the z_randtest() functions in the test code
      Fix "floating point exception" bug in fmpq_poly_scalar_div_si
      Bug fix in fmpq_poly_scalar_mul_si (which did not surface so far)
      Adds "is_canonical" to fmpq_poly
      Includes "long_extras" in the documentation
      Update the fmpq_poly test code to test for canonical output
      Add a function "fmpq_poly_debug" to print debug information.
      Bug fix for fmpq_poly_scalar_div_mpq
      Adds test code for scalar_div_mpq and scalar_mul_mpq in fmpq_poly
      Modify the fmpq_poly test code to use "fmpq_poly_debug"
      Small improvement to the various fmpq_poly_set_coeff_foo methods
      Adds a test to t-factor in ulong_extras.
      Bug fix in fmpq_poly_set_coeff_mpq (result was not in lowest terms)
      Small syntax fix (FLINT64)
      Update fmpq_poly_set_coeff_xxx functions
      Another update for the fmpq_poly_set_coeff_xxx functions
      Update fmpz/fdiv_qr.c to fix a compiler warning.
      Simplify the code in fmpz/fdiv_qr.c
      Fix "label ‘s_0’ defined but not used" in fmpz_poly/fread_pretty
      Fix "control reaches end of non-void function" in fmpq_poly/debug
      Fixes "warning: unused variable ‘len_out’" in nmod_poly/mulhigh
      Adds "fmpz_poly_evaluate_divconquer_fmpz".
      Remove the three unnecessary functions from fmpz_poly/evaluate_divconquer_fmpz
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Merge branch 'master' of http://selmer.warwick.ac.uk/flint2 into seb
      Merge branch 'master' of http://selmer.warwick.ac.uk/flint2 into seb
      Update the documentation
      Merge branch 'master' of http://selmer.warwick.ac.uk/flint2 into seb
      Update the date
      Update documentation
      Update the manual.
      Merge branch 'master' of http://selmer.warwick.ac.uk/flint2 into seb
      Update the documentation (mostly fmpz_poly)
      Modify fmpz_poly_evaluate_fmpz to choose algorithm
      Added "fmpq_poly_fprint_pretty" to the todo list
      Fix a bug in the documentation creation.
      Updates the documentation
      Updates the returns values (from void to int) of some I/O functions
      Update the "nmod_poly" documentation
      Bugfix in fmpz_poly/evaluate_mpq.c
      Small bugfixes in "get_str_pretty" and "set_str"
      Adds the function "fmpz_remove".
      Adds "fmpz_powm_ui" with test code and documentation
      Initial commit for the "padic" module
      Bugfix in "padic_normalise"
      Miscellaneous updates to "padic"
      Bugfix for padic_sub
      Adds lots of test code and a few changes to "padic"
      Updates the padic output functions, plus a stub for "padic_get_str"
      Bug fix in fmpz_poly (fmpz_poly_max_bits).
      Include precomputed powers and better removal of p's in "padic".
      Small documentation change to "padic_add"
      Update to "padic_normalise"
      Merge branch 'master' of http://selmer.warwick.ac.uk/flint2 into seb
      Modifies "padic_inv" to have no assumption on the input precision
      Adds "padic" to Makefile.in
      Adds inversion via Hensel lifting plus some test code
      Small improvement to "padic/mul"
      Update the padic/Makefile
      Update documentation for "padic_mul"
      Include copyright in padic/inv_hensel
      Small changes to padic_inv_hensel
      Using reduced unit-parts in padic_inv_hensel
      Improvement to padic_inv_hensel (compute powers of p)
      Small change to padic_inv_hensel
      Include "n_sqrtmod" in ulong_extras
      Adds "fmpz_sqrtmod"
      Small update for n_sqrtmod
      Modified padic/inv_hensel to work with fmpz's in the _ function
      Adds "fmpz_is_even" and "fmpz_is_odd".
      Adds "padic_sqrt".
      Small update to padic/sqrt
      Adds test code for padic/sqrt
      Small change to padic_inv_hensel (to leave N unchanged).
      Remove the "memtime" call from padic/Makefile
      Fix a bug in padic/sqrt, add test code.
      Remove "fmpz_remove".
      Adds documentation and test code for "fmpz_is_even" and "fmpz_is_odd"
      Update the todo file.
      Update the fmpz_poly section of the TODO file
      Improvements to the padic test code
      Set up padic_inv
      Update the documentation of "padic"
      Updates fmpz_poly_shift_left/right for better handling of aliasing
      Adds documentation for padic_sqrt and test code which fails for p=2
      Adds or modifies "fmpz_remove", "fmpz_powm_ui" and "fmpz_powm"
      Includes the case "p=2" in the padic_inv_hensel test code
      Removes the function "_padic_remove" and instead calls "_fmpz_remove"
      Adds "padic_exp" for odd primes
      Adds "is_one" and "is_unit" to the fmpz_poly module
      Initial commit for "fmpz_poly_q".
      Modifies "fmpz_poly_gcd" to bypass the heuristic gcd code.
      Add "fmpz_poly_q" to Makefile.in
      Small update for fmpz_poly_shift_left/right
      Adds the "Makefile" to fmpz_poly_q
      Slightly more robust test code for fmpz_poly_gcd_heuristic.
      Small update for "fmpz_poly_scalar_mul_ui"
      Bug fix(?) in fmpz_poly_q_scalar_div_si to do with LONG_MIN.
      Improvement to "fmpz_poly_q_is_zero"
      Update of "fmpz_poly_q_add" to special case polynomials
      Further update for "fmpz_poly_q/add".
      Update for fmpz_poly_q/sub, special case polynomials
      Update "mul" and "div" in fmpz_poly_q.
      Bug fix for fmpz_poly_fprint_pretty.
      Adds "fmpz_poly_debug"
      Adds (in a quick & dirty manner) a function to compute ord_p(n!)
      Adds "padic_get_mpq" and "padic_set_mpq"
      Quickly re-set padic_exp so that it is working again (for odd p)
      First implementation of "padic_teichmuller"
      Adds "get_mpz" and "set_mpz" to "padic"
      Adds "padic_shift"
      Modify the todo list
      Merge branch 'roadmap' of http://selmer.warwick.ac.uk/flint2 into seb
      Merge branch 'master' of http://selmer.warwick.ac.uk/flint2 into seb
      Updates "padic/test/t-shift.c" with another test scenario
      Bugfix to "fmpq_poly_get_str_pretty"
      Move "fmpq_poly_get_str_pretty" to a separate file
      Further improvements to fmpq_poly_get_str_pretty
      Fix for "padic/sqrt" in the case "p = 2", by Jan Tuitman
      Adds "padic_get_fmpz".
      Handle the case of "0" more gracefully in fmpz/remove.c
      Various updates to "padic"
      Adds "z_randint" to long_extras
      Adds test code (aliasing only!) for padic_pow_si
      Updates "padic" with a new function "_padic_ctx_pow_ui"
      Fix some calls to "_padic_ctx_pow_ui"
      Adds a further test case for padic_pow_si, which currently fails!
      A first step towards allowing negative valuations
      Adds "_fmpz_remove" to the header file and adds documentation
      Overhaul of the module "padic".
      Change the call to "padic_val_factorial" to "padic_val_fac"
      Update the documentation to include the "fmpz_poly_q" module
      Add flint specific file header to all files in "fmpz_poly_q"
      Adds some basic functions to "fmpq" and "fmpq_mat".
      Follow-up for the previous commit on "fmpq" and "fmpq_mat".
      Small bugfix in "fmpq_div()"
      Another follow-up to the earlier "fmpq_mat" commit.
      Modifies the behaviour of "fmpq_mat_one"
      Fixes the test code for "fmpq_mat_inv()"
      Adds test code for scalar multiplication/ division in "fmpq_mat"
      Adds "fmpq_sgn"
      Adds "fmpq_poly_get_coeff_fmpq" and the same for "set"
      Adds "fmpq_poly_addmul" and "fmpq_poly_submul"
      Adds "fmpq_poly_set_fmpz_poly"
      Bug fix for "fmpq_poly_one()".
      Lots of changes to "padic"
      Big update to the module "padic"
      Another set of updates to "padic".
      Very small doc-fix in fmpz_poly
      Update of the "padic" module's documentation and todo list
      Adds "fmpz_poly_mat" to the documentation
      Remove "padic/test/t-all.c" to remove output from "make check MOD=padic"
      Adds "fmpq_swap".
      Adds "fmpq_mat_transpose"
      Adds "fmpz_poly_sqr()" for squaring polynomials.
      Adds "fmpz_poly_lcm"
      Adds "fmpq_fprint".
      Adds "_padic_init", "_padic_clear" and re-organises the printing
      Improvements to "padic"
      Re-order PADIC_VAL_UNIT output
      Bugfix in "_padic_is_one"
      Adds "fmpz_divisible" and "fmpz_divisible_si", no test code yet.
      Updates "fmpz/divisible" and "fmpz_divisible_si", with test code
      Adds "fmpz_fits_si".
      Adds "fmpz_fdiv_r_2exp".
      First non-"simple wrapper" implementation of fmpz_powm(_ui)
      Big update to "padic".
      Bugfix to "nmod_poly_divrem_divconquer".
      Updates "fmpz_remove"
      Update to padic_teichmuller
      Adds "sqrlow" and variants to "fmpz_poly".
      Small bug fix to "fmpz_poly_mullow_karatsuba".
      Make use of "fmpz_poly_sqrlow" in a few places
      Adds clog and flog functions to "ulong_extras" and "fmpz".
      Adds "nmod_poly_compose_series_divconquer".
      fmpz_sizeinbase, z_sizeinbase.
      Small changes to fmpz/get_str, fmpz/set_str
      Bugfix in "fmpq_poly/set_array_mpq"
      Fixed a type in the documentation of divrem_divconquer.
      Fix for fmpz_poly/divrem_divconquer.
      Adds "fmpq_get_str".
      Updates "padic_get_str"
      Initial commit for "padic_log"
      Bug fix and improvement to padic_exp()
      Update to "padic_log"
      Updates "padic_log()"
      Moves the "-" sign out of _padic_log
      Updates padic_log
      Bug fix to fmpz_poly_zero_coeffs.
      Update to padic_inv.
      Another update to fmpz/powm_ui.c
      Bug fix for "fmpz_poly_xgcd_modular"
      Removes unnecessary "return" from fmpz_poly/gcd
      Adds gcd, xgcd, and lcm to fmpq_poly.
      Adds functions to obtain read-only mpz_t's from fmpz_t's.
      Updates get_mpz_readonly and clear_mpz_readonly.
      Update to _fmpz_demote_val().
      Update the todo file with regards to _fmpz_demote_val()
      Small improvement to "fmpz_get_str"
      Adds fmpz_init_set()
      Small improvement to "fmpz_poly_get_coeff_fmpz"
      Adds "_fmpz_vec_mod_fmpz".
      Small change to fmpz_poly/mullow.c
      Initial commit for "fmpz_mod_poly".
      Adds fmpz_gcdinv()
      Adds fmpz_mod_poly_lead()
      Bugfix in fmpz_mod_poly_neg()
      Improvement to fmpz_poly_divrem_basecase()
      Improvement to fmpz_poly_divrem_divconquer()
      Adds divrem_basecase and divrem_divconquer to fmpz_mod_poly
      Adds fmpz_mod_poly_divrem().
      Adds FMPZ_VEC_NORM
      Adds gcd_euclidean and make_monic to fmpz_mod_poly
      Improvement to fmpz_poly_inv_series_newton.
      Make use of the FMPZ_VEC_NORM macro in fmpz_poly
      Improvement to "nmod_poly_div_newton".
      Improvements to "inv_series_newton" in three modules.
      Adds canonicalisation to "_fmpq_poly_inv_series_newton"
      Fix syntax bug, omitted variable declaration
      Fix memory problem in fmpz_poly_div_divconquer.
      Allows +-1 in the constant term of power series inversion over Z.
      Update to fmpz_poly_inv_series_newton.
      Bugfix in fmpz_poly_div_basecase.
      Update to fmpq_poly_inv_series_newton
      Place "_fmpz_poly_fprint_pretty" in the header file.
      Massive update for fmpz_mod_poly.
      Adds "sqr" and "pow" to "fmpz_mod_poly".
      Adds radix conversion functionality to fmpz_mod_poly.
      Updates the radix conversion in fmpz_mod_poly.
      Adds derivative and evaluate_fmpz to fmpz_mod_poly.
      Adds an entry for "fmpz_mod_poly" to Makefile.in
      Small improvement to fmpz_poly_compose_horner.
      Adds compose_horner and set_fmpz to fmpz_mod_poly.
      Adds fmpz_mod_poly_compose_divconquer.
      Small changes to fmpz_mod_poly/mul
      Update create_doc.c to allow "_" at the beginning of function names.
      Adds fmpz_init_set_ui
      Adds fmpz_mod_poly_set_coeff_ui.
      Adds fmpz_mod_poly to the manual.
      Adds examples/fmpz_mod_poly.c
      Bugfix for fmpz_powm and fmpz_powm_ui.
      Bugfix in fmpz_remove.
      Adds fmpq_pow_si()
      Updates test and doc for padic_pow_si
      Change the signature of _fmpz_mod_poly_scalar_mul_fmpz_
      Adds fmpz readonly conversions between fmpz_t and mpz_t.
      Adds "fmpq_poly_set_fmpq"
      Added extra parentheses to fmpz/mpz_clear_readonly
      Changes to fmpq, incl readonly conversion, abs, and randtest.
      Changing fmpq_poly to favour FLINT over MPIR data types, part I
      Fix duplicate fmpq/randtest
      Make fmpq_poly favour FLINT over MPIR data types, part II
      Adds fmpq_poly_get_slice
      Adds fmpz_one.
      Adds fmpq_poly_resultant
      Makes use of fmpz_one throughout the library.
      Removes the empty(!) file fmpz/set_ui
      Adds nmod_poly_resultant_euclidean, tests still fail!
      Adds nmod_poly_resultant, just a wrapper.  Plus bug fix to _euclidean
      Small change to fmpq_poly_resultant
      Modifies the contract for padic_ctx_pow_ui
      Added NTL-interface.h and .cpp
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Bugfix to foo_divrem with aliasing.
      Replaces "_nmod_vec_free" by "_nmod_vec_clear"
      Update to padic.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      It's "_nmod_vec_clear" now
      Fixed a typo in Makefile.in
      Adds "fmpz_mod_poly_rem" as a simple wrapper.
      Adds build_hensel_tree and hensel_lift to fmpz_poly
      Adds "fmpz_poly_scalar_mod_fmpz", no test code yet.
      Update re Hensel lifting
      Another update on the way to integrating Hensel lifting.
      Another update for Hensel lifting.
      Another step of the port of hensel lifting for factorisation.
      Improves fmpz_poly/start_hensel_lift
      Introduces "FLINT_CLOG2" and "FLINT_FLOG2", plus doc.
      Another lot of changes toward Hensel lifting
      Unified the structures for factorisations.
      Adds documentation for "fmpz_mod_poly_rem".
      Adds test code for Hensel lifting, plus factor_print().
      Fix doc for fmpz_fdiv_q_2exp
      Change in signature nmod_poly...deg_prob, ulong -> long
      Another stupidly large commit related to Hensel lifting.
      Move the functions _fmpz_vec_scalar_mod_fmpz and _smod_fmpz
      Adds doc and tests for fmpz_vec_scalar_mod_fmpz and _smod_fmpz
      Add a separating line for "Hensel lifting" in the header
      Clarifies the documentation to factor_concat
      One character doc fix in fmpz
      Small doc fix in fmpz_poly
      Update the documentation Makefile to remove temporary tex files
      Adds more functions to the factor struct interface.
      Ported fmpz_poly_zassenhaus_naive.
      Modifies Hensel test code
      Improvement to hensel_lift_without_inverse, plus doc fix.
      Update the Hensel lifting functions and documentation.
      Remove unnecessary parameter "f" from hensel_lift_only_inverse
      Update to Hensel lifting, lift_only/without_inverse now done.
      Updates hensel_lift, finally.
      First version of HALF GCD in nmod_poly.
      Small visual improvement to gcd_hgcd
      Bugfix.  Wrap macro arguments in flint.h, mpn_extras.
      Update to gcd_hcdg.  NOTE:  Not a final commit, work in progress.
      Another update for HGCD in nmod_poly.
      An update on the way to implementing a HGCD based XGCD
      Small changes to nmod_poly_xgcd_euclidean
      Update to the documentation
      XGCD based on HGCD done.  Plus some related updates.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Adds a suppression file "Invalid Read"s by __gmpn_copyi.
      Bugfix for fmpz_mod_poly/gcd_euclidean.c
      Adds nmod_poly_divrem_q1.
      Get rid of one compiler warning in padic_pow_si.
      Small improvement to nmod_poly_divrem_q1
      Adds nmod_poly_divrem_q0.
      Reorder the arguments of nmod_pol_str.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Merge branch 'hensel_branch' of https://github.com/AndyNovo/flint2 into trunk
      Bugfix in hensel_continue_lift, same as in hensel_start_lift.
      Improve the code layout in squarefree factorisation.
      Bugfix in squarefree fac.  Take *signed* content.
      Bugfix in factor_realloc.  Don't reset the content.
      Updates for "fmpz_poly_factor".
      Adds a wrapper "fmpz_mod_poly_gcd".
      Adds "fmpz_mod_poly_divrem_f".
      Timing file for polynomial GCD, plus an update to nmod_poly.h
      On the way to improving nmod_poly/divrem_basecase.
      Fix a typo.
      Begins to add remainder only variants for nmod_poly.
      Merge branch 'hensel_branch' of https://github.com/AndyNovo/flint2 into trunk
      Small cosmetic changes to div_newton, divrem_newton
      Add an include in some test code to prevent warnings
      Fix in fmpz_poly_rem, which used to only call rem_basecase
      Update the nmod_poly_gcd profiling function
      Merge branch 'hensel_branch' of https://github.com/AndyNovo/flint2 into trunk
      Done some work on the Zassenhaus code.
      Small changes to the Zassenhaus code.
      Bug fix (content!) in Zassenhaus, plus test code (fails!)
      Remove the non-underscore functions for divrem_q0 and _q1
      Small cosmetic changes to fmpz_mod_poly_gcd_euclidean
      Small cosmetic improvements
      Adds fmpz_mod_poly_rem_basecase
      Adds _fmpz_mod_poly_divrem_f().
      Small changes to fmpz_mod_poly_gcd_euclidean
      Includes fmpz_mod_poly_gcd_euclidean_f
      Small improvement to fmpz_mod_poly_gcd_euclidean
      Small fix for fmpz_mod_poly_gcd_euclidean_f
      Merge branch 'hensel_branch' of https://github.com/AndyNovo/flint2 into trunk
      Modifications to the Zassenhaus factorisation code.
      Make use of "fmpz_poly_hensel_lift_once" in Zassenhaus.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Renames "fmpz_set_ui_mod" to "fmpz_set_ui_smod".
      Another update for fmpz_poly_factor_zassenhaus.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Minor changes to fmpz_poly/mul_SS.
      Update copyright in nmod_poly.h
      Big compilation of little changes before the 2.3 release.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Minor update to mullow_SS.
      One fix for fmpz_poly_factor/zassenhaus
      Fixes a bunch of remaining warnings.
      Fixes two mistakes in my earlier commit.
      Bugfix in the test code for fmpz_vec get/set_nmod_vec
      Fix in pseudo_divrem_divconquer.
      Fix memory allocation problem in pseudo_divrem_divconquer.
      Remove an explanation from the top of pseudo_divrem_divconquer
      Small improvements to the code of padic_inv and padic_sqrt.
      Improvement to padic_teichmuller.
      Adds a macro FMPZ_VEC_SWAP similar to MPN_SWAP.
      Adds fmpz_mod_poly_xgcd_euclidean.
      Fixes a problem with fmpz/test/t-set_ui_smod.c
      Remove an unnecessary line from fmpz_mod_poly_xgcd_euclidean
      Rewrite nmod_poly_xgcd_euclidean.
      Adds an underscore version of _fmpq_poly_fprint_pretty.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Small improvement to fmpz_poly_fprint_pretty.c
      Small bugfix in fmpz_mod_poly/xgcd_euclidean
      Improvement to padic_teichmuller
      Adds fmpz_mod_poly_gcdinv
      Change the signature in fmpz_mat_equal to add "const"
      Adds fmpz_tstbit.
      Adds _padic_teichmuller to the header file
      Adds fmpz_mod_poly_invmod, updates _gcdinv.
      Changes to padic_log and padic_teichmuller.
      Merge branch 'trunk' of http://selmer.warwick.ac.uk/flint2 into trunk
      Incorporate Fredrik's padic_exp implementations.
      Incorporation and small clean-up of Fredrik's padic_exp code
      Updates the padic exponential function.
      Implements a choice of algorithm in padic_exp
      Merge branch 'trunk' of https://github.com/fredrik-johansson/flint2 into trunk
      Commit for padic_log, on the way to a proper implementation.
      Improvement to padic/log_rectangular
      Further improvement to padic_log_rectangular.
      Adds padic_log_rectangular to the header file and doc.
      Adds padic_log_satoh, and modifies other log functions.
      Limits the number of precomputed powers in padic_ctx_init
      Bug fix in padic_log_satoh.
      Adds fmpz_setbit.
      Improves padic_sqrt_2.
      Small improvements to padic_exp and padic_log
      Bugfixes to all variants of padic_log.
      Adds _fmpz_poly_is_one()
      Small improvement to padic_log_rectangular.
      Improvement to padic_sqrt.
      Adds padic_log_balanced().
      Improvement to padic_log_balanced, precomputed inv.
      Improvement to padic_sqrt, merging the last product into the lift
      Update printing in "padic"
      Updates "fmpz_mod_poly_set_coeff_XXX" to reduce mod p.
      Adds fmpz_mod_poly_modulus().
      Add the padic_poly module.
      Adds the module "padic_mat"
      Improves padic_poly_add/sub().
      Improvement to padic_poly_neg.
      Adds padic_poly_randtest_val.
      Initial commit for the "qadic" module.
      Update to "qadic", including lots of documentation.
      Adds test code for qadic_pow()
      Improve test code for qadic_sigma, also includes products now.
      Modifies qadic_sigma() to take a second parameter e.
      Improves qadic_sigma().
      Fix for padic_mat.h, removing include of mat_common.h.
      Improves qadic_teichmuller.
      Rename qadic_sigma to qadic_frobenius
      Include Paterson-Stockmeyer in qadic_frobenius
      Small changes to qadic_frobenius
      Small improvement (~ 2.5%) to qadic_inv.
      Update to Makefile.in, including "qadic".
      Remove a header from qadic/inv
      Adds qadic_exp()
      Adds qadic_log_rectangular, and makes small changes to qadic_exp.
      Adds qadic_trace and qadic_get_padic.
      Small improvement to qadic_log_rectangular.
      Modifies _qadic_pow to accept e >= 0, not just e > 1.
      Adds qadic_sqrt() in the odd case, still work in progress.
      Adds "_padic_mat_is_canonical()" and uses this in test code.
      Updates printing in other p-adic modules
      Bugfix for fmpq_poly_fprint_pretty.
      Bugfix for fmpq_poly_fprint_pretty.
      Modifies some padic_poly test files
      Improve padic_poly_get_fmpq_poly
      Bugfix in padic_poly_set_fmpq_poly

Sebastian Pancratz (257):
      Fixed a bug in fmpz/gcd.c
      Indenting to 4 spaces and removing empty lines at the end of the file
      /*============================================================================
      Adding fmpq_poly_init, _clear, and _canonicalize, not stable yet.
      Added _fmpz_vec_content to the header file.
      Written code for init, init2, realloc, fit_length, set_length, clear,
      Added the file fmpq_poly/canonicalise.c
      Changed the "define FMPZ_POLY" to "define FMPQ_POLY" in fmpq_poly.h
      Added documentation for fmpz_vec scalar division
      Added the files for fmpz_vec scalar division
      Use fmpz_vec scalar division in fmpq_poly canonicalise
      Fixed a typo (_ to ->) in fmpq_poly canonicalise.
      Added method signatures and documentation for the assignment methods
      Changed signature of init2 in fmpq_poly.h
      Added the scalar division signatures to fmpz_vec.h
      Added the function fmpq_poly_is_one
      Added methods "degree" and "length"
      Added numref and denref to fmpq_poly
      Added methods set_mpz, set_mpq to fmpq_poly
      Added a bunch of files, plus coefficient methods.
      Added documentation for set_coeff_ui in fmpq_poly.
      Added the comparison function to fmpq_poly
      Added support and documentation for randomisation
      Fixed a bug in fmpq_poly_realloc
      Written to_string and to_string_pretty for fmpq_poly
      Added documentation and signatures for to_string and to_string_pretty.
      Added printing support to stdout
      Fixed bug in set.c for fmpq_poly.
      Fixed a set_length bug in fmpq_poly_set_XXX.  Tested inv.
      Added set_coeff_ui to fmpq_poly.h
      Added addition code for fmpq_poly
      submul functions and is_zero for fmpz_vec
      Small fixes in fmpq_poly.h, fmpz_vec.h, plus test code for addition.
      Fixed bug in addition for fmpq_poly
      Including scalar_mul_ui in fmpz_vec.
      Adding the file for scalar_mul_ui in fmpz_vec and change "const" in is_zero
      Including the subtraction file, and adding scalar_mul_XXX to fmpq_poly.c
      Added the scalar_mul_XXX files for fmpq_poly
      Changed lots of 1 to 1L
      Added scalar_div functions
      Merge branch 'fmpq_poly' into seb
      Added error messages and some _ methods for scalar_division
      Added fmpq_poly_zero method
      Multiplication for fmpq_poly
      Small change in fmpq_poly_swap
      Undoing the previous change
      Before debugging addition in fmpq_poly
      Fixed bugs in addition, subtraction in fmpq_poly
      Added file for fmpq_poly_zero
      Changed set_coeff functions in fmpq_poly, esp. set_coeff_mpq
      /*=============================================================================
      Update fmpz.h after adding fmpz_fdiv_q_ui
      Update the documentation after adding fmpz_fdiv_q_ui
      Scalar multiplication for fmpq_poly
      Added _canonicalise for fmpq_poly
      Added wrappers for fmpz_poly_divrem to be used in fmpq_poly_divrem
      Changed a few rpoly's to rop's in the scalar multiplication code
      Added stdlib to fmpq_poly_scalar_div_mpq
      Documentation and header file for fmpq_poly
      Scalar division operations in fmpq_poly
      set_coeff_mpz for fmpq_poly
      Minor changes to the fmpq_poly_set_XXX methods
      Small changes to set_length in fmpq_poly
      Fixed a bug with den == -1 in new _canonicalise code
      Small changes to init, init2 and realloc, namely removing const for ulong arg
      Added divrem, fixed canonicalise, small changes to inv and mul
      Powering operation for fmpz_poly
      Swapping two vectors in fmpz_vec
      Changed fmpz_poly_small to also include the case e == 4
      Added a new test case for fmpz_poly_pow
      Powering in fmpz_poly and fmpq_poly
      Add testing files to the repository
      Add pow for fmpq_poly to the repository
      Removed debugging print statements from fmpz/test/t-gcd
      Added degree and length functions to fmpz_poly
      Added set_ui, si, fmpz and mpz to fmpz_poly
      Adding the set_XXX files for fmpz_poly to the repository
      Bug report in todo list for mul_KS and mullow_KS
      Fixed bug due to unitialised "length" in fmpz_poly_karatsuba
      Changes to the header file fmpz_poly.h
      Fixed a typo in fmpz_poly/set_fmpz
      Include new file mullow_KS.c in fmpz_poly
      Have an _ method for mullow_n.c in fmpz_poly
      Updated documentation file for fmpz_poly
      Update for fmpz_setbit
      Bug fix for xgcd_euclidean and others
      Fix a comment in log_rectangular.
      Change the iteration formula in padic_inv
      Improvement to padic_teichmuller.
      Simplify the code in padic_exp_rectangular.
      Improve qadic_inv, removing most mod operations.
      Improve qadic_sqrt, replacing the last multiplication.
      Bugfix:  remove _fmpz_poly_scalar_submul_fmpz from the header.
      Update of qadic_teichmuller.
      Improve qadic_frobenius.
      Bugfix:  remove _fmpz_poly_scalar_submul_fmpz from the header.
      Simplify the code in padic_exp_rectangular.
      Improvement to padic_teichmuller.
      Change the iteration formula in padic_inv
      Improve qadic_trace using the approach based on Newtons eqs
      Update padic_exp.
      Adds qadic_norm.
      Update qadic_exp.
      Bugfix in padic_log.
      Fixed syntax problem in qadic.h
      Small improvement to padic_log_balanced.
      Bugfix in qadic_log_rectangular.
      Modifies the test code for qadic_log_rectangular
      Adds qadic_log_balanced.
      Update padic_exp.
      Bugfix in padic_log.
      Small improvement to padic_log_balanced.
      Small fix in fmpz_poly/profile/p-mul_triangle.
      Improvements to the padic logarithm function.
      Improvements to the padic logarithm function.
      Improvements to padic_exp_balanced
      Adds qadic_exp and qadic_exp_balanced.
      Improvements to padic_exp_balanced
      Small updates to the qadic header and docs.
      Adds qadic_log, and makes use of this in the norm computation.
      Adds a bunch of profiling code for arithmetic over Qp and Qq
      Make sure exp_balanced and exp_rectangular call the right functions.
      Modifies padic/p-exp_rectangular
      Modifies more profiling code.
      Modifies all p-adic profiling code output.
      Adds _log_padic_balanced to the header.
      Adds _log_padic_balanced to the header.
      Adds list output to qadic/profile.
      Fix for the previous commit.
      Merge remote branch 'bill/padic' into padic
      Small fix in qadic_trace.
      Update Makfiles in the padic branch.
      Update of qadic_mul.
      Adds profiling code for padic and qadic multiplication.
      Include algorithm selection for qadic_norm.
      Remove unused variable in qadic/log_rectangular.
      Update qadic_pow.
      Small update to qadic_teichmuller.
      Factor out the nonresidue code for qadic/sqrt.
      On the way to qadic_sqrt for p=2.
      Merge branch 'padic' of https://github.com/wbhart/flint2 into padic
      Adds _fmpz_vec_scalar_fdiv_r_2exp.
      Adds _fmpz_vec_scalar_fdiv_r_2exp.
      Bugfix in fmpz_vec_scalar_fdiv_r_2exp().
      Another intermediate commit for qadic_sqrt_2().
      Bugfix in fmpz_vec_scalar_fdiv_r_2exp().
      Adds "fmpz_mat_charpoly()."
      Bugfix for fmpz_mat_transpose.
      Stash qadic_sqrt changes, not working yet.
      Bugfix for fmpz_mat_transpose.
      Adds fmpz_poly_mat_transpose().
      Adds fmpz_poly_mat_transpose().
      Fix includes for fmpz_poly_mat_transpose.
      Fix includes for fmpz_poly_mat_transpose.
      Adds "fmpz_mat_charpoly()."
      Adds padic_mat_get, set_fmpq_mat(), and _nrows(), _ncols().
      Small update to "qadic".
      Improve qadic_inv in the case len = 1.
      Improve examples/qadic
      Adds qadic_set_fmpz_poly.
      Bugfix for FLINT_ABS.
      Adds qadic_gen and qadic_set_ui.
      Adds an example file for radix conversion over Z/nZ.
      Adds an example file for radix conversion over Z/nZ.
      Adds a const modifier to the third argument of fmpz_randm.
      Adds a const modifier to the third argument of fmpz_randm.
      Initial update for "fq" and "fq_poly".
      Remove unsued variable in fmpz_poly_mat_transpose.
      Remove unsued variable in fmpz_poly_mat_transpose.
      Next update for "fq_poly", including mul_classical.
      Small fix for _fq_reduce().
      Adds _mul_reorder and _mul_KS to fq_poly.
      Improvement to fmpz_poly_mul_KS and mullow_KS.
      Improvement to fmpz_poly_mul_KS and mullow_KS.
      Remove unused "limbs" from fq_poly/mul_KS
      Added another example to examples/fq_poly.
      Fix "len1 >= len2" issues at fq_poly_mul_KS.
      Adds fq_poly_mul().
      Adds fq_sqr().
      Modify fq_mul() test code
      Add fq_sqr() test code
      Bugfix for fq_poly/mul_reorder
      Adds fq_poly squaring routines.
      Adds fq_swap.
      Adds fq_poly_evaluate_fq.
      Adds shift_left and shift_right to fq_poly.
      Adds mul_fmpz, mul_si, mul_ui to fq.
      Adds fq_poly_derivative.
      Adds test code for fq_poly_shift_left/right.
      Adds fq_poly_hamming_weight.
      Fix bug in mul_KS for fq_poly.
      Improves test code fq_poly squaring.
      Adds fq_poly_pow().
      Adds fq_poly_divrem_basecase.
      Improvement to fmpz_poly_compose_divconquer.
      Improvement to fmpz_poly_compose_divconquer.
      Adds fq_poly_compose().
      Small improvements to fmpz_poly_compose.
      Small improvements to fmpz_poly_compose.
      Adds fq_poly_divides.
      Fix memory leak in fmpz_poly_divides().
      Fix memory leak in fmpz_poly_divides().
      Small improvement to fmpz_poly KS.
      Adds fq_poly_mullow routines.
      Merge branch 'trunk' of https://github.com/wbhart/flint2 into trunk
      Merge branch 'padic' of https://github.com/wbhart/flint2 into padic
      Merge branch 'padic' into fq
      Adds fmpz/equal_si and equal_ui.
      Improves fmpz_mod_poly/derivative.
      Improves nmod_poly composition code.
      Initial commit for "padic2".
      Bugfix for padic log functions.
      Update for _padic_log_bound.
      Improves padic_val_fac.
      Rename padic_lifts_XXX to _padic_lifts_XXX.
      Ensures the padic docs work with the manual.
      Further changes to padic.
      Small further changes to "padic".
      Fix padic examples.
      Remove an exception print from arith/stirling1.c.
      Small coding changes to stirling1.c.
      Changes exception print statements in arith.
      Changes exception statements in fmpq, fmpq_mat, fmpq_poly, fmpz.
      Update exception statements in fmpz_mat.
      Modifies exceptions in fmpz_mod_poly, fmpz_poly, and flint_malloc.
      Updates exceptions in fmpz_poly_factor, fmpz_poly_q, fmpz_vec, and nmod_mat.
      Forgot a semicolon after an "abort" in fmpz_poly_randtest.
      Modify exception statements in nmod_poly.
      Modifies more exceptions.
      Small fix for 8c1542a3c12a2a002d98ed2b2c42e837222fe13b.
      Initial commit for branch 'qadic'.
      Update Makefile in padic_poly.
      Two small changes to padic/add and padic/reduce.
      First update of padic_poly to include a precision.
      Bugfix in padic_poly/test/t-compose.  All tests pass now.
      Adds test functions "is_reduced" and "is_canonical".
      Further updates to padic_poly to pass tests.
      Intermediate commit for "padic_mat".
      Update padic/test/t-mul.
      Bugfix for padic_poly add/sub.
      Update "qadic" module, still in progress.
      Fixes bug in the qadic sqrt code for p=2.
      Temporary commit for qadic sqrt.
      Temporary commit for qadic sqrt.
      Use typedef's for the qadic types.
      Misc qadic commit.
      Small improvements to qadics documentation.
      Small changes to qadic.h
      Small improvements to qadic/test/t-frobenius.
      Remove the function qadic_scalar_mod_ppow.
      Small improvement to qadic exp/exp_rectangular.
      Add padic_poly, padic_mat and qadic to the Makefile.
      Fix padic_poly_randtest_val.
      Temporary commit for the qadics.
      Modifify examples/qadic.c with a different example.
      Temporary commit for qadic/sqrt, still broken.
      Bugfix for padic_poly_derivative.

Thomas DuBuisson (1):
      Split up config params to avoid newline issues.

Thomas M. DuBuisson (22):
      Make nmod_poly_fread set the mod to the value from the file (re-init).
      Merge commit '24be8a793d759bb8294fc3f9ed23853cac90114f' into trunk
      Add fmpz_mod_poly_fread(...) to obtain mod polys from FILE *.
      Make nmod_poly_fread set the mod to the value from the file (re-init).
      Add fmpz_mod_poly_fread(...) to obtain mod polys from FILE *.
      Merge branch 'trunk' of github.com:TomMD/flint2 into trunk
      Add test for fmpz_mod_poly_fread()
      Merge branch 'trunk' of https://github.com/SPancratz/flint2 into trunk
      Merge branch 'trunk' of https://github.com/fredrik-johansson/flint2 into trunk
      Merge branch 'trunk' of https://github.com/fredrik-johansson/flint2 into trunk
      Merge branch 'trunk' of https://github.com/SPancratz/flint2 into trunk
      Merge branch 'trunk' of https://github.com/fredrik-johansson/flint2 into trunk
      Merge commit '2910235b08c7bbb54818d9f3d4c73a5054bed306' into HEAD
      Merge branch 'trunk' of https://github.com/fredrik-johansson/flint2 into trunk
      Initial logic operations implementation.
      Add fmpz_popcnt to fmpz.h
      Standardize on spaces, not tabs.
      Add popcnt to the documentation.
      Init the tmp, add copyright, and test popcnt.
      Address concerns with the logic functions commit.
      Check for lib64 when configured with custom directories.
      Make config adjust headers based on --reentrant.

Tom Bachmann (261):
      Fix and test bug in fmpq_abs.
      tweak create_doc.c
      fixes to documentation
      fix bug in is_squarefree
      Switch over create_doc to a parser generated by leg.
      Start design document.
      more design work
      Improve build system for cxx module.
      Another build system tweak.
      Start another cxx prototype.
      traits for signed/unsigned int initialization
      first addition
      two-sided op, unoptimized
      test generated code
      move mp to separate header
      move trais to separate header
      move tuple to separate header
      implement and test tuple merging
      start testing codegen for tuple
      Make empty_tuple its own type.
      remove check-XXX targets
      add friend specifiers
      Move expression into separate header ...
      implement priorites
      implement and test equality comparison
      add two TODOs
      immediate addition for myint
      clean up operator definitions a bit
      implement generic two-sided binary op
      slightly less messy binary op definition
      fix copy initialization
      test mixed binary operations
      rename and_c to and_v
      fix merging of empty tuples
      implement temporary-efficient binary ops
      break some very long lines
      implement string conversion for mpz
      implement ordering of mpz
      add conversion rule, test it with myint
      add conversion to mpz
      Test initialization and assignment of mpz.
      implement and test binary arithmetic operations
      implement and test unary expressions
      implement basic arithmetic for mpz
      add convenience macros
      implement standard functions
      implement some more functions for mpz
      document helper macros
      Remove lazy return type from evaluation rules.
      implement and test lazy fac and bin for mpz
      fix and test initialization by lazy expression
      implement and test +=, *=, etc
      test the number of temporaries needed for evaluation of mpz expressions
      fix bug in tuple merging
      fix a bug in tuple merging
      Fix bug in back_tuple.
      optimize temporary usage of (lazy) op (lazy)
      remove now unnecessary const_cast
      WIP: use ternary operators
      implement submul, a*b + c
      add missing tests
      optimize += and -= using ternary operations
      start refactoring
      move ternary_helper to evaluation_tools.h
      slightly rearrange prototype.h
      support more compiler versions
      extend comment to ternary_helper
      Change requirements on underlying data types.
      test and fix two shortcomings in evaluate_2
      rename mpz to fmpzxx
      Add primitive forwarding.
      Another attempt at view types.
      Working references, finally.
      start padicxx class
      start fmpqxx
      Fix a bug in fits_into_slong.
      Implement shift ops; fix bugs.
      Fix a bug with cross evaluation.
      more padic code
      Improve is_expression trait.
      Start a generic vector class
      get rid of erroneous vector temporaries
      Start unification of concrete classes
      move ternary expression definition to flint_classes
      transfer padicxx over to the new system
      fix bug in greedy fmpzxx functions
      extend fmpzxx
      revise file/directory structure
      add all functions to fmpzxx.h
      document fmpzxx
      Add flintxx example.
      more documentation
      add compiler error diagnostics test
      add another compiler error test
      and a few more tests
      Extend fmpqxx.
      Finish fmpqxx except for summation
      complete padicxx (except for documentation and TODOs)
      document padicxx
      complete fmpzxx except for CRT and bit packing
      implement swap for padicxx/fmpqxx
      implement make install for flintxx
      start fmpz_polyxx
      start fmpz_polyxx (up to and including 13.19)
      more fmpz_polyxx
      Add Enable parameter to binary_expression, and similar.
      "finish" fmpz_polyxx (to some extent...)
      some fixes for padic references
      start fmpq_polyxx (up to and including 17.20)
      Finish fmpq_polyxx.
      wrap fmpz_poly_q
      improved tuple filling
      Start fmpz_matxx.
      fix bug after last commit
      ltuples, first version
      ltuples, v2
      getters for ltuple
      WIP: lazy functions with >2 args
      add codegen test for mat
      add codegen test for poly/ltuple
      add a ternary function test
      update fmpzxx to the new tools
      update fmpz_polyxx to new tools
      update fmpq_polyxx to new tools
      extend/fix codegen test
      Implement ltuple argument ignoring
      add lazy num and den to fmpqxx
      add lazy den to fmpq_polyxx
      add lazy num/den to fmpz_poly_qxx
      add lazy get_coeff/lead to fmpz_polyxx
      add member functions to fmpzxx
      add member functions to fmpq_polyxx
      add member functions to fmpqxx
      add member functions to fmpz_poly_qxx
      add member functions to fmpz_polyxx
      add member functions to padicxx
      Fixes to documentation of nmod_poly.
      incorporate Bill's notes on documentation
      Add forwarded member functions to documentation
      Switch over create_doc to a parser generated by leg.
      fix typo
      improve leg grammar to allow operator()
      improve leg grammar to allow operator()
      start documenting ltuples
      rename "lazy tuple" to "ltuple" in docs
      document ltuple return types
      document unified coefficient access
      Fix a bug in ternary ops with lhs reference types.
      fix temporary alloc bug in ltuple
      "finish" (for now) and document fmpz_matxx
      add (start) nmodxx class
      document nmodxx
      start nmod_polyxx
      extend nmod_polyxx
      Implement reference types for nmodxx.
      Extend nmod_polyxx.
      Further extend nmod_polyxx.
      Allow subsections in documentation.
      document nmod_polyxx
      add codegen tests for nmod_polyxx
      simplify definition of matrix classes
      start nmod_matxx
      finish nmod_matxx (for now)
      document nmod_poly_mat
      add codegen test for nmod_matxx
      add missing file
      add nmod_poly_matxx class
      document nmod_poly_matxx
      Add "macro FOBAR" to leg grammar.
      start fmpz_mod_polyxx
      Fix create_doc when file contains tabs.
      Add missing inline versions of ...
      write fmpz_mod_poly class
      document fmpz_mod_polyxx
      fix const correctness problems in arith
      fix const correctness problems in arith
      Implement and document the arithxx module
      implement, test and document fmpz_poly_matxx
      remove most "type prefixes" (mat_solve, etc)
      add padic_poly, padic_mat, qadic to documentation
      rename poly_2norm to twonorm
      add perm to manual
      implement and document fmpq_matxx
      add fmpz_mod_poly_factor to the manual
      implement and document fmpz_factorxx
      implement and document fmpz_poly_factorxx
      implement and document nmod_poly_factorxx
      implement and document fmpz_mod_poly_factorxx
      fix make install for flintxx
      fix unsafe coefficient access
      unify modular reduction interfaces already implemented
      implement support for fourary and fiveary expression templates
      implement CRT for fmpzxx
      implement multi_mod, multi_CRT for fmpzxx
      fix const correctness problem with fmpz_mat_multi_*_precomp
      implement CRT for fmpz_matxx
      implement CRT for fmpz_polyxx
      make 4-argument fmpqxx::reconstruct lazy
      Brush up fmpq_matxx reduction/reconstruction
      add static randtest functions to fmpz_matxx
      implement integer matrix conversion for fmpq_matxx
      implement construction from string in nmod_polyxx
      add num_colwise
      implement construction from string for fmpz_poly_qxx, fmpq_polyxx
      implement set_zero() etc for some classes
      add missing zero(), one() and randtest() interfaces
      add row reduction / lu decomposition interfaces to all matrices
      implement radix conversion
      implement hensel lifting for fmpz_polyxx
      Fix const correctness problem in fmpz_poly_mat.
      implement prod for fmpz_poly_matxx
      add solve_fflu_precomp for fmpz_poly_matxx
      add solve_fflu_precomp for nmod_poly_matxx
      implement various four-argument nmod_polyxx functions
      add bit_pack, bit_unpack to fmpzxx
      start implementation of revamped padic classes
      add missing extern "C" directives
      add functionality to padic_polyxx and test it
      implement and test padic_matxx
      document padic_polyxx and padic_matxx
      fixup fmpzxx remove and padic_matxx one
      add missing extern "C"
      implement, document and test qadicxx
      add support for c-style io to core library
      add print, print_pretty etc
      document new printing functions
      add comments and fix some compilation errors
      add hack for g++-4.4
      start better documentation of internals
      fix unified coefficient access bugs
      explain modulus lookup
      more internals documentation
      Merge branch 'trunk' into gsoc
      fix profiler doc latex
      add missing fmpzxx functions
      fix fmpzxx(str) init bug
      add example programs, fix a few bugs
      Fix a bug where including padic_polyxx.h and qadicxx.h would not compile
      document padic internals
      say a word about vectors
      update fmpzxx documentation
      update fmpz_polyxx documentation
      update fmpqxx documentation
      split documentation of fmpz_matxx and fmpz_poly_qxx
      split documentation of fmpq_polyxx
      brush up docs a bit more
      document standard methods
      start documenting convenience macros
      further internals documentation
      fixes for 32 bit build
      fixup documentation
      fix an ltuple TODO
      fixes suggseted by bill
      Merge branch 'trunk' of https://github.com/wbhart/flint2 into gsoc
      slightly update original design doc
      revamp tests slightly
      fixup documentation
      fix an ltuple TODO
      fixes suggseted by bill
      slightly update original design doc
      revamp tests slightly

William Hart (1265):
      Initial FLINT-Lite infrastructure and longlong.h for x86_64 only.
      Actually added longlong.h.
      Added tests for add_ssaaaa and sub_ddmmss.
      Added test code for count_leading_zeros and count_trailing_zeros.
      Added test code for umul_ppmm and smul_ppmm.
      Added test code for udiv_qrnnd, t-udiv_qrnnd_preinv and t-sdiv_qrnnd.
      Added code for basic profiler.
      Added documentation for longlong.h.
      Added documentation for profiler.
      Added profiles for udiv_qrnnd and udiv_qrnnd_preinv.
      Added timings for longlong functions.
      Added random functions and documentation.
      Added documentation and test code for addmod and submof which are defined
      Added missing ulong_extras.h
      Added code, tests and docs for mod_precomp, mod2_precomp and mod2_preinv.
      Added code docs and test for divrem2_precomp.
      Added docs, test and code for mulmod_precomp, mulmod2_preinv, ll_mod_preinv.
      Added docs, test and code for gcd.
      Added code, tests and docs for xgcd.
      Added code, tests and docs for gcdinv and invmod.
      Added code, tests and docs for sqrt and sqrtrem.c.
      Added code, tests and docs for is_square.
      Added code, tests and docs for jacobi.
      Added code, tests and docs for pow.
      Added code for powmod_precomp and powmod2_preinv and test code and docs for
      Added code, tests and docs for is_perfect_power235.
      Added code, tests and docs for compute_primes.
      Added tests, docs and code for remove and remove2_precomp.
      Added code, tests and docs for is_oddprime_small.
      Added code, tests and docs for is_oddprime_binary.
      Inserted docs and code for factor_insert and docs, test and code for
      Added code, tests and docs for factor_power235.
      Added code, tests and docs for is_probabprime_fermat.
      Added code, tests and docs for is_probabprime_fibonacci.
      Added code, tests and docs for is_probabprime_lucas.
      Added code, tests and docs for is_probabprime_BPSW.
      Added code, tests and docs for is_probabprime.
      Added code, tests and docs for is_prime_pseudosquare.
      Added docs and code for factor_partial1 and docs, test and code for factor_trial_gcd.
      Added code, tests and docs for is_prime_pocklington.
      Added code, tests and docs for factor_one_line.
      Added code, tests and docs for factor_SQUFOF.
      Added code, tests and docs for is_prime.
      Added code, tests and docs for factor.
      Added profiles for mod_precomp, mod2_precomp and mod2_preinv.
      Added profiles for mulmod_precomp and mulmod2_preinv.
      Added timings file for ulong_extras functions.
      Added code test and documentation for is_strong_probabprime_precomp and
      Added todo.txt.
      Removed some unnecessary blank lines.
      Added a new fmpz directory ready to take files.
      Added the basis of an fmpz module, including basic type and promotion/demotion.
      Added a randtest function and used it in t-fmpz.c.
      Made fmpz_randtest change the number of bits randomly up to the limit.
      Moved fmpz_reentrant.c into a link directory so it won't get compiled always.
      Added documentation for randtest and the reentrant version of fmpz.
      Added partial trial factoring routine to be used by Pocklington primality test.
      Added partial factoring routine which factors up to a limit,
      Switched to using n_factor_partial in n_isprime_pocklington.
      Removed n_factor_partial1 function, which was a hack.
      Removed n_factor_trial_gcd which was a hack.
      Updated todo.txt.
      Changed the prototype of _fmpz_new_mpz() to make it slightly faster and added
      Corrected the docs for the new _fmpz_new_mpz() prototype.
      Documented the new fmpz_single.c file.
      Added _fmpz_cleanup() function to fmpz_reentrant and documented it for both
      Updated todo.txt.
      Renamed some fmpz files.
      Added fmpz_init/init2/clear functions and associated docs and test code.
      Fixed some whitespace issues.
      Added get/set_ui/si functions, test code and docs to fmpz module and updated
      Added get/set_mpz and test code and docs to fmpz module.
      Added set, docs and test code to fmpz module.
      Fixed a leak in the get_mpz test.
      Added fmpz_equal, docs and test code, and inline fmpz_print function.
      Added fmpz_swap, test code and docs.
      Added docs for fmpz_zero and fmpz_print.
      Make it all compile.
      Make it output a shared library.
      Fixed a library conflict.
      Added fmpz_cmpabs, docs and test code.
      Corrected a mistake in cmpabs documentation.
      Added fmpz_cmp, docs and test code.
      Added fmpz_size, docs and test code.
      Added fmpz_sgn, docs and test code.
      Added fmpz_bits, docs and test code.
      Added code and documentation for fmpz_read, and updated todo.txt.
      Added fmpz_neg, docs and test code.
      Added fmpz_abs, docs and test code.
      Added fmpz_add, docs and test code.
      Added fmpz_sub, docs and test code.
      Added fmpz_mul_ui, docs and test code.
      Corrected the fmpz_mul_ui doc.
      Added fmpz_mul_si, docs and test code.
      Added fmpz_mul, docs and test code.
      Added fmpz_mul_2exp, docs and test code.
      Added a missing #include to read.c.
      Added some more diagnostic printing to t-mul_2exp.c.
      Added fmpz_fdiv_q_2exp, docs and test code.
      Added fmpz_add_ui, docs and test code.
      Added fmpz_sub_ui, docs and test code.
      Added some more diagnostic info to t-mul_ui.c.
      Added some more diagnostic info to t-mul_si.c.
      Added fmpz_addmul_ui, docs and test code.
      Small spacing correction.
      Added fmpz_submul_ui, docs and test code.
      Corrected test code for fmpz_addmul_ui.
      Corrected test code for fmpz_submul_ui.
      Added fmpz_addmul, docs and test code.
      Added fmpz_submul, docs and test code.
      Added fmpz_pow_ui, docs and test code.
      Added an extra clarification to docs for fmpz_pow_ui.
      Added fmpz_mod_ui, docs and test code.
      Added fmpz_is_zero and fmpz_randtest_not_zero, and docs.
      Added fmpz_mod, docs and test code.
      Added missing const in prototype of fmpz_is_zero.
      Added fmpz_gcd, docs and test code.
      Updated todo.txt.
      Fixed some cut and paste errors (y sustituted for x in license).
      Changed a long to ulong.
      Added fmpz_invmod, docs and test code.
      Added fmpz_divexact, docs and test code.
      Added fmpz_cdiv_q, docs and test code.
      Slight speedup to fmpz_pow_ui when base is 0 or 1.
      Added fmpz_fdiv_q.c.
      New function and weak test fmpz_get_d_2exp
      Some minor cleaning up of get_d_2exp.c.
      Minor addition to doc for fmpz_get_d_2exp.
      Made a stronger test for get_d_2exp.
      Added profiling for BPSW code.
      Fixed the printing of exp in powmod tests.
      Change the order of linking in the Makefile due to me stupidly using the
      Update to todo.txt.
      Added new fmpz_poly module and makefile.
      Added basic memory management functions.
      Added documentation for basic memory management functions and made a small
      Made make check deal with single modules, added fmpz_poly_randinit/test/clear
      Added documentation of fmpz_poly_randinit/clear.
      Added fmpz_poly_get/set_coeff_si and test code and docs.
      Added fmpz_poly_get/set_coeff_ui, test code and docs.
      Added fmpz_poly_get/set_coeff_fmpz, test code and docs.
      Added a basic fmpz_poly_print function and documentation.
      Added fmpz_poly_set, fmpz_poly_equal, test code and docs.
      Fixed a memory leak in the test code.
      Added fmpz_poly_swap, test code and documentation.
      Added fmpz_poly_neg, documentation and test code.
      Added fmpz_poly_add/sub, documentation and test code.
      Added fmpz_poly_scalar_mul_ui, test code and docs.
      Added fmpz_scalar_mul_si, test code and docs.
      Added fmpz_poly_scalar_mul_fmpz, docs and test code.
      Added fmpz_poly_shift_left/right, test code and docs.
      Added fmpz_mul_classical.
      Added test code for mul_classical.
      Fixed a missing const in sub.c.
      Fixed a missing const.
      Fixed a bug in random polynomial code.
      Changed the interface to the fmpz_poly_add/sub functions.
      Changed the interface of fmpz_poly_mul_classical.
      Finished test code for fmpz_poly_mul_classical.
      Added _fmpz_scalar_mul_fmpz.
      Made some improvements to scalar_mul_fmpz and used it in mul_classical.
      Added fmpz_poly_scalar_addmul_fmpz and used it in mul_classical.
      Minor cleanup of scalar_addmul_fmpz.
      Updated todo.txt.
      Added an fmpz_vec module.
      Added _fmpz_vec_zero and used it.
      Added fmpz_vec_copy/neg and used them.
      Added fmpz_vec_scalar_mul_si and used it.
      Moved _fmpz_poly_scalar_mul_fmpz to _fmpz_vec_scalar_mul_fmpz and used it.
      Added fmpz_vec_add/sub/scalar_addmul_si/fmpz and used them.
      Updated todo.txt.
      Added classical low and high products.
      Added classical middle product.
      Added _fmpz_vec_clear and fmpz_poly_mul_karatsuba.
      Cleaned up the documentation in mul_karatsuba and removed an
      Sped up karatsuba.
      Fixed numerous memory leaks and bugs and implemented mullow_karatsuba_n.
      Added mulhigh_karatsuba_n.
      Added an fmpz_mat directory and blank document file.
      Added makefile for fmpz_mat.
      Added LLL directory, makefile and empty doc.
      Added scalar_addmul_si_2exp and test code.
      Switched over to a better init/clear system for vectors.
      Added a missing file.
      Added test code and some missing defines for init/clear.
      Added _fmpz_vec_print, _fmpz_vec_equal and _fmpz_vec_randtest/init/clear
      Added test code for _fmpz_vec_add/sub.
      Added test code for _fmpz_vec_copy/equal.
      Added test for _fmpz_vec_neg.
      Added test code for scalar_mul_si.
      Added fmpz_vec.txt, fixed a bug in fmpz_mul_2exp and wrote _fmpz_vec_mul_2exp
      Made test for scalar_addmul_ui_2exp more useful.
      Added test for scalar_addmul_si,
      Added test code for scalar_addmul_fmpz.c.
      Added fmpz_mat.h and clear and init functions with test code.
      Corrected the docs.
      Added fmpz_mat_print.
      Added fmpz_mat_randtest.
      Added fmpz_randbits and fmpz_mat_randbits and docs.
      Added fmpz_mat_randintrel.
      Added fmpz_mat_randsimdioph.
      Added fmpz_mat_randntrulike.
      Added a second ntrulike random matrix generator.
      Added fmpz_randm.
      Added randclear and randinit functions for fmpz_mat.
      Added random ajtai matrices.
      Added Stehle and Cade's copyright to the files and a note to todo.txt.
      Added mpfr_mat module, init/clear and test code.
      Added mpfr_vec module, init/clear and test.
      Added a GSO function for LLL. Needs simplifying and test code.
      Added an mpfr_vec module, scalar product function and GSO_mpfr function for
      Made some changes to library paths for personal use.
      Conditionally defined mpn_zero.
      Made a more careful factoring profile.
      Added a basic mpfr_poly module with init/clear/realloc/fitlength and randinit/
      Added a Fast Hartley Transform and some relatively crappy test code.
      Added FHT convolution code and moved revbin into ulong_extras module. Added
      Added classical multiplication routine and proper polynomial multiplication
      Sped up the Fast Hartley Transform code by precomputing twiddles.
      Fixed a bug in scalar_mul_mpfr, added scalar_mul_2exp and added code to
      Added a version of multiplication with "newton scaling" and cleaned up
      Cleaned up test code for mul_classical vs mul_FHT.
      Wrote some test code for mpfr_poly_mul and fixed test code for other mul
      Added bit packing and unpacking code for fmpz coefficients and test code.
      Added polynomial bitpacking and unpacking code, fixed some bugs in the
      Added mul_KS and test code.
      Added fmpz_randtest_unsigned, fmpz_poly_randtest_unsigned, fmpz_poly_max_bits,
      Basic memory management routines and some test code for an fmpz_mpoly
      Added heap mul code and test function.
      Added heap multiplication routine and fixed bugs in fmpz_single.c.
      Fixed a bug in mul_heap.
      Added a special case or two.
      Fixed a bug in mul_heap.
      A slight speedup of mul_heap.
      Added new version of ll_mod_preinv and a new function lll_mod_preinv,
      Added a basic nmod_poly module, including an init/realloc/clear test
      Missed a bit from init.c.
      Changed todo.txt.
      Additional item in todo.txt.
      Added an nmod_vec module, some reduce macros (moved from nmod_poly) and a
      Added nmod_vec_add/sub/neg functions and a randtest function and test code.
      Added _nmod_vec_scalar_mul, test and profile code.
      ulong -> long, mp_limb_t * -> mp_srcptr/mp_ptr as suggested by Jason Moxham.
      Added docs for nmod_vec functions.
      Added a new roadmap.txt setting out functions that are missing and
      Added some missing fmpz_poly functions to roadmap.txt.
      Added an fmpz_poly_mul and test code and made some additions to the roadmap.
      Added mullow_n and mulhigh_n functions and test code.
      Merged all the ulong_extras docs into a single file.
      Minor spacing edit.
      Merged all the fmpz docs into a single file.
      Minor spelling error in todo.txt.
      Added basic neg, add and sub functions and test code.
      Added scalar_mul and test code.
      Added _nmod_vec_scalar_addmul, nmod_poly_mul_classical and test code.
      Added a roadmap.txt file.
      Added bit packing and unpacking and test code and changed some of the
      Added _nmod_vec_max_bits, nmod_poly_max_bits and nmod_poly_mul_KS and test
      Added mullow_classical and test code.
      Added mulhigh_classical and test code.
      Added mul, mullow_n and mulhigh_n and test code.
      Updated roadmap.txt.
      Added basecase division, divide and conquer division and test code.
      Fixed a bug in ll_mod_preinv and add nmod_poly_divrem_basecase and test code.
      Added a basic module for fmpq_polys, i.e. polynomials over QQ. No functions
      Fixed an uninitialised data bug in fmpz_gcd.
      Added fmpz_fdiv_qr and fmpz_poly_pseudo_divrem_basecase.
      Added the beginnings of an nmod_mpoly module.
      Merge commit 'sebastian/seb' into roadmap
      Fixed a bug in fmpz_poly_mullow_KS found by Fredrick.
      Merged Fredrik's prime_pi function and primorial computation function + patches.
      Avoided some data copying in fmpz_primorial, used a less pessimistic bound on
      Modified the comments for the limb multiplication function and added my
      Merge commit 'sebastian/seb' into roadmap
      Fixed a few C99'isms.
      A few superfluous variables removed.
      Merge commit 'fredrik/arith' into roadmap
      Merge commit 'fredrik/matrix' into roadmap
      Merge commit 'daniel/nmod_mpoly' into nmod_mpoly
      Added some experimental tags to dirs.
      Merge commit 'fredrik/matrix' into roadmap
      Added profile for nmod_mat_mul.
      Modified p-mul profile.
      Added a todo regarding probable primality tests up to 2^64.
      Merge commit 'fredrik/matrix' into roadmap
      Merge commit 'fredrik/matrix' into roadmap
      Updated Makefile for new MPIR and MPFR. You can ignore this commit.
      Fixed bugs in fmpz_fdiv_qr/sqrtrem where a pointer was being reatained whilst
      Merge commit 'fredrik/matrix' into roadmap
      Merge commit 'sebastian/seb' into roadmap
      Removed a pile of experimental stuff and corrected some fmpz_poly_(f)print_pretty
      Adde nmod_poly_get/set_coeff_ui and test code, and put an int on on of the
      Added nmod_poly_to/from_string and test code and docs.
      Changed some %lu's to %ld, got rid of trailing spaces on zero polynomial
      Added nmod_poly_fread/fprint, docs and test. Fixed order of operands in other
      Added length, degree, modulus accessor functions to nmod_poly, plus docs.
      Added nmod_poly_is_zero and docs.
      Added nmod_poly_reverse + docs + tests.
      Corrected a couple of comments in test code.
      Added test code for nmod_poly_neg.
      Added nmod_poly_make_monic, test code and docs.
      Added nmod_poly_shift_left/right and test code and docs.
      Added nmod_poly_derivative and test code and docs.
      Added nmod_poly_evaluate, tests and docs. Added an aliasing test for derivative.
      Added nmod_poly_compose based on Horner's method.
      Added underscore method for nmod_poly_reverse, and removed a couple of
      Made underscore method for nmod_poly_make_monic.
      Added underscore method for nmod_poly_derivative.
      Added underscore method for nmod_poly_shift_left.
      Added underscore method for nmod_poly_shift_right and made some minor typo
      Added lots of consts that were missing and corrected a prototype in the docs.
      Added underscore method for nmod_poly_evaluate.
      Removed and unused variable and gave a helper function a double underscore.
      Renamed compose to compose_horner.
      Added an underscore method for nmod_poly_compose_horner and added an MP_PTR_SWAP
      Added an underscore method for nmod_poly_mul and used it in compose_horner.
      Added nmod_poly_mullow_KS and tests and docs.
      Added underscore method for nmod_poly_mullow_n.
      Added nmod_pow_binexp, nmod_pow by copying from fmpz_poly module. Added tests
      Added nmod_poly_pow_trunc, nmod_poly_pow_trunc_binexp, test code and docs.
      Merge commit 'sebastian/seb' into roadmap
      Added compose_divconquer, test code and docs.
      Merge commit 'sebastian/seb' into roadmap
      Fixed a bug in fmpz_poly_compose_divconquer.
      Added nmod_poly_compose, test code and docs.
      Added nmod_poly_divrem_divconquer_recursive and nmod_poly_divrem_divconquer
      Added nmod_poly_div_basecase, tests and docs and cleaned up divrem_basecase
      Merge commit 'sebastian/seb' into roadmap
      Fixed Makefile, better cutoff for divrem_divconquer and cleanup of test code.
      Added nmod_poly_div_divconquer, tests and docs.
      Added nmod_poly_divrem and nmod_poly_div.
      Merge commit 'sebastian/seb' into roadmap
      Added nmod_poly_invert_newton_basecase, tests and docs.
      Added nmod_poly_invert_newton and tests and docs.
      Changed invert_newton tuning.
      Made nmod_poly_invert_newton_basecase into nmod_poly_invert_series and renamed
      Renamed invert_newtom to invert_series_newton throughout and removed an
      invert_series => inv_series throughout.
      Added nmod_poly_div_series, tests and docs.
      Added div_newton, tests and docs.
      Set the div_newton corssover really high.
      Added nmod_poly_divrem_newton, tests and docs and used it in nmod_poly_divrem.
      Fixed some tuning bugs in mul functions and changed crossover for div and divrem.
      Added gcd_euclidean, tests and docs.
      Added comment about space requirements for gcd_euclidean.
      Merge commit 'sebastian/seb' into roadmap
      Merge commit 'sebastian/seb' into roadmap
      Merge commit 'fredrik/master' into roadmap
      Added proper randstate to ulong extras functions and tests.
      Added flint_radnstate_t's to fmpz module.
      Switched to flint_rand_t in fmpz_poly module.
      Switched to flint_rand_t in fmpq_poly.
      Added flint_rand_t to fmpz_vec module and top level module.
      Added flint_rand_t to nmod_poly.
      Added flint_rand_t to nmod_mat.
      Added flint_rand_t to nmod_mpoly.
      Added flint_rand_t to mpfr modules.
      Merge commit 'sebastian/seb' into roadmap
      Inserted some missing states.
      Reversed order of parameters to n_randint.
      Reverse order of parameters for n_randbits.
      Reordered parameters in nmod_vec.
      Rearranged parameters for nmod_poly.
      Rearranged params for nmod_mpoly.
      Reordered parameters in nmod_mat functions.
      Updated conding_conventions.txt.
      Added states to fmpz_mat.
      Removed duplicate prototype.
      Merge commit 'fredrik/master' into roadmap
      Changed order of params in internal _fmpq_poly_set_array_mpq.
      Renamed nmod_poly_scalar_mul to nmod_scalar_mul_ui.
      fmpq_poly_monic -> fmpq_poly_make_monic.
      Changed order of params on nmod_poly_bit_unpack.
      nmod_poly_mullow_n -> nmod_poly_mullow,
      nmod_poly_mulhigh_n -> nmod_poly_mulhigh.
      Rearranged params for nmod_poly_pow/trunc/binexp.
      inv_newton -> inv_series_newton throughout.
      nmod_poly_evaluate -> nmod_poly_evaluate_ui.
      evaluate -> evaluate_ui/fmpz, same for evaluate_horner.
      nmod_poly_scalar_mul_ui->scalar_mul_nmod, same for vec_scalar_mul.
      nmod_vec_scalar_addmul -> nmod_vec_scalar_addmul_nmod.
      nmod_poly_evaluate_ui -> nmod_poly_evaluate_nmod.
      Switched parameter order in _nmod_poly_evaluate_nmod>
      Rearrange params in _nmod_vec_scalar_mul_nmod and _nmod_vec_scalar_addmul_nmod.
      Update docs for rearrangement of params.
      Underscores on nmod_vec_init/free.
      Rudimentary configure/makefile system.
      Merge commit 'sebastian/seb' into roadmap
      Merge commit 'fredrik/master' into roadmap
      Switched to sh instead of bash and made a simplification.
      Use top source directory instead of prefix for make check library.
      Made configure respect CC, CFLAGS and used FLINT_TUNE and made the dependencies
      Added make install.
      Added make distclean and removed a few more things with make clean.
      Made profile code compile and fixed a few remaining errors in compilation.
      Remerged Fredrik't todo.txt.
      Removed some experimental modules.
      Removed an unneeded file.
      Added fallback routines for longlong.h.
      Added missing file.
      Fixed a 32 bit bug in remove2_precomp.
      Fixed a few more 32 bit bugs.
      Hopefully fixed a bug in factor_SQUFOF.
      Added some notes about code pulled from GMP.
      Damn, missed something.
      Updated docs.
      Added lots of copyrights, author information and AUTHORS file.
      Added NEWS file and a couple of documentation corrections.
      Added README.
      Added INSTALL file.
      Corrected some spelling.
      Corrected some spelling.
      Added copyrights.
      Added copyrights.
      Mispeeling.
      Mispeeling.
      Mispeeling.
      Mispeeling.
      Merge commit 'sebastian/seb' into flint-2.0
      Merge branch 'flint-2.0'
      Added gitattributes.
      Corrected some Copyrights.
      Replaced missing file.
      Replaced missing file.
      Merge commit 'sebastian/seb'
      Corrected spelling of Fredrik's name.
      Merge commit 'fredrik/master'
      Corrections to docs.
      Added support for building a static library.
      Made changed so that build directories are separate.
      Make check cleans up better now.
      Made the examples compile.
      Updated version to 2.1.0 and updated NEWS file.
      Made parser complaints go away.
      Merge commit 'fredrik/master'
      Removed memory leak from t-crt.c.
      Fixed screwed up makefile.
      Added dummy symbol to prevent warning.
      Made dependency checking better.
      Corrected a bug in Makefile.in.
      Fixed make examples.
      Added make dist.
      Workaround for bug in fmpz_poly_fprint_pretty and an implementation of
      Added initial version of heuristic gcd and test code and docs.
      Fixed a bug in fmpz_poly_gcd_heuristic when one of the polys is linear.
      Added a new test case.
      Fixed broken test code.
      Fixed the bug in gcd_heuristic at last.
      Added fmpz_poly_divides function, test code and docs.
      Added mpn_gcd_full function, docs and test code.
      Moved mpn_divides out to mpn_extras and added test code and docs and cleaned
      Removed an unneeded trace.
      Added gcd_modular, test code and docs.
      Merge commit 'sebastian/seb'
      Merge commit 'sebastian/seb'
      Switch on fmpz_poly_gcd_modular in fmpz_poly_gcd.
      Added a convention regarding module conversions.
      Added documentation for functions that were missing it, changed the name of
      Added test code for _fmpz_vec_get/set_nmod_vec.
      Added test and updated docs for fmpz_poly_2norm_normalised_bits.
      Added fmpz_poly_xgcd_modular function (no tests or docs yet).
      Added nmod_poly_xgcd_euclidean, test code and docs. Also added a couple of
      Switched to using MPN_NORM in nmod_poly_gcd_euclidean.
      Added fmpz_poly_xgcd_modular, test code and documentation. Also make
      Added _nmod_poly_xgcd/gcd and nmod_poly_xgcd/gcd wrappers and used those
      Removed an unused variable.
      Fixed a make install bug.
      Fixed a build bug to do with standard paths.
      Added some guards for system headers.
      Merge commit '0b0c219' into trunk
      Removed an unused variable and fixed an uninitialised variable.
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Updated NEWS file.
      Merge commit 'fredrik/trunk' into trunk
      Changed release number to 2.2 in make dist.
      Merge commit 'fredrik/trunk' into trunk
      Added MACRO to docs for mpn_extras macros.
      Added info to NEWS about new mpn_extras functions and macros.
      Merge commit 'fredrik/trunk' into trunk
      Fixed a handful of typos in the fmpq documentation.
      Minor wording change in fmpq_mat documentation.
      Turned off string space bucket chars in docs and very minor edit to fmpz_poly_q
      Added back Fredrik's better fmpq intro.
      Fixed some typos in the fmpz_poly_mat docs.
      Minor changes to fmpz_mat docs.
      Some minor typos fixed in padic docs.
      Merge commit 'fredrik/trunk' into trunk
      Made some changes to fmpz_poly_docs.
      Fixed some spacing issues in the mpn_extras docs.
      Added intro and example for ulong_extras module.
      Added intro, simple example and struct definition for nmod_poly docs.
      Added some information about n_mod_precomp vs n_mod2_precomp, etc.
      Added some extra info and corrections to the frontmatter.
      Added additional credit.
      Added credit to AUTHORS file.
      Additional change to make dist.
      Added credits for Jan Tuitman.
      Implemented the improved Lehman algorithm as per the suggestion of the referee
      Corrects a typo in the manual.
      Merge commit 'sebastian/trunk' into trunk
      Fixed an interface error in fmpz.h, reported by bsmith.
      Changed the profiler to start at 4 iterations.
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Fixed a bad prototype.
      Added a tiny quadratic sieve. Still requires some work to fix the following:
      Fixed a few bugs after merge and disabled qsieve while we fix on 32 bit
      Added missing Makefile.
      Merge commit 'sebastian/trunk' into sebmerge
      Added temporary NEWS update for version 2.3.
      Updated make dist for 2.3.
      Updated title.tex for 2.3 release.
      Added version.c and version string to flint.h.
      Fixed the static build, thanks to Dan Grayson for supplying a patch.
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Changed an incorrect include and file mode. Contributed by Frithjof Schulze.
      Fixed a tpyo in an exception message. Contributed by Frithjof Schulze.
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Added NTL-interface guff to configure and Makefile.in.
      Merge commit 'fredrik/trunk' into trunk
      Made NTL interface compile and fixed a minor interface bug in nmod_poly.h in
      Fixed some bugs which I mysteriously missed in the NTL-interface.
      Added docuemntation for NTL-interface.
      Made NTL interface work, fixed lots of build system errors.
      Merge commit 'sebastian/trunk' into trunk
      Added fft module and split/combine_bits functions, test code and docs.
      Added normmod_2expp1, butterfly_lshB/rshB, docs and test code.
      Added mul/div_2expmod_2expp1, docs and test code.
      Added radix2 fft/ifft and truncated versions.
      Added truncated sqrt2 transforms and test code.
      Added multiplication code using truncated sqrt2 transforms, plus test and
      Added an fmpz_poly_factor module and moved some stuff over.
      Added fmpz_poly_factor to modules list.
      Merge commit 'andy/hensel_branch' into trunk
      Fixed up compilation after moving the fmpz_poly_factor stuff.
      Moved adjust_sqrt2 out to its own file. Added lots of documentation of
      Added documentation of mul_truncate_sqrt2.
      Fixed numerous bugs and added the big transforms, docs and test code.
      Added big multiplication routine and test code.
      Added negacyclic transforms, docs and test code. Updated docs a bit.
      Made a failing test pass.
      Added negacyclic fft multiplication and test code and docs.
      Removed reference to unneeded mpir functions.
      Added README.
      Merge commit 'fredrik/trunk' into trunk
      Added additional info to README.
      Correction to README.
      Added merged inner covolutions.
      Updated timings.
      Added more timings.
      Added test code for remaining functions.
      Switched a want/got in t-adjust.
      Added tuning table, multiplication wrapper and test code.
      Corrected a copyright date.
      Updated README.
      Fixed incorrect table access.
      Further correction to copyright dates.
      Added tuning code for fft and make tune options to makefiles.
      Dealt with squaring properly.
      Removed addsub_n.
      Fixed some fft bugs and added fmpz_poly_mul_SS and associated functions, tests
      Removed an unnecessary normalisation.
      Fixed limbs for very large coeffs.
      Removed unnecessary aliasing code.
      Moved some code that should be run conditionally.
      Changed the way the number of limbs is selected for Nussbaumer.
      Fixed up tuning code.
      Got rid of references to sumdiff_n, switched to using FLINT_CLOG2.
      Fixced profiling code and switched mul_SS on in mul.c.
      Added mullow_SS, fixed crossovers for mul_SS based on theory.
      Removed code duplication for mul_SS.
      Fixed a bug in mullow.c and major performance issue in convolution.c.
      Retuned mul functions.
      Merge commit 'sebastian/trunk' into trunk
      Call SS from sqr functions.
      Allowed delta_qexp to work with long instead of just int.
      Fixed tuning again.
      Removed an unneeded example.
      Merge commit 'fredrik/trunk' into trunk
      Cleaned up mul_SS a little.
      Fixed some bugs in the mul functions.
      Merge commit 'frithjof/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'sebastian/trunk' into trunk
      Fixed a bug in gcd_heuristic.
      Fixed a comment in nmod_poly.h.
      Added n_mod2_preinv todo.
      Added --reeentrant and --single flags to configure.
      Fixed an awful bug in fmpz_sqrtmod.
      Documented the --single, --reentrant configure options.
      Merge commit 'frithjof/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Renamed a profile file and added multiplication profile for nmod_poly.
      First commit of n_sqrtmod_primepow. No docs yet and code doesn't check if a
      Made sqrtmod_primepow reject nonsquares.
      Added documentation for n_sqrtmod_2/primepow.
      Added function for computing square roots modulo an arbitrary (factored)
      Added some inline versions of some static inline functions for languages that
      Merge commit 'curtis/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Fixed some nasty bugs in n_is_prime_pocklington.
      Fixed a demotion bug in fmpz/setbit.c.
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'fredrik/trunk' into trunk
      Fixed configure bug with latest version of MPFR.
      Removed some scary messages from configure test "failures".
      Reverted to two messages for popcount tests.
      Only run popcount native test on x86_64.
      Another mpfr configure bug fixed.
      Added missing newline.
      Added ia64 assembly code.
      Another missing newline.
      Another missing newline.
      Added ARM assembly code.
      Merge commit 'fredrik/trunk' into trunk
      Attempt to fix a macro error.
      Another missing newline.
      More newlines.
      More newlines.
      Another newline.
      Another newline.
      Another newline.
      Standard library guards.
      Added pthread library to link.
      Fixed some bugs in n_sqrtmod reported by Fredrik Johansson.
      Merge commit 'fredrik/trunk' into trunk
      Corrected typo in ulong_extras docs.
      Fixed a bug in the mod_precomp test code.
      Fixed a typo in the documentation for fmpz_poly.
      Fixed an FFT bug.
      Fixed the fft test code and added lots of cases that will trigger corner cases.
      Merge branch 'trunk' into padic
      Merge commit 'sebastian/trunk' into trunk
      Merge commit 'sebastian/padic' into padic
      Merge branch 'trunk' into padic
      Replace free by flint_free.
      Merge branch 'trunk' into padic
      Merge commit 'fredrik/trunk' into trunk
      Added tree build/init/free functions to fmpz_mod_poly and profiling code for
      Added gettimeofday for MinGW.
      Corrected link order of libraries.
      Removed unneeded -lflint.
      Major overhaul of the Makefiles to speed up parallel make, etc.
      Removed long long constants.
      Added missing extern.
      Another attempt at gettimeofday.
      Removed unused variable.
      Attempt to fix static lib.
      Slight aesthetic change.
      Another fix for static lib.
      Propagate changes.
      Another fix for the static lib.
      Fixed mutex problem on MinGW32.
      Removed some duplicate stuff from Makefile and disabled shared build on MinGW.
      Attempt to cut out building of .lo if SHARED=0.
      Cleanup.
      Fixed NTL interface build.
      Removed unnecessary build of library files when running tests.
      Merge commit 'fredrik/trunk' into trunk
      Fixed a failing xgcd test.
      More refined dependency checking.
      Merge commit 'fredrik/trunk' into trunk
      Fixed a make bug.
      Fixed another build bug.
      Fixed third makefile bug.
      Reverted a change.
      Hopefully a corrected makefile.
      Merge commit 'sebastian/trunk' into trunk
      Merge branch 'trunk' into padic
      Merge branch 'trunk' into padic
      Added 32 bit tuning values.
      Merge branch 'trunk' into padic
      Have configure select 32 or 64 bit tuning params for fft and clean up configure.
      Merge branch 'trunk' into padic
      Some spacing.
      Merge branch 'trunk' into padic
      Merge commit 'fredrik/trunk' into trunk
      Merge branch 'trunk' into padic
      Added --build option to configure.
      Merge branch 'trunk' into padic
      Allow FLINT_TUNE and FLINT_LIB to be specified by user.
      Merge branch 'trunk' into padic
      Fixed a faulty fmpz_poly_q test.
      Merge branch 'trunk' into padic
      Corrected my correction.
      Merge branch 'trunk' into padic
      A better solution for mutexes on Win32.
      Merge branch 'trunk' into padic
      Removed print/read tests on MinGW32.
      Merge branch 'trunk' into padic
      Tried to fix the prngs.
      Merge branch 'trunk' into padic
      Missed a print/read test.
      Merge branch 'trunk' into padic
      Fixed a bug in fmpz_poly_divides test code.
      Merge branch 'trunk' into padic
      Speed up fmpz_poly_xgcd_modular test.
      Merge branch 'trunk' into padic
      Fixed bug in 32 bit prng.
      Merge branch 'trunk' into padic
      Fixed bug in qsieve.
      Merge branch 'trunk' into padic
      Removed an unneeded -fPIC from top level objects.
      Merge branch 'trunk' into padic
      Fixed some bugs in qsieve.
      Adjusted tuning params for qsieve to work around a "bug".
      Merge branch 'trunk' into padic
      Fixed numerous bad bugs in the fmpz_poly_gcd_modular code.
      Merge branch 'trunk' into padic
      Merge branch 'trunk' into padic
      Fixed an aliasing bug in the fft.
      Merge branch 'trunk' into padic
      Fixed an array overrun in fft_combine_limbs/bits.
      Merge branch 'trunk' into padic
      Merge commit 'fredrik/trunk' into trunk
      Merge branch 'trunk' into padic
      Removed an unused variable.
      Merge branch 'trunk' into padic
      Corrected a copyright notice and removed an unnecessary sign check.
      Merge branch 'trunk' into padic
      No shared library on Cygwin.
      Missing newline.
      Merge branch 'trunk' into padic
      Missing newline.
      Merge branch 'trunk' into padic
      Newline.
      Merge branch 'trunk' into padic
      Skip a test on Cygwin.
      Merge branch 'trunk' into padic
      Fixed a serious reallocation bug in fmpz_sub_ui.
      Merge branch 'trunk' into padic
      Newline.
      Merge branch 'trunk' into padic
      Newline.
      Merge branch 'trunk' into padic
      Try to exclude a test on Cygwin.
      Merge branch 'trunk' into padic
      Fix a memory leak in qsieve.
      Merge branch 'trunk' into padic
      Newline.
      Merge branch 'trunk' into padic
      Removed some unneeded whitespace from Makefiles.
      Merge branch 'trunk' into padic
      Removed some unneeded whitespace from Makefiles.
      Merge commit 'fredrik/trunk' into trunk
      Merge branch 'trunk' into padic
      Attempt to get dependencies for make examples, tune, profile correct.
      Merge branch 'trunk' into padic
      Correct make dependencies.
      Merge branch 'trunk' into padic
      Fix make dependencies.
      Moved CC and CXX to where they are needed.
      Merge branch 'trunk' into padic
      Deal with n == 0 in mpn_sumdiff_n.
      Merge branch 'trunk' into padic
      Replace expr substr with awk script.
      Merge branch 'trunk' into padic
      Merge commit 'fredrik/trunk' into trunk
      Merge branch 'trunk' into padic
      Propagate fix for n_sqrtmod to fmpz_sqrtmod.
      Merge branch 'trunk' into padic
      Fixed examples/padic.
      Merge branch 'trunk' into padic
      Stop deletion of test files and ensure tests are all built before running.
      Merge branch 'trunk' into padic
      Prevent test files being deleted and ensure all built before running.
      Added missing PHONY targets.
      Merge branch 'trunk' into padic
      Added missing PHONY.
      Merge branch 'trunk' into padic
      Added missing PHONY.
      Have ABI change the machine it is compiling for.
      Merge branch 'trunk' into padic
      Fixed lengths of S, T in fmpz_mod_poly_xgcd.
      Merge branch 'trunk' into padic
      Deal properly with scalar polys in fmpq_poly_xgcd and clean up case where lenA
      Merge branch 'trunk' into padic
      Fixed an aliasing bug in nmod_poly_xgcd routines and cleaned up case where
      Merge branch 'trunk' into padic
      Removed unneeded case from fmpz_mod_poly_xgcd.
      Merge branch 'trunk' into padic
      Cleaned up case where lenA < lenB in fmpz_mod_poly_gcd.
      Cleaned up case where lenA < lenB in fmpz_mod_poly_gcd_euclidean_f.
      Merge branch 'trunk' into padic
      Cleaned up the case where lenA < lenB in fmpz_poly_gcd.
      Merge branch 'trunk' into padic
      Dealt with cases in nmod_poly_gcd routines where lenA < lenB.
      Merge branch 'trunk' into padic
      Cleaned up cases where lenA < lenB in fmpz_poly_gcd routines, and removed
      Merge branch 'trunk' into padic
      Removed more unnecessary aliasing code from fmpz_poly_gcd routines.
      Merge branch 'trunk' into padic
      Cleaned up the lenA < lenB case in fmpq_poly_gcd.
      Merge branch 'trunk' into padic
      Fixed an fmpz small bug in fmpz_bit_unpack (FLINT_BITS - 1 -> FLINT_BITS - 2).
      Merge branch 'trunk' into padic
      Whoops, back to single mode.
      Merge branch 'trunk' into padic
      Merge branch 'trunk' into padic
      Added Fredrik's test case to resultant test code.
      Merge branch 'trunk' into padic
      Added new n_randtest_bits function and used throughout test code (fixed a few
      Merge branch 'trunk' into padic
      Fixed a bug in n_mod_precomp and some documentation errors.
      Merge branch 'trunk' into padic
      Use n_randtest_bits in fmpz_randtest.
      Merge branch 'trunk' into padic
      Fixed a bug in n_is_prime_pseudosquare.
      Merge branch 'trunk' into padic
      Fixed the maximum error count in t-is_strong_probabprime2_preinv.
      Merge branch 'trunk' into padic
      Corrected some comments.
      Merge branch 'trunk' into padic
      Fixed some comments and removed an unnecessary length comparison check.
      Merge branch 'trunk' into padic
      Merge branch 'trunk' into padic
      An alternative fix for factor_lehman.
      Merge branch 'trunk' into padic
      Merge commit 'fredrik/trunk' into trunk
      Merge branch 'trunk' into padic
      Make static library rebuild trigger tests rebuild when no shared lib.
      Merge branch 'trunk' into padic
      Slightly better static lib link fix.
      Merge branch 'trunk' into padic
      Fixed a problem with top level tests not rebuilding.
      Merge branch 'trunk' into padic
      Updated the flint-manual preamble for make tune, configure options, contribs,
      Merge branch 'trunk' into padic
      Updated AUTHORS file and corrected a misspelled name in the manual.
      Merge branch 'trunk' into padic
      Docs as they currently stand.
      Not sure why this wasn't picked up.
      Merge branch 'trunk' into padic
      Removed {} inside code sections.
      Merge branch 'trunk' into padic
      Removed some definitely completed tasks from todo.txt.
      Merge branch 'trunk' into padic
      Merge commit 'fredrik/trunk' into trunk
      Merge branch 'trunk' into padic
      A few line ending fixes.
      Merge branch 'trunk' into padic
      Changed release date in NEWS.
      Merge branch 'trunk' into padic
      Added a few extra bug reports.
      Merge branch 'trunk' into padic
      Corrected an incorrect order of doc chapters.
      Corrected an incorrect order of doc chapters.
      Added HAVE_BLAS define to config.h.
      Fixed a double free in fmpq_init/clear_readonly_mpz in --reentrant mode.
      Fixed a double free in fmpq_init/clear_readonly_mpz in --reentrant mode.
      Changed default library location to /usr/local.
      Changed default library location to /usr/local.
      Libs after compilation.
      Libs after compilation.
      Made a small improvement to the integer multiplication code using the fft.
      Fixed inclusion of sumdiff_n from mpir.
      Look in /usr for NTL.
      Look in /usr for NTL and BLAS.
      Removed scuttling of shared lib on MinGW and Cygwin.
      Removed conflict with mpn_mul_fft_main and MPIR's version of the same.
      Fix broken static lib.
      Clean up static library fix.
      Fix shared library on MinGW/Cygwin.
      JP Flori's "Attempt to make build system more modular"
      Attempt to clean up the Makefile using JPFlori's changes.
      Added PATH statement for MINGW.
      Correction to last commit.
      Further correction to previous commit.
      Added blas dir to PATH for MINGW.
      Yet another fix to PATH in configure.
      Added failing test case for bug found in mpir.h header.
      Removed another clash with MPIR.
      Moved mpn_extras out of mpn namespace.
      Moved mpn_blah macros in flint.h out of mpn namespace.
      Fixed an issue on ia64 to do with rounding of 2^64 as a double to a ulong.
      Fixed a couple of compiler warnings.
      Added newlines at the end of all files missing them.
      Removed a compiler warning.
      Use DYLD_LIBRARY_PATH on OSX.
      Changed shell to bash.
      Use $(MAKE) instead of make, use #!/usr/bin/env bash, SHELL := /usr/bin/env
      Remove test_helpers.o with make check.
      LD_LIBRARY_PATH32/64 on sparc(64).
      Put ABI_FLAG in configure.
      Use ABI_FLAG when linking.
      Added ABI_FLAG in other places it is needed.
      Update machine name to sparc64 if ABI=64 is selected.
      Corrected typo: lib64 => lib.
      Remove if(!feof(in)) idiom, which is incorrect.
      Merge remote branch 'fredrik/trunk' into trunk
      Merge remote branch 'sebastian/trunk' into trunk
      Don't build both shared and static libs on Cygwin and MinGW32.
      Updated prereq to MPIR 2.6.0.
      Added missing type.
      Additional profile for fft.
      Clean up profiler.o.
      Fixed mpn_sumdiff_n reference in fft.h.
      Fixed an unresolved git conflict.
      Make dist should use flint-x.y branch, not trunk.
      Reenable nmod_poly/factor_cantor_zassenhaus for n = 2.
      Updated NEWS.
      Fix typo in NEWS.
      Added some missing copyright notices.
      Added copyright for Jan Engelhardt to configure.
      Added fmpz_xgcd and docs. Test code to come...
      Fix fmpz_xgcd.
      Slight simplification in fmpz_xgcd.
      Add test code for fmpz_xgcd.
      Added missing test file.
      Fixed some compiler warnings in fmpz_xgcd and double_extras_randtest.
      Added fmpz Jacobi symbol, test and docs.
      Added fmpz_factor_trial_range.
      Fix to fmpz_factor_trial_range.
      Added fmpz_is_probabprime.c and docs. Test to follow.
      Added fmpz_is_prime_pseudosquare and test code and docs and lowered iterations
      Added additional explanation about pseudosquare method.
      Added p+1 factoring method.
      Fixed a bug in factor_pp1 and added a driver function in fmpz_factor/profile.
      Made p-factor_pp1 have random starting values, and fixed some dubious code.
      Fixed numerous bugs and added a fmpz_mod with precomputed inverse and used
      Switched to using standard Lucas chain.
      Made a correction to the docs for fmpz_mod_preinv1 and made a correction to
      Corected minor bug in p+1 factoring.
      Removed some unneeded temporaries from p+1 factoring.
      Use a proper B0 factor and use powers of primes up to B0.
      Much faster fmpz_factor_pp1, fast flint_mpn_mulmod_preinv.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Removed numerous crappy functions and renamed a few files and updated docs.
      Cleanup of numerous bits and pieces.
      Added pp1_set_ui function.
      Updated docs.
      Slight correction to docs for fmpz_factor_pp1.
      Further clean up of fmpz_factor_pp1. Implement n_factor_pp1 and
      Added documentation for n_factor_pp1.
      Added driver program for n_factor_pp1 and made small improvement to the
      Added flint_mpn_mulmod_preinv1 for convenience.
      Moved flint_mpn_preinv1 out to separate file.
      Fixed small bug in n_factor_pp1.
      Merge branch 'trunk' into gmp-ecm
      Removed messy file.
      Removed messy file.
      Added fmpz_mod_poly_evaluate_fmpz_vec_fast.
      Removed reference to fmpz_preinv1.
      Removed reference to fmpz_preinv1. Added fmpz_negmod.
      Added all fmpz_mod_poly_evaluate_fmpz_vec functions. Added doc for fmpz_negmod
      Added docs for fmpz_negmod.
      Fixed fmpz_mod_poly_tree and evaluate_fmpz_vec* and added test code.
      Merge branch 'gmp-ecm' into trunk
      Added stage 2 to fmpz_factor/factor_pp1.
      Changed some references to B0 to B1 and corrected some docs.
      Fixed typo.
      Replaced some B0's with B1's and moved a line in a .h file.
      Added description to fft/README.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Updated license of convolution.c to BSD.
      Fix bug in precomputed inverse.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Removed some unneeded code in factor_trial_range.
      Merge remote-tracking branch 'fredrik/gmp2' into trunk
      Fix bug for signed coeffs in fmpz_xgcd.c.
      Fixed another bug and made some speedups in fmpz_xgcd.
      Fixed another bug and made some speedups in fmpz_xgcd.
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Merge branch 'trunk' into gmp-ecm
      Remove unneeded file.
      Remove unneeded file.
      Replace some len_t's with long.
      Replace some len_t's with long.
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Merge branch 'trunk' into gmp-ecm
      Switch to using B1 and B2_sqrt.
      Fix c99 compile for profile in Makefile.in.
      Fix c99 compile for profile in Makefile.in.
      Fix c99 compile for profile in Makefile.mod.
      Fix c99 compile for profile in Makefile.mod.
      Add test code and better documentation for flint_mpn_divrem_preinv1 and
      Added missing test code.
      Added test code for mpn_extras/mulmod_preinv1.
      Updated copyrights.
      Test code for flint_mpn_mulmod_preinvn.
      Add test code for flint_mpn_mulmod_preinvv.
      Merge branch 'trunk' into gmp-ecm
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Merge branch 'trunk' into gmp-ecm
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Merge branch 'trunk' into gmp-ecm
      Added test for n_factor_pp1.
      Added test for fmpz_factor_pp1.
      Merge branch 'trunk' into gmp-ecm
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Make static/shared/check for extension modules.
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Support building of extension modules.
      Merge branch 'build_system' of https://github.com/jpflori/flint2 into trunk
      Make clean for extensions.
      Make tune, profile for extensions.
      Make tests for extensions.
      Make install for extensions.
      Added missing line.
      Added dependencies for extensions.
      Merge xgcd_partial from qfb branch.
      Added prototype for xgcd_partial to fmpz.h.
      Add missing const to prototype.
      Fix bug in fmpz_is_prime_pseudosquare on 32 bit machine.
      Use slong instead of long in _si function prototypes.
      Updated code_conventions.txt.
      Update code_conventions.txt.
      Replace unsigned long with ulong in code_conventions.txt.
      Added mp_limb_signed_t to code_conventions.txt.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Merge remote-tracking branch 'andres/mingw' into trunk
      Replace unsigned long with ulong throughout.
      Attempt to switch all longs to slong.
      Fix minor bug in profiler.h to do with slong.
      Fixed problem with profiler.o.
      Switched all len_t to slong.
      Update code_conventions.txt
      Added missing test file.
      Const fixes for ulong_extras, fmpz and fmpz_poly.
      Correct spelling of Ralf Hemmecke.
      const fixes for nmod_poly, and a few fixes for other modules.
      const fixes for fmpq_poly.
      Switch to BPSW for primality testing up to 64 bits.
      const fixes for fmpz_mod_poly.
      Call BPSW directly in n_is_prime.
      const fixes for fmpz_vec and fix to const fix for fmpz_mod_poly.
      Move const into more logical position.
      Fix unused variable warning.
      Further fiddling with const.
      const fixes for fmpz_mod_poly_factor.
      Fix const qualifiers.
      Merge remote-tracking branch 'jpflori/sqrt' into trunk
      Fixed passing around of p instead of ctx.
      David Harvey's KS2 and KS4 code.
      Added GC versions of fmpz files.
      Removed fmpz.c from version control and added it to distclean.
      Added test for flint_mpn_mulmod_2expp1_basecase.
      Merge remote-tracking branch 'tom/gsoc' into trunk
      Added flint_f/s/printf and flint_f/s/scanf.
      Switched to using WORD/UWORD instead of L and UL.
      Use ULLONG_MAX on Win64, etc.
      Fixed some tab formatting issues.
      Removed a typographical error from configure.
      Fix lib order.
      A few fixes for MinGW64.
      Fix LONG_MIN.
      Use fits_si on WIN64 (MPIR only I'm afraid).
      Corrected error in fits_si.
      64 bit popcount on windows64.
      Fixed a typo in doc.
      Changed a few longs for slong.
      Fixed a 0L.
      Fixed lots of WORD issues.
      More longs fixed.
      Fixed another 0l.
      Fixed more L constants.
      Another L constant.
      Another long.
      More longs and L's.
      More UL's.
      More constant fixes.
      Fixed a UL.
      More constant fixes.
      Fixed another L.
      More longs and constants.
      More longs and UL's.
      Added fmpz_poly_preinvert, fmpz_poly_div_preinv, fmpz_poly_divrem_preinv and
      Used Sebastian's newton iteration code for fmpz_poly_preinvert.
      Added mpn_mod_preinvn for reduction with precomputed inverse.
      Added mpn_divrem_preinvn.
      Changed interface for precomputed inverse functions in mpn_extras.
      Added an fmpz_fdiv_qr_preinvn function, plus docs and tests.
      Update copyright.
      Sped up the precomputed inverse code and added a crossover.
      Added additional credit.
      Added TMP_ALLOC and used it in precomputed inverse functions in mpn_extras.
      Use TMP_ALLOC in nmod_poly.
      Cleaned up make profile.
      Sped up precomputed inverse code and eliminated two unneeded functions.
      Slight improvement in space required.
      Use ordinary division when it is faster than the precomputed inverse version.
      Fixed a bug in the test code for mod_preinvn.
      Add precomputed inverse option to fmpz_poly_quasi_div/divrem/rem and similar for fmpq_poly.
      Patch from Martin Lee to restore GMP support for Singular.
      Added a missing aliasing statement.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Fixed bug in Makefile.subdirs to do with make profile for extensions.
      Added some new functions to fmpq_poly for weak canonicalisation.
      Changed the interface of the weak canonicalisation code to avoid large scale
      Added profile code for precomputed inverse in fmpz_poly.
      Added precomputed powers remainder functions for fmpz_poly and fmpq_poly.
      Removed concept of weak canonicalisation and fixed some compiler warnings.
      Merge remote-tracking branch 'sebastian/trunk' into trunk
      Support Cygwin64 in configure.
      Correct quoting in configure.
      Attempt to fix fits_si.c on Windows 64.
      Add _WIN64 definition for Cygwin64.
      Redefine ulong for library headers.
      Fix GMP interface issue.
      Fix for missing alloca.h on MinGW64.
      Fix for MPIR support.
      Added missing initialisation.
      Fixed another missing initialisation.
      Patch for missing alloca.h on mingw32.
      Another patch for alloca.
      Better fix for alloca missing.
      Back to previous solution for alloca.
      Fixed bug in flint_sscanf.
      Fix const in multi_CRT_ui.
      Fix some more const placements and a silly Cygwin32 compiler warning.
      More silly compiler warnings.
      Merge remote-tracking branch 'tom/gsoc' into trunk
      Removed a few more stupid compiler warnings.
      Added FreeBSD alloca defines.
      Better BSD detection.
      Merge branch 'mingw32' of https://github.com/mmklee/flint2 into trunk
      Fix for missing alloca.h on MinGW64.
      Fix for MPIR support.
      Added missing initialisation.
      Fixed another missing initialisation.
      Patch for missing alloca.h on mingw32.
      Another patch for alloca.
      Better fix for alloca missing.
      Back to previous solution for alloca.
      Fixed bug in flint_sscanf.
      Fix const in multi_CRT_ui.
      Fix some more const placements and a silly Cygwin32 compiler warning.
      More silly compiler warnings.
      Removed a few more stupid compiler warnings.
      Added FreeBSD alloca defines.
      Better BSD detection.
      Add gcd_f function.
      Fix for CPIMPORT in source tree.
      Merge remote-tracking branch 'martin/fmpz_mod_poly_factor3' into trunk
      Minor fixes.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Remove TLS from fmpz_gc, because it's worthless.
      Added a comment to prevent someone wasting their time.
      Fixed malloc/free/realloc/calloc calls.
      Add mutex to compute_primes.
      Added flint_cleanup mutex.
      Mutex fixes for fmpz and other places.
      Fixed some more gc issues.
      Added FLINT_TEST_INIT/CLEANUP macros with GC_init.
      Fixed some typos in documentation (reported by Ahmad Soliman) and fixed an
      Merged Qingwen GUAN's fmpz_inp/out_raw functions.
      Fixed a compiler warning in longlong.h. Reported by Mike Stillman.
      Fixed a compiler warning in nmod_poly_print (reported by Mike Stillman).
      Add --enable/disable-assert option and fix all bugs existing asserts reveal.
      Merge remote-tracking branch 'martin/flint_docu' into trunk
      Added --enable-cxx option.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Added make check MOD=module for extensions.
      Check MPIR/GMP and MPFR version numbers in flint.h.
      Added flint version numbers.
      Moved nmod_poly_factor functions out to separate module.
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Changed method of inclusion for fmpz_factor.h.
      Changed inclusion details for fmpz_poly_factor.
      Update the way fmpz_mod_poly_factor is included.
      Updated docs on include files for blah_factor modules.
      Updated C++ wrapper for new .h inclusion rules.
      Partial update of AUTHORS
      Add grant number.
      Update documentation.
      Updated AUTHORS.
      Some additions to AUTHORS.
      Updated and unified AUTHORS and contributors in docs.
      Get documentation to build.
      Cleanup of docs.
      Merge remote-tracking branch 'mhansen/fq' into trunk
      Merge remote-tracking branch 'mhansen/fq' into trunk
      Update to flint-2.4.
      Doc fixes.
      Updated NEWS.
      Removed some superfluous files.
      Typo fix.
      Update make dist on 2.4 branch.
      Fixed mpir.h and ulong issue.
      Merge remote-tracking branch 'mhansen/trunk' into trunk
      Lots and lots of FLINT_TEST_INIT fixes.
      Fixed bug on 32 bits.
      Fix last commit.
      Another fix for sme bug.
      It's late at night.
      Correct version numbers and docs.
      Remove final zero from version number.
      Fixed undefined variable warning.
      Fix for sparc build.
      Remove superfluous file from tree.
      Fix a bug for small inputs in prime test.
      Merge remote-tracking branch 'mhansen/trunk' into trunk
      Merge remote-tracking branch 'mhansen/trunk' into trunk
      Merge remote-tracking branch 'martin/flint_format' into flint-2.4
      Merge remote-tracking branch 'mhansen/trunk' into flint-2.4
      Merge remote-tracking branch 'mhansen/trunk' into flint-2.4
      Merge remote-tracking branch 'fredrik/trunk' into trunk
      Many fixes for long->slong, mostly in C++ wrapper.
      Fixed compiler warning.
      Added gmpcompat.h for MinGW64.
      Added missing static __inline__'s.
      Added remaining functions.
      Fixed typo on exception.
      Replace all occurrences of GMP _ui and _si functions with flint variants.
      Roll back incorrect changes to NEWS.
      Removed unnecessary define in longlong.h.
      Use macro twice in flint_mpz_congruent_ui_p.
      Fix a problem with allocation of temporary mpz in gmpcompat.h.
      Added cast to flint_mpz_get_si.
      Changed some mpz_ptr's to mpz_srcptr's.
      Corrected prototypes for mpq_set/cmp_ui/si.
      Added copyright notice.
      GMP expects an allocation even for 0.
      Mock mpz's must also have an allocation.
      For C++ and the kiddies.
      Fix a bug when using GMP.
      Call correct function in gmpcompat.h.
      Make dependency on gmpcompat.h.
      Add some parentheses to shut up the compiler.
      Merge remote-tracking branch 'mhansen/flint-2.4' into flint-2.4
      Some files didn't have blaan line at end.
      Fixed a build issue (still need to fix make install).
      Print arithxx not t-arithxx.
      Only use umull/smull for ARM M-series.
      Try to get rid of annoying -n from echo -n.
      Get rid of uninitialised variable warnings.
      Fix export problems in Makefile.
      Fixed missing parenthesis in docs.
      Attempt to fix some unused variable warnings.
      Fix some compiler warnings and a bug in C++ wrapper.
      Fixed missing parenthesis.
      Another attempted fix for ARM.
      Move pragmas to stop gcc complaining about its own damned pragmas.
      Updated docs for 2.4.1 release.
      2.4.1 in make dist.
      Apply patch to longlong.h for ARM.
      Change version to 2.4.2.
      Update NEWS.
      Merge branch 'flint-2.4.1' into flint-2.4
      Fixed a bug in the FFT which causes a tuning crash on some machines.
      Update NEWS and version numbers.
      Revert "correctly handle 0^0"
      Added copyright for Dana Jacobsen and copied large base code over to precomp
      Updates AUTHORS and manual.
      Use precomputed inverse in large base mod operation in both versions of
      Added powers regression test to t-is_prime and t-is_probabprime.
      Added regression test for composites that were being passed as prime, as
      Updated code_conventions.txt regarding WORD/UWORD macros and flint_printf.
      Update flint version number for 2.4.4 release.
      Spacing.
      Updated docs on primality testing after recent changes.
      Updated URLs to Feitsma and Galway tables and corrected spelling of Feitsma.
      Clarified where our BPSW test comes from.
      Clarify the provenance of our Lucas test.
      Update make dist for 2.4.4.

argriffing (1):
      copy paste bug

buaagg (1):
      Add fmpz_inp_raw & fmpz_out_raw along with document and test.

unknown (31):
      Made FLINT-Lite build on Cygwin (but probably broke other systems)
      Fixed all 64 bit only code in FLINT-Lite root dir and tests.
      Add -enable-auto-import for Cygwin.
      Merge branch 'fmpz' of ssh://git@selmer.warwick.ac.uk/home/git/repositories/FLINT-Lite into fmpz
      Removed fmpz.c link due to problems.
      Added fmpz.c.lnk.
      Fixed random generator to work correctly on 32 bit machines.
      Fixed problem in t-gcd.c for 32 bit machines.
      Fixed t-gcdinv for 32 bits.
      Fixed t-xgcd to work with 32 bits.
      Fixed mod2_preinv.c for 32 bits.
      Fixed mulmod_precomp to work with 32 bits.
      Fixed ll_mod_preinv.c to work with 32 bits.
      Fixed t-mulmod_precomp and t-powmod_precomp to work with 32 bits.
      Fixed t-powmod to work with 32 bits.
      Fixed t-remove to work with 32 bits.
      Fixed t-is_square to work with 32 bits.
      Fixed t-is_perfect_power235 to work with 32 bits.
      Fixed is_odd_prime_small to work with 32 bits.
      Fixed some minor spacing issues.
      Fixed t-factor_power235 to work with 32 bits.
      Fixed t-is_strong_probabprime* to work with 32 bits.
      Fixed is_probabprime_lucas to work with 32 bits.
      Fixed is_probabprime_fermat to work with 32 bits.
      Fixed is_probabprime_fibonacci and is_probab_prime_BPSW to work with 32 bits.
      Fixed is_probabprime to work with 32 bits.
      Fixed t-factor_one_line to work with 32 bits.
      Fix t-factor_SQUFOF to work with 32 bits.
      Fixed fmpz issues on 32 bit machines.
      Fixed some warning messages on 32 bit machines.
      Fixed some minor issues with is_prime on 32 bit machines.

Лина (1):
      add test for _fmpz_vec_scalar_fdiv_q_fmpz function

-----------------------------------------------------------------------

No new revisions were added by this update.

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/flint.git



More information about the debian-science-commits mailing list