FLINT3.7.0-dev

qfb_exponent

Synopsis#include <flint/qfb.h>
int qfb_exponent(fmpz_t exponent, fmpz_t n, ulong B1, ulong B2_sqrt, slong c)source

Tries to compute the exponent of the class group of discriminant n < 0, the least common multiple of the orders of its elements, as the least common multiple of the orders of prime forms for small primes. Returns 1 and sets exponent on success, and 0 if qfb_exponent_element fails. The parameter c controls the number of prime forms tried; the result is the exponent with high probability (heuristically, at least 1 - 2^{-c}), but it is not proved. The bounds B1 and B2_sqrt are as for qfb_exponent_element.

The algorithm is Algorithm 8.1 of [Sut2007]: the prime forms are raised to the exponent found so far, so that each further order computation only finds the missing part. Non-fundamental discriminants are handled by dividing imprimitive prime forms by their content.

Guides#

References#

  • [Sut2007] A. V. Sutherland. "Order computations in generic groups." PhD diss., Massachusetts Institute of Technology, 2007.
Cite this page

The FLINT team, “qfb_exponent (qfb.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/qfb/qfb_exponent.html (generated 2026-10-20).