FLINT3.7.0-dev

fmpz_mpoly_pfrac

Synopsis#include <flint/fmpz_mpoly_factor.h>
int fmpz_mpoly_pfrac(slong l, fmpz_mpoly_t t, const slong * degs, fmpz_mpoly_pfrac_t Iv, const fmpz_mpoly_ctx_t ctx)source

Solves t = \sum_i \delta_i \prod_{j \ne i} \beta_j^{(l)} in the variables x_0, \ldots, x_l with \deg_{x_0} \delta_i < \deg_{x_0} \beta_i and \deg_{x_k} \delta_i at most what the bound degs[k] allows, storing the solution in Iv->deltas + l*r. For l = 0 this is a univariate problem; for l > 0 the Taylor coefficients of t in x_l - \alpha_{l-1} are processed in turn, each by a call at level l - 1. t is destroyed. Returns 1 if a solution exists, 0 if no solution satisfies the degree bounds, and -1 if t cannot be repacked to the working bits.

Cite this page

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