Menu

Tree [53c453] master /
 History

HTTPS access


File Date Author Commit
 include 2014-08-04 Luis Peñaranda Luis Peñaranda [53c453] added licence LGPLv3
 test 2014-08-04 Luis Peñaranda Luis Peñaranda [e5e22e] Initial commit
 COPYING 2014-08-04 Luis Peñaranda Luis Peñaranda [53c453] added licence LGPLv3
 README 2014-08-04 Luis Peñaranda Luis Peñaranda [e5e22e] Initial commit
 TODO 2014-08-04 Luis Peñaranda Luis Peñaranda [e5e22e] Initial commit
 global_variables.txt 2014-08-04 Luis Peñaranda Luis Peñaranda [e5e22e] Initial commit

Read Me

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.