FORM v5.0.0-35-g6318119
Data Structures | Typedefs | Functions
flintinterface.h File Reference
#include "form3.h"
#include <flint/flint.h>
#include <flint/fmpz.h>
#include <flint/fmpz_mpoly.h>
#include <flint/fmpz_mpoly_factor.h>
#include <flint/fmpz_poly.h>
#include <flint/fmpz_poly_factor.h>
#include <cassert>
#include <cstdint>
#include <iostream>
#include <map>
#include <vector>
Include dependency graph for flintinterface.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  fmpz
 
class  poly
 
class  poly_factor
 
class  mpoly
 
class  mpoly_factor
 
class  mpoly_ctx
 

Typedefs

typedef std::map< uint32_t, uint32_t > var_map_t
 

Functions

void cleanup (void)
 
void cleanup_master (void)
 
WORD * divmod_mpoly (PHEAD const WORD *, const WORD *, const bool, const WORD, const var_map_t &)
 
WORD * divmod_poly (PHEAD const WORD *, const WORD *, const bool, const WORD, const var_map_t &)
 
WORD * factorize_mpoly (PHEAD const WORD *, WORD *, const bool, const bool, const var_map_t &)
 
WORD * factorize_poly (PHEAD const WORD *, WORD *, const bool, const bool, const var_map_t &)
 
void form_sort (PHEAD WORD *)
 
uint64_t from_argument_mpoly (fmpz_mpoly_t, fmpz_mpoly_t, const WORD *, const bool, const var_map_t &, const fmpz_mpoly_ctx_t)
 
uint64_t from_argument_poly (fmpz_poly_t, fmpz_poly_t, const WORD *, const bool)
 
WORD fmpz_get_form (fmpz_t, WORD *)
 
void fmpz_set_form (fmpz_t, UWORD *, WORD)
 
WORD * gcd_mpoly (PHEAD const WORD *, const WORD *, const WORD, const var_map_t &)
 
WORD * gcd_poly (PHEAD const WORD *, const WORD *, const WORD, const var_map_t &)
 
var_map_t get_variables (const vector< WORD * > &, const bool, const bool)
 
WORD * inverse_poly (PHEAD const WORD *, const WORD *, const var_map_t &)
 
WORD * mul_mpoly (PHEAD const WORD *, const WORD *, const var_map_t &)
 
WORD * mul_poly (PHEAD const WORD *, const WORD *, const var_map_t &)
 
void ratfun_add_mpoly (PHEAD const WORD *, const WORD *, WORD *, const var_map_t &)
 
void ratfun_add_poly (PHEAD const WORD *, const WORD *, WORD *, const var_map_t &)
 
void ratfun_normalize_mpoly (PHEAD WORD *, const var_map_t &)
 
void ratfun_normalize_poly (PHEAD WORD *, const var_map_t &)
 
void ratfun_read_mpoly (const WORD *, fmpz_mpoly_t, fmpz_mpoly_t, const var_map_t &, fmpz_mpoly_ctx_t)
 
void ratfun_read_poly (const WORD *, fmpz_poly_t, fmpz_poly_t)
 
uint64_t to_argument_mpoly (PHEAD WORD *, const bool, const bool, const bool, const uint64_t, const fmpz_mpoly_t, const var_map_t &, const fmpz_mpoly_ctx_t)
 
uint64_t to_argument_mpoly (PHEAD WORD *, const bool, const bool, const bool, const uint64_t, const fmpz_mpoly_t, const var_map_t &, const fmpz_mpoly_ctx_t, const fmpz_t)
 
uint64_t to_argument_poly (PHEAD WORD *, const bool, const bool, const bool, const uint64_t, const fmpz_poly_t, const var_map_t &)
 
uint64_t to_argument_poly (PHEAD WORD *, const bool, const bool, const bool, const uint64_t, const fmpz_poly_t, const var_map_t &, const fmpz_t)
 
void simplify_fmpz (fmpz_t, fmpz_t, fmpz_t)
 
void simplify_fmpz_poly (fmpz_poly_t, fmpz_poly_t, fmpz_poly_t)
 
