tiny mug Code
Status: Alpha
Brought to you by:
luis4a0
File | Date | Author | Commit |
---|---|---|---|
include | 2014-08-04 | Luis Peñaranda | [53c453] added licence LGPLv3 |
test | 2014-08-04 | Luis Peñaranda | [e5e22e] Initial commit |
COPYING | 2014-08-04 | Luis Peñaranda | [53c453] added licence LGPLv3 |
README | 2014-08-04 | Luis Peñaranda | [e5e22e] Initial commit |
TODO | 2014-08-04 | Luis Peñaranda | [e5e22e] Initial commit |
global_variables.txt | 2014-08-04 | Luis Peñaranda | [e5e22e] Initial commit |
This is Tiny Mug (a tiny implementation of a Modular Univariate polynomial Gcd). I wrote the code originally for CGAL, in 2007, but it was later removed for maintenance reasons. It can not compete with state-of-the-art implementations, such as NTL and FLINT, but I make the code available (under LGPL license) hoping it can be useful for someone. The library computes the greatest common divisor of two univariate integer polynomials, whose coefficients are represented by multiple-precision integers provided by the GMP library. The implemented algorithms can be found in three books: [Zip] R. Zippel, "Effective Polynomial Computation", Kluwer, 1993. [vzGG] J. von zur Gathen and J. Gerhard, "Modern Computer Algebra", 2nd ed, Cambridge, 2003. [GCL] K. O. Geddes, S. R. Czapor and G. Labahn, "Algorithms for Computer Algebra", Springer, 1992. The file test.cpp shows an example of how to initialize the polynomials and compute their gcd. There is much work to do yet, see the TODO file for details.