Calcium (pronounced “kalkium”) is a C library for exact computation with real and complex numbers. It is capable of rigorously deciding the truth of any constant relation involving algebraic numbers and many relations involving transcendental numbers, for example

\[\frac{\log(\sqrt{2}+\sqrt{3})}{\log(5+2\sqrt{6})} = \frac{1}{2}, \quad i^{\,i} = \exp\left(\frac{\pi}{ \left({\left(\sqrt{-2}\right)}^{\sqrt{2}}\right)^{\sqrt{2}}}\right), \quad 10^{-30} < \frac{640320^3 + 744}{e^{\pi \sqrt{163}}} - 1 < 10^{-29}.\]

Calcium is free software (LGPL). It depends on GMP, MPFR, Flint, Antic and Arb.

This documentation is available in HTML format at and in PDF format at This edition of the documentation was updated Apr 23, 2021 and describes Calcium 0.3.0.


For new users, this introductory Jupyter notebook is a good place to start.

Field and extension number constructions

These modules are used internally by the ca_t type to construct towers of algebraic and transcendental number fields. The user does not normally need to use these modules directly outside of advanced applications requiring inspection of the symbolic representations of numbers.

Credits and references

Version history

Indices and tables