FLINT3.7.0-dev

n_fq_bpoly_factor_smprime, n_fq_bpoly_factor_lgprime

Synopsis#include <flint/fq_nmod_mpoly_factor.h>
int n_fq_bpoly_factor_smprime(n_poly_t c, n_tpoly_t F, n_bpoly_t B, int allow_shift, const fq_nmod_ctx_t ctx)source
int n_fq_bpoly_factor_lgprime(n_poly_t c, n_tpoly_t F, n_bpoly_t B, const fq_nmod_ctx_t ctx, flint_rand_t state)source

Factor the bivariate B, separable in the main variable: set c to its content and F to its irreducible factors. The smprime version evaluates the inner variable at a point of \mathbb{F}_q (only 0 unless allow_shift), lifts by Hensel lifting and recombines by linear algebra [Lec2006], returning 0 if no point works; the lgprime version reduces the inner variable modulo irreducible polynomials over \mathbb{F}_q (working over \mathbb{F}_{q^n}) and always succeeds.

References#

  • [Lec2006] G. Lecerf. Sharp precision in Hensel lifting for bivariate polynomial factorization. Mathematics of Computation 75 (2006), 921–933.
Cite this page

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