Permalink
Switch branches/tags
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
171 lines (99 sloc) 4.12 KB
mpoly
-----
* setting coefficients to zero should result in a shift of coefficients
* setting a coefficient beyond the end of a polynomial should throw
* scalar multiplication and multiplication should remove any resulting
zero terms when working over a residue ring
Build
-----
* Remove dependency on git on Windows
General
-------
* add lots of tests for exceptions and special cases dealt with in code
* don't use isequal; in Julia it's for objects that hash to the same value
* fix issues with stack overflow on nonexistent operators
* rename primpart to primitive_part
* Optimise for monomials in polynomial modules, especially powering
* introduce CapRelSeries abstract type
* extend documentation for absolute power series
fq_poly.jl / fq_nmod_poly.jl
----------------------------
* divexact is missing along with numerous other things provided by generic Poly
* division is currently using basecase instead of divide and conquer
nmod_poly.jl
------------
* Add constructor for array of ints
* Use Int throughout instead of UInt and allow modulus only up to typemax(Int)
fmpz_mod_poly.jl
----------------
* Add constructor for array of ints
Poly.jl/fmpz_poly.jl
--------------------
* Fix printing of monomials, e.g. y + (x), y + (6)
* Fix efficient powering of x in flint specialised polynomials cases
* function to convert poly to array
* check flint pseudodivision really returns a result with the power of L as defined in the nemo docs
* check the resultant and bezout functions for flint polys work correctly for nonmonic polys
* correct description of bezout for nonmonic polys
* Should mod be defined for polys over ZZ where the divisor is monic?
* implement fmpz_mod_poly_get_str_pretty and use it in show
* Add generic multipoint evaluation a la arb_poly evaluate(x::arb_poly, b::Array{arb, 1}).
* Add generic function for constructing a polynomial from its roots, a la the
arb_poly function from_roots.
* implement Sylvester matrix version of generic resultant
* add the tricks used in SparsePoly for gcd (subresultant algorithm) to Poly.jl.These include finding obvious content and removing it using exact divisions,
and evaluating at random points at the start to determine the likely degree of
the gcd, then replacing the last pseudorem with divides.
Residue.jl
----------
* Make powering do its own powmod
* implement divexact by an invertible integer, etc
FLINT
-----
* allow fmpq_sqrt_series to take square constant coefficient
* fix printing of parentheses in polys over finite fields
* document and test fq_poly_scalar_div_fq
* add fq_poly_scalar_div_ui/si/fmpz
* implement print_pretty_series (reverse order of coeffs)
* suppress printing of 1 coeffs in fmpq_poly_print_pretty
* fmpq_poly_inv_series can be faster than Sage's power series inversion
* handle monomials and binomials optimally in powering, composition, division
etc. in polynomial/power series functions (over Z, Z/nZ, Q, Fq)
* Print pretty for fmpz_mod_poly
* Inflate/deflate for fmpz_mod_poly
* Interpolate for fmpz_mod_poly
* factor_get_fmpz_mod_poly for fmpz_mod_poly (inlines.c)
* gcdinv doesn't exist for fq_poly and fq_nmod_poly
PowerSeries.jl
--------------
* allow division by power series with non-invertible leading coeff if division
can still be performed
* ensure exp is only defined for rings in which division by an integer is
possible
* store relative power series in valuation/unit (i.e. relative) form instead of
current absolute form
Fraction.jl
-----------
* canonical_unit for fractions is odd for (1//(x^2+1))//(2//(x+1)) over
rationals
nf.jl
-----
* fix needs_parentheses and isnegative
* find way of allowing NumberField to take a polynomial over Z instead of
over Q, and yet allow all the coercions from that ring into number fields
maximal orders, ideals, etc., without making it inefficient
nmod_mat
--------
* fix _checkbounds and related functions
* implement missing functions from generic matrices
fmpz_mat
--------
* fix _checkbounds
arb/acb(_poly/mat)
------------------
* add hash functions
* add missing ad hoc operators
* document flags for roots() in acb_poly
Matrix.jl
---------
* Add rref_with_transform