FLINT3.7.0-dev

mpoly_monomials_deflate, mpoly_monomials_inflate

Synopsis#include <flint/mpoly.h>
void mpoly_monomials_deflate(ulong * Aexps, flint_bitcnt_t Abits, const ulong * Bexps, flint_bitcnt_t Bbits, slong Blength, const fmpz * shift, const fmpz * stride, const mpoly_ctx_t mctx)source
void mpoly_monomials_inflate(ulong * Aexps, flint_bitcnt_t Abits, const ulong * Bexps, flint_bitcnt_t Bbits, slong Blength, const fmpz * shift, const fmpz * stride, const mpoly_ctx_t mctx)source

Apply e \mapsto (e - \mathit{shift}_v)/\mathit{stride}_v (deflate) or e \mapsto \mathit{shift}_v + \mathit{stride}_v e (inflate) to the exponent of each variable v of the monomials Bexps, writing the result to Aexps with Abits bits, which must be large enough. When deflating, a zero stride maps the exponent to zero, and every e - \mathit{shift}_v must be divisible by the stride. The order of the monomials may change.

Cite this page

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