FLINT3.7.0-dev

nmod_mpoly_deflate, nmod_mpoly_inflate

Synopsis#include <flint/nmod_mpoly.h>
void nmod_mpoly_deflate(nmod_mpoly_t A, const nmod_mpoly_t B, const fmpz * shift, const fmpz * stride, const nmod_mpoly_ctx_t ctx)source
void nmod_mpoly_inflate(nmod_mpoly_t A, const nmod_mpoly_t B, const fmpz * shift, const fmpz * stride, const nmod_mpoly_ctx_t ctx)source

nmod_mpoly_deflate replaces each exponent ee of the variable vv by (e−(e - shift[v])/)/stride[v] (which must be exact), with the convention that a zero stride gives 0. nmod_mpoly_inflate applies e↦e \mapsto shift[v] ++ stride[v] ee. Shifts and strides must be nonnegative. Deflating by the values of nmod_mpoly_deflation and inflating gives back the polynomial.

Cite this page

The FLINT team, “nmod_mpoly_deflate, nmod_mpoly_inflate (nmod_mpoly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/nmod_mpoly/nmod_mpoly_deflate.html (generated 2026-11-02).