FLINT3.7.0-dev

_fmpz_poly_factor_inflation_is_irreducible_capelli

Synopsis#include <flint/fmpz_poly_factor.h>
int _fmpz_poly_factor_inflation_is_irreducible_capelli(const fmpz_poly_t T, ulong p)source

Given TT irreducible over Q\mathbb{Q} of degree at least 1 and a prime pp, attempts to prove that T(xp)T(x^p) is irreducible over Q\mathbb{Q}. Returns 1 if a proof was found and 0 if the search was inconclusive, in which case T(xp)T(x^p) may still be irreducible. The behaviour is undefined if TT is reducible. TT need not be primitive and may have negative leading coefficient.

By Capelli's theorem, for prime pp the polynomial T(xp)T(x^p) is irreducible over Q\mathbb{Q} if and only if θ\theta, the image of xx in K=Q[x]/(T)K = \mathbb{Q}[x]/(T), is not a pp-th power in KK. For deg⁡T=1\deg T = 1, and for deg⁡T=2\deg T = 2 with p=2p = 2, this is decided exactly (the return value is 1 precisely when T(xp)T(x^p) is irreducible). Otherwise the function searches for a rational prime qq, with TT squarefree modulo qq and qq dividing neither the leading nor the constant coefficient of TT, such that θ\theta reduces to a non-pp-th power in some residue field of KK above qq, which is detected with Euler's criterion θ(qf−1)/p≠1\theta^{(q^f - 1)/p} \ne 1 in a residue field of degree ff; any such witness proves θ∉Kp\theta \notin K^p. The search budget is linear in deg⁡T\deg T (for inputs with abelian splitting fields of exponent pp, such as deflations of Swinnerton-Dyer polynomials, witnesses have density only 1/(pdeg⁡T)1/(p \deg T) among the primes and occur only in degree-1 residue fields), and the search stops early when the accumulated local evidence makes irreducibility unlikely.

Cite this page

The FLINT team, “_fmpz_poly_factor_inflation_is_irreducible_capelli (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_inflation_is_irreducible_capelli.html (generated 2026-11-02).