## Section: Software

### mpc

The mpc library, developed in C by A. Enge in collaboration with Ph. Théveny and P. Zimmermann, implements the basic operations on complex numbers in arbitrary precision, which can be tuned to the bit. This library is based on the multiprecision libraries GMP and mpfr . Each operation has a precise semantics, in such a way that the results do not depend on the underlying architecture. Several rounding modes are available. This software, licensed under the GNU Lesser General Public License (LGPL), can be downloaded freely from the URL http://www.multiprecision.org/mpc/ .

The library currently benefits from an INRIA
*Opération de développement logiciel* .
The latest version (0.8) was released in November 2009.
A Debian package has been available (in the unstable distribution) since
October 2008. The perl wrapper Math::MPC
(http://search.cpan.org/~sisyphus/Math-MPC/ )
has been available on CPAN since version 0.4.6.

The `mpc` library is used in our team to build curves with
complex multiplication and to compute modular polynomials
(cf. Section
6.1 ), and it is *de facto*
incorporated in the ECPP program. It is used by the Magma Computational
Algebra System (http://magma.maths.usyd.edu.au/magma/ )
and by Trip (http://www.imcce.fr/Equipes/ASD/trip/trip.php ),
a symbolic-numeric system for celestial mechanics developed at Institut
de Mécanique Céleste et de Calcul des Éphémérides.