Overview
Exact computation
These tutorials compute with exact real and complex numbers (ca.h) and algebraic numbers (qqbar.h): proving identities between elementary constants, arithmetic in number fields, exact linear algebra, and deciding equalities between large algebraic expressions. Each follows one or two of the example programs. The guides Using ca and Using qqbar introduce the programming interfaces, and Exact real and complex numbers gives an overview.
In this section#
TutorialProving identitiesEvaluating elementary expressions exactly, watching identities simplify automatically or be proved by a zero test, and verifying Machin-like formulas for π and logarithms; the example programs elementary and machin.TutorialComputing in number fieldsExact arithmetic with algebraic numbers in one or several quadratic fields: Fibonacci numbers from Binet's formula, the precision limit that keeps large powers unexpanded, and the Swinnerton-Dyer polynomials; the example programs binet and swinnerton_dyer_poly.TutorialExact linear algebraEigenvalues of the Hilbert matrix as exact algebraic numbers with verification of the trace and determinant, and an exact discrete Fourier transform with roots of unity; the example programs hilbert_matrix_ca and dft.TutorialLarge algebraic expressionsParsing expressions with radicals in the generic rings interface and deciding equalities with qqbar and ca, and how the two representations divide the work differently on an expression with thousands of operations; the example program huge_expr.
Referenced from#
- Choosing types (overview)
- Examples & tutorials (overview)
- The example programs (tutorial)
Cite this page
The FLINT team, “Exact computation,” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/tutorials/exact/index.html (generated 2026-10-20).
@misc{flint-doc-tutorials-exact-index,
author = {{The FLINT team}},
title = {{Exact computation}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/tutorials/exact/index.html},
note = {Generated 2026-10-20}
}