void fix_sign_fmpz_mpoly_ratfun (fmpz_mpoly_t, fmpz_mpoly_t, const fmpz_mpoly_ctx_t)
 
void fix_sign_fmpz_poly_ratfun (fmpz_poly_t, fmpz_poly_t)
 

Detailed Description

Prototypes for functions in flintinterface.cc

Definition in file flintinterface.h.

Typedef Documentation

◆ var_map_t

typedef std::map<uint32_t,uint32_t> var_map_t

Definition at line 76 of file flintinterface.h.

Function Documentation

◆ cleanup()

void cleanup ( void  )

Definition at line 76 of file flintinterface.cc.

◆ cleanup_master()

void cleanup_master ( void  )

Definition at line 83 of file flintinterface.cc.

◆ divmod_mpoly()

WORD * divmod_mpoly ( PHEAD const WORD *  a,
const WORD *  b,
const bool  return_rem,
const WORD  must_fit_term,
const var_map_t &  var_map 
)

Definition at line 91 of file flintinterface.cc.

◆ divmod_poly()

WORD * divmod_poly ( PHEAD const WORD *  a,
const WORD *  b,
const bool  return_rem,
const WORD  must_fit_term,
const var_map_t &  var_map 
)

Definition at line 161 of file flintinterface.cc.

◆ factorize_mpoly()

WORD * factorize_mpoly ( PHEAD const WORD *  argin,
WORD *  argout,
const bool  with_arghead,
const bool  is_fun_arg,
const var_map_t &  var_map 
)

Definition at line 235 of file flintinterface.cc.

◆ factorize_poly()

WORD * factorize_poly ( PHEAD const WORD *  argin,
WORD *  argout,
const bool  with_arghead,
const bool  is_fun_arg,
const var_map_t &  var_map 
)

Definition at line 383 of file flintinterface.cc.

◆ form_sort()

void form_sort ( PHEAD WORD *  terms)

Definition at line 456 of file flintinterface.cc.

◆ from_argument_mpoly()

uint64_t from_argument_mpoly ( fmpz_mpoly_t  poly,
fmpz_mpoly_t  denpoly,
const WORD *  args,
const bool  with_arghead,
const var_map_t &  var_map,
const fmpz_mpoly_ctx_t  ctx 
)

Definition at line 511 of file flintinterface.cc.

◆ from_argument_poly()

uint64_t from_argument_poly ( fmpz_poly_t  poly,
fmpz_poly_t  denpoly,
const WORD *  args,
const bool  with_arghead 
)

Definition at line 654 of file flintinterface.cc.

◆ fmpz_get_form()

WORD fmpz_get_form ( fmpz_t  z,
WORD *  a 
)

Definition at line 784 of file flintinterface.cc.

◆ fmpz_set_form()

void fmpz_set_form ( fmpz_t  z,
UWORD *  a,
WORD  na 
)

Definition at line 849 of file flintinterface.cc.

◆ gcd_mpoly()

WORD * gcd_mpoly ( PHEAD const WORD *  a,
const WORD *  b,
const WORD  must_fit_term,
const var_map_t &  var_map 
)

Definition at line 915 of file flintinterface.cc.

◆ gcd_poly()

WORD * gcd_poly ( PHEAD const WORD *  a,
const WORD *  b,
const WORD  must_fit_term,
const var_map_t &  var_map 
)

Definition at line 1011 of file flintinterface.cc.

◆ get_variables()

flint::var_map_t get_variables ( const vector< WORD * > &  es,
const bool  with_arghead,
const bool  sort_vars 
)

Definition at line 1093 of file flintinterface.cc.

◆ inverse_poly()

WORD * inverse_poly ( PHEAD const WORD *  a,
const WORD *  b,
const var_map_t &  var_map 
)

Definition at line 1210 of file flintinterface.cc.

◆ mul_mpoly()

WORD * mul_mpoly ( PHEAD const WORD *  a,
const WORD *  b,
const var_map_t &  var_map 
)

Definition at line 1286 of file flintinterface.cc.

◆ mul_poly()

WORD * mul_poly ( PHEAD const WORD *  a,
const WORD *  b,
const var_map_t &  var_map 
)

