FLINT3.7.0-dev

nmod_mpoly_divides_monagan_pearce, nmod_mpoly_divides_dense

Synopsis#include <flint/nmod_mpoly.h>
int nmod_mpoly_divides_monagan_pearce(nmod_mpoly_t Q, const nmod_mpoly_t A, const nmod_mpoly_t B, const nmod_mpoly_ctx_t ctx)source
int nmod_mpoly_divides_dense(nmod_mpoly_t Q, const nmod_mpoly_t A, const nmod_mpoly_t B, const nmod_mpoly_ctx_t ctx)source

Variants of nmod_mpoly_divides. The first uses the heap algorithm of Monagan and Pearce [MonPea2011] in one thread, which stops as soon as a remainder term cannot be divided. nmod_mpoly_divides_dense uses Kronecker substitution and univariate division; it returns -1 if the dense representation would be too large, and otherwise 0 or 1 as nmod_mpoly_divides.

References#

Cite this page

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