_fmpz_poly_factor_zassenhaus
#include <flint/fmpz_poly_factor.h>void _fmpz_poly_factor_zassenhaus(fmpz_poly_factor_t final_fac, slong exp, const fmpz_poly_t f, slong cutoff, int use_van_hoeij)sourceAppends the irreducible factors of the squarefree, primitive polynomial f of length at least 2 with nonzero constant coefficient and positive leading coefficient, each with multiplicity exp, to final_fac; none of the conditions is checked.
Three primes p for which f is squarefree modulo p with the same degree and nonzero constant coefficient are tried, starting from 2, and the one with fewest modular factors is chosen; the factor degrees seen modulo all three primes are combined to rule out impossible degrees of true factors. With one modular factor, f is irreducible. If the number r of modular factors exceeds cutoff and use_van_hoeij is nonzero, fmpz_poly_factor_van_hoeij is called; otherwise the factors are lifted to the precision given by the Mignotte bound and recombined by fmpz_poly_factor_zassenhaus_recombination_with_prune. Quadratics and cubics are passed to the special functions.
The FLINT team, “_fmpz_poly_factor_zassenhaus (fmpz_poly_factor.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_poly_factor/_fmpz_poly_factor_zassenhaus.html (generated 2026-10-20).
@misc{flint-doc-fmpz-poly-factor-fmpz-poly-factor-zassenhaus,
author = {{The FLINT team}},
title = {{\_fmpz\_poly\_factor\_zassenhaus (fmpz\_poly\_factor.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fmpz_poly_factor/_fmpz_poly_factor_zassenhaus.html},
note = {Generated 2026-10-20}
}