fmpz_mod_poly_roots_factored, fmpz_mod_poly_roots_factored_with_length_limit
#include <flint/fmpz_mod_poly_factor.h>int fmpz_mod_poly_roots_factored(fmpz_mod_poly_factor_t r, const fmpz_mod_poly_t f, int with_multiplicity, const fmpz_factor_t n, const fmpz_mod_ctx_t ctx)sourceint fmpz_mod_poly_roots_factored_with_length_limit(fmpz_mod_poly_factor_t x0, const fmpz_mod_poly_t f, int with_mult, slong length_limit, const fmpz_factor_t fac, const fmpz_mod_ctx_t ctx)sourceSet the output to the linear factors for the distinct roots of the nonzero polynomial f, where the fmpz_factor_t holds the prime factorisation of the modulus (not checked). If the multiplicity flag is nonzero, the exponent of is the largest such that divides in , otherwise it is 1. Return 1 on success and 0 if the roots were not computed because there are too many of them. A zero f causes an exception.
The roots modulo each prime are found with fmpz_mod_poly_roots (or are all residues if ), lifted to all roots modulo the prime power by Hensel lifting with doubling precision, and combined by the Chinese remainder theorem; see Roots modulo prime powers. The lists of roots modulo a prime power are limited to about entries ( on 32-bit systems), and the number of combined roots to the same bound for fmpz_mod_poly_roots_factored and to length_limit for fmpz_mod_poly_roots_factored_with_length_limit. If some prime power gives no root, the functions return 1 with no roots, even if another prime power has too many.
The FLINT team, “fmpz_mod_poly_roots_factored, fmpz_mod_poly_roots_factored_with_length_limit (fmpz_mod_poly_factor.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_mod_poly_factor/fmpz_mod_poly_roots_factored.html (generated 2026-11-02).
@misc{flint-doc-fmpz-mod-poly-factor-fmpz-mod-poly-roots-factored,
author = {{The FLINT team}},
title = {{fmpz\_mod\_poly\_roots\_factored, fmpz\_mod\_poly\_roots\_factored\_with\_length\_limit (fmpz\_mod\_poly\_factor.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fmpz_mod_poly_factor/fmpz_mod_poly_roots_factored.html},
note = {Generated 2026-11-02}
}