FLINT3.7.0-dev

nmod_poly_factor_equal_deg

Synopsis#include <flint/nmod_poly_factor.h>
void nmod_poly_factor_equal_deg(nmod_poly_factor_t factors, const nmod_poly_t pol, slong d)source

Equal-degree factorisation: pol must be squarefree and a product of irreducible polynomials of degree d, and d must divide \deg(\mathit{pol}). Appends the monic irreducible factors of pol, each with exponent 1, to factors.

This is gr_poly_factor_equal_deg: Cantor–Zassenhaus splitting of random elements of the Berlekamp subalgebra obtained with the trace map, which is computed by modular composition, and for many factors of large degree the splitting by the minimal polynomial of one such element; see Equal-degree factorisation. An exception is raised if d does not divide the degree. If pol does not have the required form, the function can fail with an exception or return reducible factors.

Cite this page

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