Happy New Year!
Finalize 1.8.2 release. Oh, and Happy New Year!
Happy New Year!
Happy New Year!
Happy New Year!
Happy New Year!
Happy New Year! Update copyright statements.
Happy New Year!
Remove C++89 workaround for closing angle brackets in nested templates.
Use C++11 range-based foor loops and auto, where possible.
Happy new year!
Update copyright statements.
Extend copyright to 2011.
Added `degree_vector' utility function. It's a generalization of degree(expr, var) for multivariate polynomials.
Update copyright notice.
Prettified source code. - Added copyright and GPL licencing to new files. - Increased year to 2009. - Changed guarding macros in header to uniform pattern without leading or trailing __ (double underscores). - Put includes of system wide header consistently below own includes (help a tiny bit to clarify dependencies).
Implement modular multivariate GCD (based on chinese remaindering algorithm). Both algorithm and implementation are a bit inefficient: * algorithm does not make use of sparseness of inputs (and most of multivariate polynomials are quite sparse) * GiNaC's expressions are essentially immutable. Thus some simple operations (i.e. multiplying a polynomial by an element of the base ring) are prohibitively expensive. * All numbers (i.e. GiNaC::numeric objects) are heap allocated. Still it's much faster (~5x on bivariate polynomials, ~100x on 3-variate ones) than (subresultant) PRS algorithm, so gcd() uses modular algorithm by default.