2 #ifndef LIBPOLYS_POLYS_FLINT_MPOLY_H
3 #define LIBPOLYS_POLYS_FLINT_MPOLY_H
12 #include <flint/flint.h>
15 #if __FLINT_RELEASE >= 20503
16 #include <flint/fmpq.h>
17 #include <flint/fmpq_poly.h>
18 #include <flint/fmpq_mpoly.h>
20 BOOLEAN convSingRFlintR(fmpq_mpoly_ctx_t ctx,
const ring r);
21 void convSingPFlintMP(fmpq_mpoly_t
res, fmpq_mpoly_ctx_t ctx, poly
p,
int lp,
const ring r);
22 poly convFlintMPSingP(fmpq_mpoly_t
p, fmpq_mpoly_ctx_t ctx,
const ring r);
24 BOOLEAN convSingRFlintR(nmod_mpoly_ctx_t ctx,
const ring r);
25 void convSingPFlintMP(nmod_mpoly_t
res, nmod_mpoly_ctx_t ctx, poly
p,
int lp,
const ring r);
26 poly convFlintMPSingP(nmod_mpoly_t
p, nmod_mpoly_ctx_t ctx,
const ring r);
28 BOOLEAN convSingRFlintR(fmpz_mpoly_ctx_t ctx,
const ring r);
29 void convSingPFlintMP(fmpz_mpoly_t
res, fmpq_mpoly_ctx_t ctx, poly
p,
int lp,
const ring r);
30 poly convFlintMPSingP(fmpz_mpoly_t
p, fmpq_mpoly_ctx_t ctx,
const ring r);
32 poly Flint_Mult_MP(poly
p,
int lp,poly q,
int lq,fmpq_mpoly_ctx_t ctx,
const ring r);
33 poly Flint_Mult_MP(poly
p,
int lp,poly q,
int lq,nmod_mpoly_ctx_t ctx,
const ring r);
34 poly Flint_Mult_MP(poly
p,
int lp,poly q,
int lq,fmpz_mpoly_ctx_t ctx,
const ring r);
35 poly Flint_Divide_MP(poly
p,
int lp, poly q,
int lq, fmpq_mpoly_ctx_t ctx,
const ring r);
36 poly Flint_Divide_MP(poly
p,
int lp, poly q,
int lq, nmod_mpoly_ctx_t ctx,
const ring r);
37 poly Flint_GCD_MP(poly
p,
int lp,poly q,
int lq,fmpq_mpoly_ctx_t ctx,
const ring r);
38 poly Flint_GCD_MP(poly
p,
int lp,poly q,
int lq,nmod_mpoly_ctx_t ctx,
const ring r);