Definition at line 1338 of file flintinterface.cc.

◆ ratfun_add_mpoly()

void ratfun_add_mpoly ( PHEAD const WORD *  t1,
const WORD *  t2,
WORD *  out,
const var_map_t &  var_map 
)

Definition at line 1389 of file flintinterface.cc.

◆ ratfun_add_poly()

void ratfun_add_poly ( PHEAD const WORD *  t1,
const WORD *  t2,
WORD *  out,
const var_map_t &  var_map 
)

Definition at line 1441 of file flintinterface.cc.

◆ ratfun_normalize_mpoly()

void ratfun_normalize_mpoly ( PHEAD WORD *  term,
const var_map_t &  var_map 
)

Definition at line 1494 of file flintinterface.cc.

◆ ratfun_normalize_poly()

void ratfun_normalize_poly ( PHEAD WORD *  term,
const var_map_t &  var_map 
)

Definition at line 1577 of file flintinterface.cc.

◆ ratfun_read_mpoly()

void ratfun_read_mpoly ( const WORD *  a,
fmpz_mpoly_t  num,
fmpz_mpoly_t  den,
const var_map_t &  var_map,
fmpz_mpoly_ctx_t  ctx 
)

Definition at line 1660 of file flintinterface.cc.

◆ ratfun_read_poly()

void ratfun_read_poly ( const WORD *  a,
fmpz_poly_t  num,
fmpz_poly_t  den 
)

Definition at line 1718 of file flintinterface.cc.

◆ to_argument_mpoly() [1/2]

uint64_t to_argument_mpoly ( PHEAD WORD *  out,
const bool  with_arghead,
const bool  must_fit_term,
const bool  write,
const uint64_t  prev_size,
const fmpz_mpoly_t  poly,
const var_map_t &  var_map,
const fmpz_mpoly_ctx_t  ctx 
)

Definition at line 1976 of file flintinterface.cc.

◆ to_argument_mpoly() [2/2]

uint64_t to_argument_mpoly ( PHEAD WORD *  out,
const bool  with_arghead,
const bool  must_fit_term,
const bool  write,
const uint64_t  prev_size,
const fmpz_mpoly_t  poly,
const var_map_t &  var_map,
const fmpz_mpoly_ctx_t  ctx,
const fmpz_t  denscale 
)

Definition at line 1780 of file flintinterface.cc.

◆ to_argument_poly() [1/2]

uint64_t to_argument_poly ( PHEAD WORD *  out,
const bool  with_arghead,
const bool  must_fit_term,
const bool  write,
const uint64_t  prev_size,
const fmpz_poly_t  poly,
const var_map_t &  var_map 
)

Definition at line 2167 of file flintinterface.cc.

◆ to_argument_poly() [2/2]

uint64_t to_argument_poly ( PHEAD WORD *  out,
const bool  with_arghead,
const bool  must_fit_term,
const bool  write,
const uint64_t  prev_size,
const fmpz_poly_t  poly,
const var_map_t &  var_map,
const fmpz_t  denscale 
)

Definition at line 1998 of file flintinterface.cc.

◆ simplify_fmpz()

void simplify_fmpz ( fmpz_t  num,
fmpz_t  den,
fmpz_t  gcd 
)
inline

Definition at line 2188 of file flintinterface.cc.

◆ simplify_fmpz_poly()

void simplify_fmpz_poly ( fmpz_poly_t  num,
fmpz_poly_t  den,
fmpz_poly_t  gcd 
)
inline

Definition at line 2200 of file flintinterface.cc.

◆ fix_sign_fmpz_mpoly_ratfun()

void fix_sign_fmpz_mpoly_ratfun ( fmpz_mpoly_t  num,
fmpz_mpoly_t  den,
const fmpz_mpoly_ctx_t  ctx 
)
inline

Definition at line 2217 of file flintinterface.cc.

◆ fix_sign_fmpz_poly_ratfun()

void fix_sign_fmpz_poly_ratfun ( fmpz_poly_t  num,
fmpz_poly_t  den 
)
inline

Definition at line 2229 of file flintinterface.cc.