## Section: Software

### MPC

Participants : Philippe Théveny, Paul Zimmermann [ contact ] .

Mpc is a floating-point library for complex numbers, which is
developed on top of the Mpfr library, and distributed under the
Lgpl
license. It is co-written with Andreas Enge (LFANT project-team,
Inria
Bordeaux - Sud-Ouest).
A complex floating-point number is represented by x + iy ,
where x and y are real floating-point numbers, represented using
the Mpfr library. The Mpc library provides
correct rounding on both the real part x and the imaginary part y
of any result.
Mpc is used in particular in the Trip celestial mechanics system developed
at Imcce (*Institut de Mécanique Céleste et de Calcul des
Éphémérides* ), and by the Magma computational number theory system.

In 2009, in the context of the MPtools project, the focus was made on extending the list of available functions, to provide all functions of the C99 standard. A new version, Mpc 0.6 (Bellis perennis) was released in April, Mpc 0.7 (Campanula uniflora) was released in September, and Mpc 0.8 (Dianthus deltoides) was released in November. Since May 2009, Mpc is used optionally by GCC 4.4 to compute constant complex expressions at compile-time (constant folding), and since December 6, 2009, Mpc is required for the development version of GCC (thus for the next release GCC 4.5).