Polly 22.0.0git
isl_polynomial.c File Reference
#include <stdlib.h>
#include <isl_ctx_private.h>
#include <isl_map_private.h>
#include <isl_factorization.h>
#include <isl_lp_private.h>
#include <isl_seq.h>
#include <isl_union_map_private.h>
#include <isl_constraint_private.h>
#include <isl_polynomial_private.h>
#include <isl_point_private.h>
#include <isl_space_private.h>
#include <isl_mat_private.h>
#include <isl_vec_private.h>
#include <isl_range.h>
#include <isl_local.h>
#include <isl_local_space_private.h>
#include <isl_aff_private.h>
#include <isl_val_private.h>
#include <isl_config.h>
#include <isl_list_templ.c>
#include "isl_type_has_equal_space_bin_templ.c"
#include "isl_type_check_equal_space_templ.c"
#include "check_type_range_templ.c"
#include <isl_pw_templ.c>
#include <isl_pw_un_op_templ.c>
#include <isl_pw_add_disjoint_templ.c>
#include <isl_pw_eval.c>
#include <isl_pw_fix_templ.c>
#include <isl_pw_from_range_templ.c>
#include <isl_pw_insert_dims_templ.c>
#include <isl_pw_lift_templ.c>
#include <isl_pw_morph_templ.c>
#include <isl_pw_move_dims_templ.c>
#include <isl_pw_neg_templ.c>
#include <isl_pw_opt_templ.c>
#include <isl_pw_split_dims_templ.c>
#include <isl_pw_sub_templ.c>
#include <isl_union_single.c>
#include <isl_union_eval.c>
#include <isl_union_neg.c>
#include <isl_union_sub_templ.c>

Go to the source code of this file.

Classes

struct  isl_div_sort_info
struct  isl_opt_data
struct  isl_split_periods_data
struct  isl_multiplicative_call_data_pw_qpolynomial
struct  isl_to_poly_data

Macros

#define EL_BASE   qpolynomial
#define EL_BASE   pw_qpolynomial
#define TYPE   isl_qpolynomial
#define PEEK_SPACE   peek_domain_space
#define TYPE   isl_qpolynomial
#define isl_qpolynomial_involves_nan   isl_qpolynomial_is_nan
#define PW   isl_pw_qpolynomial
#define BASE   qpolynomial
#define EL_IS_ZERO   is_zero
#define ZERO   zero
#define IS_ZERO   is_zero
#define FIELD   qp
#define DEFAULT_IS_ZERO   1
#define BASE   pw_qpolynomial
#define TYPE   isl_term

Functions

static unsigned pos (__isl_keep isl_space *space, enum isl_dim_type type)
isl_bool isl_poly_is_cst (__isl_keep isl_poly *poly)
__isl_keep isl_poly_cstisl_poly_as_cst (__isl_keep isl_poly *poly)
__isl_keep isl_poly_recisl_poly_as_rec (__isl_keep isl_poly *poly)
static int isl_poly_plain_cmp (__isl_keep isl_poly *poly1, __isl_keep isl_poly *poly2)
isl_bool isl_poly_is_equal (__isl_keep isl_poly *poly1, __isl_keep isl_poly *poly2)
isl_bool isl_poly_is_zero (__isl_keep isl_poly *poly)
int isl_poly_sgn (__isl_keep isl_poly *poly)
isl_bool isl_poly_is_nan (__isl_keep isl_poly *poly)
isl_bool isl_poly_is_infty (__isl_keep isl_poly *poly)
isl_bool isl_poly_is_neginfty (__isl_keep isl_poly *poly)
isl_bool isl_poly_is_one (__isl_keep isl_poly *poly)
isl_bool isl_poly_is_negone (__isl_keep isl_poly *poly)
__isl_give isl_poly_cstisl_poly_cst_alloc (isl_ctx *ctx)
__isl_give isl_polyisl_poly_zero (isl_ctx *ctx)
__isl_give isl_polyisl_poly_one (isl_ctx *ctx)
__isl_give isl_polyisl_poly_infty (isl_ctx *ctx)
__isl_give isl_polyisl_poly_neginfty (isl_ctx *ctx)
__isl_give isl_polyisl_poly_nan (isl_ctx *ctx)
__isl_give isl_polyisl_poly_rat_cst (isl_ctx *ctx, isl_int n, isl_int d)
__isl_give isl_poly_recisl_poly_alloc_rec (isl_ctx *ctx, int var, int size)
__isl_give isl_qpolynomialisl_qpolynomial_reset_domain_space (__isl_take isl_qpolynomial *qp, __isl_take isl_space *space)
__isl_give isl_qpolynomialisl_qpolynomial_reset_space_and_domain (__isl_take isl_qpolynomial *qp, __isl_take isl_space *space, __isl_take isl_space *domain)
isl_ctxisl_qpolynomial_get_ctx (__isl_keep isl_qpolynomial *qp)
static __isl_keep isl_spaceisl_qpolynomial_peek_domain_space (__isl_keep isl_qpolynomial *qp)
__isl_give isl_spaceisl_qpolynomial_get_domain_space (__isl_keep isl_qpolynomial *qp)
static static static __isl_give isl_local_spaceisl_qpolynomial_get_domain_local_space (__isl_keep isl_qpolynomial *qp)
__isl_give isl_spaceisl_qpolynomial_get_space (__isl_keep isl_qpolynomial *qp)
isl_size isl_qpolynomial_domain_dim (__isl_keep isl_qpolynomial *qp, enum isl_dim_type type)
static enum isl_dim_type domain_type (enum isl_dim_type type)
isl_size isl_qpolynomial_dim (__isl_keep isl_qpolynomial *qp, enum isl_dim_type type)
static isl_size isl_qpolynomial_domain_var_offset (__isl_keep isl_qpolynomial *qp, enum isl_dim_type type)
unsigned isl_qpolynomial_domain_offset (__isl_keep isl_qpolynomial *qp, enum isl_dim_type type)
isl_bool isl_qpolynomial_is_zero (__isl_keep isl_qpolynomial *qp)
isl_bool isl_qpolynomial_is_one (__isl_keep isl_qpolynomial *qp)
isl_bool isl_qpolynomial_is_nan (__isl_keep isl_qpolynomial *qp)
isl_bool isl_qpolynomial_is_infty (__isl_keep isl_qpolynomial *qp)
isl_bool isl_qpolynomial_is_neginfty (__isl_keep isl_qpolynomial *qp)
int isl_qpolynomial_sgn (__isl_keep isl_qpolynomial *qp)
static void poly_free_cst (__isl_take isl_poly_cst *cst)
static void poly_free_rec (__isl_take isl_poly_rec *rec)
__isl_give isl_polyisl_poly_copy (__isl_keep isl_poly *poly)
__isl_give isl_polyisl_poly_dup_cst (__isl_keep isl_poly *poly)
__isl_give isl_polyisl_poly_dup_rec (__isl_keep isl_poly *poly)
__isl_give isl_polyisl_poly_dup (__isl_keep isl_poly *poly)
__isl_give isl_polyisl_poly_cow (__isl_take isl_poly *poly)
__isl_null isl_polyisl_poly_free (__isl_take isl_poly *poly)
static void isl_poly_cst_reduce (__isl_keep isl_poly_cst *cst)
__isl_give isl_polyisl_poly_sum_cst (__isl_take isl_poly *poly1, __isl_take isl_poly *poly2)
static __isl_give isl_polyreplace_by_zero (__isl_take isl_poly *poly)
static __isl_give isl_polyreplace_by_constant_term (__isl_take isl_poly *poly)
__isl_give isl_polyisl_poly_sum (__isl_take isl_poly *poly1, __isl_take isl_poly *poly2)
__isl_give isl_polyisl_poly_cst_add_isl_int (__isl_take isl_poly *poly, isl_int v)
__isl_give isl_polyisl_poly_add_isl_int (__isl_take isl_poly *poly, isl_int v)
__isl_give isl_polyisl_poly_cst_mul_isl_int (__isl_take isl_poly *poly, isl_int v)
__isl_give isl_polyisl_poly_mul_isl_int (__isl_take isl_poly *poly, isl_int v)
static __isl_give isl_polyisl_poly_cst_scale_val (__isl_take isl_poly *poly, __isl_keep isl_val *v)
static __isl_give isl_polyisl_poly_scale_val (__isl_take isl_poly *poly, __isl_keep isl_val *v)
__isl_give isl_polyisl_poly_mul_cst (__isl_take isl_poly *poly1, __isl_take isl_poly *poly2)
__isl_give isl_polyisl_poly_mul_rec (__isl_take isl_poly *poly1, __isl_take isl_poly *poly2)
__isl_give isl_polyisl_poly_mul (__isl_take isl_poly *poly1, __isl_take isl_poly *poly2)
__isl_give isl_polyisl_poly_pow (__isl_take isl_poly *poly, unsigned power)
__isl_give isl_qpolynomialisl_qpolynomial_alloc (__isl_take isl_space *space, unsigned n_div, __isl_take isl_poly *poly)
__isl_give isl_qpolynomialisl_qpolynomial_copy (__isl_keep isl_qpolynomial *qp)
__isl_give isl_qpolynomialisl_qpolynomial_dup (__isl_keep isl_qpolynomial *qp)
__isl_give isl_qpolynomialisl_qpolynomial_cow (__isl_take isl_qpolynomial *qp)
__isl_null isl_qpolynomialisl_qpolynomial_free (__isl_take isl_qpolynomial *qp)
__isl_give isl_polyisl_poly_var_pow (isl_ctx *ctx, int pos, int power)
static __isl_give isl_polyreorder (__isl_take isl_poly *poly, int *r)
static isl_bool compatible_divs (__isl_keep isl_mat *div1, __isl_keep isl_mat *div2)
static int cmp_row (__isl_keep isl_mat *div, int i, int j)
static int div_sort_cmp (const void *p1, const void *p2)
static __isl_give isl_qpolynomialsort_divs (__isl_take isl_qpolynomial *qp)
static __isl_give isl_polyexpand (__isl_take isl_poly *poly, int *exp, int first)
static __isl_give isl_qpolynomialwith_merged_divs (__isl_give isl_qpolynomial *(*fn)(__isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2), __isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2)
__isl_give isl_qpolynomialisl_qpolynomial_add (__isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2)
__isl_give isl_qpolynomialisl_qpolynomial_add_on_domain (__isl_keep isl_set *dom, __isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2)
__isl_give isl_qpolynomialisl_qpolynomial_sub (__isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2)
__isl_give isl_qpolynomialisl_qpolynomial_add_isl_int (__isl_take isl_qpolynomial *qp, isl_int v)
__isl_give isl_qpolynomialisl_qpolynomial_neg (__isl_take isl_qpolynomial *qp)
__isl_give isl_qpolynomialisl_qpolynomial_mul_isl_int (__isl_take isl_qpolynomial *qp, isl_int v)
__isl_give isl_qpolynomialisl_qpolynomial_scale (__isl_take isl_qpolynomial *qp, isl_int v)
__isl_give isl_qpolynomialisl_qpolynomial_scale_val (__isl_take isl_qpolynomial *qp, __isl_take isl_val *v)
__isl_give isl_qpolynomialisl_qpolynomial_scale_down_val (__isl_take isl_qpolynomial *qp, __isl_take isl_val *v)
__isl_give isl_qpolynomialisl_qpolynomial_mul (__isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2)
__isl_give isl_qpolynomialisl_qpolynomial_pow (__isl_take isl_qpolynomial *qp, unsigned power)
__isl_give isl_pw_qpolynomialisl_pw_qpolynomial_pow (__isl_take isl_pw_qpolynomial *pwqp, unsigned power)
__isl_give isl_qpolynomialisl_qpolynomial_zero_on_domain (__isl_take isl_space *domain)
__isl_give isl_qpolynomialisl_qpolynomial_one_on_domain (__isl_take isl_space *domain)
__isl_give isl_qpolynomialisl_qpolynomial_infty_on_domain (__isl_take isl_space *domain)
__isl_give isl_qpolynomialisl_qpolynomial_neginfty_on_domain (__isl_take isl_space *domain)
__isl_give isl_qpolynomialisl_qpolynomial_nan_on_domain (__isl_take isl_space *domain)
__isl_give isl_qpolynomialisl_qpolynomial_cst_on_domain (__isl_take isl_space *domain, isl_int v)
isl_bool isl_qpolynomial_is_cst (__isl_keep isl_qpolynomial *qp, isl_int *n, isl_int *d)
static __isl_give isl_valisl_poly_get_constant_val (__isl_keep isl_poly *poly)
__isl_give isl_valisl_qpolynomial_get_constant_val (__isl_keep isl_qpolynomial *qp)
isl_bool isl_poly_is_affine (__isl_keep isl_poly *poly)
isl_bool isl_qpolynomial_is_affine (__isl_keep isl_qpolynomial *qp)
static void update_coeff (__isl_keep isl_vec *aff, __isl_keep isl_poly_cst *cst, int pos)
int isl_poly_update_affine (__isl_keep isl_poly *poly, __isl_keep isl_vec *aff)
__isl_give isl_vecisl_qpolynomial_extract_affine (__isl_keep isl_qpolynomial *qp)
int isl_qpolynomial_plain_cmp (__isl_keep isl_qpolynomial *qp1, __isl_keep isl_qpolynomial *qp2)
isl_bool isl_qpolynomial_plain_is_equal (__isl_keep isl_qpolynomial *qp1, __isl_keep isl_qpolynomial *qp2)
static isl_stat poly_update_den (__isl_keep isl_poly *poly, isl_int *d)
__isl_give isl_valisl_qpolynomial_get_den (__isl_keep isl_qpolynomial *qp)
__isl_give isl_qpolynomialisl_qpolynomial_var_pow_on_domain (__isl_take isl_space *domain, int pos, int power)
__isl_give isl_qpolynomialisl_qpolynomial_var_on_domain (__isl_take isl_space *domain, enum isl_dim_type type, unsigned pos)
__isl_give isl_polyisl_poly_subs (__isl_take isl_poly *poly, unsigned first, unsigned n, __isl_keep isl_poly **subs)
__isl_give isl_polyisl_poly_from_affine (isl_ctx *ctx, isl_int *f, isl_int denom, unsigned len)
static void normalize_div (__isl_keep isl_qpolynomial *qp, int div)
static __isl_give isl_qpolynomialsubstitute_div (__isl_take isl_qpolynomial *qp, int div, __isl_take isl_poly *s)
static __isl_give isl_qpolynomialsubstitute_non_divs (__isl_take isl_qpolynomial *qp)
static void reduce_div (__isl_keep isl_qpolynomial *qp, int div, __isl_keep isl_mat **mat)
static int needs_invert (__isl_keep isl_mat *div, int row)
static void invert_div (__isl_keep isl_qpolynomial *qp, int div, __isl_keep isl_mat **mat)
static __isl_give isl_qpolynomialreduce_divs (__isl_take isl_qpolynomial *qp)
__isl_give isl_qpolynomialisl_qpolynomial_rat_cst_on_domain (__isl_take isl_space *domain, const isl_int n, const isl_int d)
__isl_give isl_qpolynomialisl_qpolynomial_val_on_domain (__isl_take isl_space *domain, __isl_take isl_val *val)
static isl_stat poly_set_active (__isl_keep isl_poly *poly, int *active, int d)
static isl_stat set_active (__isl_keep isl_qpolynomial *qp, int *active)
static isl_bool isl_qpolynomial_involves_dims (__isl_keep isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n)
static __isl_give isl_qpolynomialremove_redundant_divs (__isl_take isl_qpolynomial *qp)
__isl_give isl_polyisl_poly_drop (__isl_take isl_poly *poly, unsigned first, unsigned n)
__isl_give isl_qpolynomialisl_qpolynomial_set_dim_name (__isl_take isl_qpolynomial *qp, enum isl_dim_type type, unsigned pos, const char *s)
__isl_give isl_qpolynomialisl_qpolynomial_drop_dims (__isl_take isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n)
__isl_give isl_qpolynomialisl_qpolynomial_project_domain_on_params (__isl_take isl_qpolynomial *qp)
static __isl_give isl_qpolynomialisl_qpolynomial_substitute_equalities_lifted (__isl_take isl_qpolynomial *qp, __isl_take isl_basic_set *eq)
__isl_give isl_qpolynomialisl_qpolynomial_substitute_equalities (__isl_take isl_qpolynomial *qp, __isl_take isl_basic_set *eq)
__isl_give isl_qpolynomialisl_qpolynomial_gist (__isl_take isl_qpolynomial *qp, __isl_take isl_set *context)
__isl_give isl_qpolynomialisl_qpolynomial_gist_params (__isl_take isl_qpolynomial *qp, __isl_take isl_set *context)
static __isl_give isl_qpolynomialisl_qpolynomial_zero_in_space (__isl_take isl_space *space)
int isl_pw_qpolynomial_is_one (__isl_keep isl_pw_qpolynomial *pwqp)
__isl_give isl_pw_qpolynomialisl_pw_qpolynomial_add (__isl_take isl_pw_qpolynomial *pwqp1, __isl_take isl_pw_qpolynomial *pwqp2)
__isl_give isl_pw_qpolynomialisl_pw_qpolynomial_mul (__isl_take isl_pw_qpolynomial *pwqp1, __isl_take isl_pw_qpolynomial *pwqp2)
__isl_give isl_valisl_poly_eval (__isl_take isl_poly *poly, __isl_take isl_vec *vec)
static __isl_give isl_valeval_void (__isl_take isl_qpolynomial *qp, __isl_take isl_point *pnt)
__isl_give isl_valisl_qpolynomial_eval (__isl_take isl_qpolynomial *qp, __isl_take isl_point *pnt)
int isl_poly_cmp (__isl_keep isl_poly_cst *cst1, __isl_keep isl_poly_cst *cst2)
__isl_give isl_qpolynomialisl_qpolynomial_insert_dims (__isl_take isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n)
__isl_give isl_qpolynomialisl_qpolynomial_add_dims (__isl_take isl_qpolynomial *qp, enum isl_dim_type type, unsigned n)
static int * reordering_move (isl_ctx *ctx, unsigned len, unsigned dst, unsigned src, unsigned n)
__isl_give isl_qpolynomialisl_qpolynomial_move_dims (__isl_take isl_qpolynomial *qp, enum isl_dim_type dst_type, unsigned dst_pos, enum isl_dim_type src_type, unsigned src_pos, unsigned n)
__isl_give isl_qpolynomialisl_qpolynomial_from_affine (__isl_take isl_space *space, isl_int *f, isl_int denom)
__isl_give isl_qpolynomialisl_qpolynomial_from_aff (__isl_take isl_aff *aff)
__isl_give isl_pw_qpolynomialisl_pw_qpolynomial_from_pw_aff (__isl_take isl_pw_aff *pwaff)
__isl_give isl_qpolynomialisl_qpolynomial_from_constraint (__isl_take isl_constraint *c, enum isl_dim_type type, unsigned pos)
__isl_give isl_qpolynomialisl_qpolynomial_substitute (__isl_take isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n, __isl_keep isl_qpolynomial **subs)
isl_stat isl_qpolynomial_as_polynomial_on_domain (__isl_keep isl_qpolynomial *qp, __isl_keep isl_basic_set *bset, isl_stat(*fn)(__isl_take isl_basic_set *bset, __isl_take isl_qpolynomial *poly, void *user), void *user)
int isl_poly_degree (__isl_keep isl_poly *poly, int first, int last)
int isl_qpolynomial_degree (__isl_keep isl_qpolynomial *poly)
__isl_give isl_polyisl_poly_coeff (__isl_keep isl_poly *poly, unsigned pos, int deg)
__isl_give isl_qpolynomialisl_qpolynomial_coeff (__isl_keep isl_qpolynomial *qp, enum isl_dim_type type, unsigned t_pos, int deg)
__isl_give isl_polyisl_poly_homogenize (__isl_take isl_poly *poly, int deg, int target, int first, int last)
__isl_give isl_qpolynomialisl_qpolynomial_homogenize (__isl_take isl_qpolynomial *poly)
__isl_give isl_termisl_term_alloc (__isl_take isl_space *space, __isl_take isl_mat *div)
__isl_give isl_termisl_term_copy (__isl_keep isl_term *term)
__isl_give isl_termisl_term_dup (__isl_keep isl_term *term)
__isl_give isl_termisl_term_cow (__isl_take isl_term *term)
__isl_null isl_termisl_term_free (__isl_take isl_term *term)
isl_size isl_term_dim (__isl_keep isl_term *term, enum isl_dim_type type)
static __isl_keep isl_spaceisl_term_peek_space (__isl_keep isl_term *term)
static isl_size isl_term_offset (__isl_keep isl_term *term, enum isl_dim_type type)
isl_ctxisl_term_get_ctx (__isl_keep isl_term *term)
void isl_term_get_num (__isl_keep isl_term *term, isl_int *n)
__isl_give isl_valisl_term_get_coefficient_val (__isl_keep isl_term *term)
static isl_size isl_term_get_exp (__isl_keep isl_term *term, enum isl_dim_type type, unsigned pos)
__isl_give isl_affisl_term_get_div (__isl_keep isl_term *term, unsigned pos)
__isl_give isl_termisl_poly_foreach_term (__isl_keep isl_poly *poly, isl_stat(*fn)(__isl_take isl_term *term, void *user), __isl_take isl_term *term, void *user)
isl_stat isl_qpolynomial_foreach_term (__isl_keep isl_qpolynomial *qp, isl_stat(*fn)(__isl_take isl_term *term, void *user), void *user)
__isl_give isl_qpolynomialisl_qpolynomial_from_term (__isl_take isl_term *term)
__isl_give isl_qpolynomialisl_qpolynomial_lift (__isl_take isl_qpolynomial *qp, __isl_take isl_space *space)
static __isl_give isl_setfix_inactive (__isl_take isl_set *set, __isl_keep isl_qpolynomial *qp)
static isl_stat opt_fn (__isl_take isl_point *pnt, void *user)
__isl_give isl_valisl_qpolynomial_opt_on_domain (__isl_take isl_qpolynomial *qp, __isl_take isl_set *set, int max)
__isl_give isl_qpolynomialisl_qpolynomial_morph_domain (__isl_take isl_qpolynomial *qp, __isl_take isl_morph *morph)
__isl_give isl_union_pw_qpolynomialisl_union_pw_qpolynomial_mul (__isl_take isl_union_pw_qpolynomial *upwqp1, __isl_take isl_union_pw_qpolynomial *upwqp2)
__isl_give isl_qpolynomialisl_qpolynomial_realign_domain (__isl_take isl_qpolynomial *qp, __isl_take isl_reordering *r)
__isl_give isl_qpolynomialisl_qpolynomial_align_params (__isl_take isl_qpolynomial *qp, __isl_take isl_space *model)
static __isl_give isl_setset_div_slice (__isl_take isl_space *space, __isl_keep isl_qpolynomial *qp, int div, isl_int v)
static isl_stat split_periods (__isl_take isl_set *set, __isl_take isl_qpolynomial *qp, void *user)
static isl_stat set_div (__isl_take isl_set *set, __isl_take isl_qpolynomial *qp, int div, isl_int v, struct isl_split_periods_data *data)
static isl_stat split_div (__isl_take isl_set *set, __isl_take isl_qpolynomial *qp, int div, isl_int min, isl_int max, struct isl_split_periods_data *data)
__isl_give isl_pw_qpolynomialisl_pw_qpolynomial_split_periods (__isl_take isl_pw_qpolynomial *pwqp, int max_periods)
static __isl_give isl_pw_qpolynomialconstant_on_domain (__isl_take isl_basic_set *bset, int cst)
static __isl_give isl_pw_qpolynomialmultiplicative_call_base (__isl_take isl_basic_set *bset, __isl_give isl_pw_qpolynomial *(*fn)(__isl_take isl_basic_set *bset))
static isl_bool multiplicative_call_factor_pw_qpolynomial (__isl_keep isl_basic_set *bset, void *user)
static __isl_give isl_pw_qpolynomialcompressed_multiplicative_call (__isl_take isl_basic_set *bset, __isl_give isl_pw_qpolynomial *(*fn)(__isl_take isl_basic_set *bset))
__isl_give isl_pw_qpolynomialisl_basic_set_multiplicative_call (__isl_take isl_basic_set *bset, __isl_give isl_pw_qpolynomial *(*fn)(__isl_take isl_basic_set *bset))
static __isl_give isl_qpolynomialqp_drop_floors (__isl_take isl_qpolynomial *qp, int down)
static __isl_give isl_pw_qpolynomialpwqp_drop_floors (__isl_take isl_pw_qpolynomial *pwqp)
static __isl_give isl_qpolynomialmake_divs_pos (__isl_take isl_qpolynomial *qp, int *signs)
static isl_stat to_polynomial_on_orthant (__isl_take isl_set *orthant, int *signs, void *user)
__isl_give isl_pw_qpolynomialisl_pw_qpolynomial_to_polynomial (__isl_take isl_pw_qpolynomial *pwqp, int sign)
static __isl_give isl_pw_qpolynomialpoly_entry (__isl_take isl_pw_qpolynomial *pwqp, void *user)
__isl_give isl_union_pw_qpolynomialisl_union_pw_qpolynomial_to_polynomial (__isl_take isl_union_pw_qpolynomial *upwqp, int sign)
__isl_give isl_basic_mapisl_basic_map_from_qpolynomial (__isl_take isl_qpolynomial *qp)

Macro Definition Documentation

◆ BASE [1/2]

#define BASE   qpolynomial

Definition at line 3098 of file isl_polynomial.c.

◆ BASE [2/2]

#define BASE   pw_qpolynomial

Definition at line 3098 of file isl_polynomial.c.

◆ DEFAULT_IS_ZERO

#define DEFAULT_IS_ZERO   1

Definition at line 3108 of file isl_polynomial.c.

◆ EL_BASE [1/2]

#define EL_BASE   qpolynomial

Definition at line 32 of file isl_polynomial.c.

◆ EL_BASE [2/2]

#define EL_BASE   pw_qpolynomial

Definition at line 32 of file isl_polynomial.c.

◆ EL_IS_ZERO

#define EL_IS_ZERO   is_zero

Definition at line 3100 of file isl_polynomial.c.

◆ FIELD

#define FIELD   qp

Definition at line 3106 of file isl_polynomial.c.

◆ IS_ZERO

#define IS_ZERO   is_zero

Definition at line 3104 of file isl_polynomial.c.

◆ isl_qpolynomial_involves_nan

#define isl_qpolynomial_involves_nan   isl_qpolynomial_is_nan

Definition at line 3093 of file isl_polynomial.c.

◆ PEEK_SPACE

#define PEEK_SPACE   peek_domain_space

Definition at line 468 of file isl_polynomial.c.

Referenced by FN().

◆ PW

#define PW   isl_pw_qpolynomial

Definition at line 3096 of file isl_polynomial.c.

◆ TYPE [1/3]

#define TYPE   isl_qpolynomial

Definition at line 466 of file isl_polynomial.c.

◆ TYPE [2/3]

#define TYPE   isl_qpolynomial

Definition at line 466 of file isl_polynomial.c.

◆ TYPE [3/3]

#define TYPE   isl_term

Definition at line 466 of file isl_polynomial.c.

◆ ZERO

#define ZERO   zero

Definition at line 3102 of file isl_polynomial.c.

Function Documentation

◆ cmp_row()

int cmp_row ( __isl_keep isl_mat * div,
int i,
int j )
static

◆ compatible_divs()

isl_bool compatible_divs ( __isl_keep isl_mat * div1,
__isl_keep isl_mat * div2 )
static

◆ compressed_multiplicative_call()

◆ constant_on_domain()

◆ div_sort_cmp()

int div_sort_cmp ( const void * p1,
const void * p2 )
static

Definition at line 1487 of file isl_polynomial.c.

References cmp_row(), isl_div_sort_info::div, and isl_div_sort_info::row.

Referenced by sort_divs().

◆ domain_type()

◆ eval_void()

◆ expand()

◆ fix_inactive()

◆ invert_div()

void invert_div ( __isl_keep isl_qpolynomial * qp,
int div,
__isl_keep isl_mat ** mat )
static

◆ isl_basic_map_from_qpolynomial()

◆ isl_basic_set_multiplicative_call()

◆ isl_poly_add_isl_int()

◆ isl_poly_alloc_rec()

◆ isl_poly_as_cst()

◆ isl_poly_as_rec()

◆ isl_poly_cmp()

int isl_poly_cmp ( __isl_keep isl_poly_cst * cst1,
__isl_keep isl_poly_cst * cst2 )

◆ isl_poly_coeff()

◆ isl_poly_copy()

◆ isl_poly_cow()

◆ isl_poly_cst_add_isl_int()

__isl_give isl_poly * isl_poly_cst_add_isl_int ( __isl_take isl_poly * poly,
isl_int v )

Definition at line 928 of file isl_polynomial.c.

References __isl_give, __isl_take, isl_int_addmul, isl_poly_as_cst(), isl_poly_cow(), and poly.

Referenced by isl_poly_add_isl_int().

◆ isl_poly_cst_alloc()

◆ isl_poly_cst_mul_isl_int()

__isl_give isl_poly * isl_poly_cst_mul_isl_int ( __isl_take isl_poly * poly,
isl_int v )

◆ isl_poly_cst_reduce()

◆ isl_poly_cst_scale_val()

◆ isl_poly_degree()

int isl_poly_degree ( __isl_keep isl_poly * poly,
int first,
int last )

◆ isl_poly_drop()

◆ isl_poly_dup()

__isl_give isl_poly * isl_poly_dup ( __isl_keep isl_poly * poly)

Definition at line 693 of file isl_polynomial.c.

References __isl_give, __isl_keep, isl_poly_dup_cst(), isl_poly_dup_rec(), isl_poly_is_cst(), and poly.

Referenced by isl_poly_cow().

◆ isl_poly_dup_cst()

__isl_give isl_poly * isl_poly_dup_cst ( __isl_keep isl_poly * poly)

Definition at line 648 of file isl_polynomial.c.

References __isl_give, __isl_keep, dup(), isl_int_set, isl_poly_as_cst(), isl_poly_zero(), and poly.

Referenced by isl_poly_dup().

◆ isl_poly_dup_rec()

◆ isl_poly_eval()

◆ isl_poly_foreach_term()

◆ isl_poly_free()

◆ isl_poly_from_affine()

◆ isl_poly_get_constant_val()

◆ isl_poly_homogenize()

◆ isl_poly_infty()

__isl_give isl_poly * isl_poly_infty ( isl_ctx * ctx)

Definition at line 336 of file isl_polynomial.c.

References __isl_give, isl_int_set_si, and isl_poly_cst_alloc().

Referenced by isl_qpolynomial_infty_on_domain().

◆ isl_poly_is_affine()

◆ isl_poly_is_cst()

◆ isl_poly_is_equal()

◆ isl_poly_is_infty()

◆ isl_poly_is_nan()

◆ isl_poly_is_neginfty()

◆ isl_poly_is_negone()

isl_bool isl_poly_is_negone ( __isl_keep isl_poly * poly)

◆ isl_poly_is_one()

◆ isl_poly_is_zero()

◆ isl_poly_mul()

◆ isl_poly_mul_cst()

◆ isl_poly_mul_isl_int()

◆ isl_poly_mul_rec()

◆ isl_poly_nan()

__isl_give isl_poly * isl_poly_nan ( isl_ctx * ctx)

Definition at line 364 of file isl_polynomial.c.

References __isl_give, isl_int_set_si, and isl_poly_cst_alloc().

Referenced by isl_poly_mul(), and isl_qpolynomial_nan_on_domain().

◆ isl_poly_neginfty()

__isl_give isl_poly * isl_poly_neginfty ( isl_ctx * ctx)

Definition at line 350 of file isl_polynomial.c.

References __isl_give, isl_int_set_si, and isl_poly_cst_alloc().

Referenced by isl_qpolynomial_neginfty_on_domain().

◆ isl_poly_one()

__isl_give isl_poly * isl_poly_one ( isl_ctx * ctx)

Definition at line 322 of file isl_polynomial.c.

References __isl_give, isl_int_set_si, and isl_poly_cst_alloc().

Referenced by isl_poly_pow(), and isl_qpolynomial_one_on_domain().

◆ isl_poly_plain_cmp()

◆ isl_poly_pow()

__isl_give isl_poly * isl_poly_pow ( __isl_take isl_poly * poly,
unsigned power )

◆ isl_poly_rat_cst()

__isl_give isl_poly * isl_poly_rat_cst ( isl_ctx * ctx,
isl_int n,
isl_int d )

◆ isl_poly_scale_val()

◆ isl_poly_sgn()

int isl_poly_sgn ( __isl_keep isl_poly * poly)

Definition at line 191 of file isl_polynomial.c.

References __isl_keep, isl_int_sgn, isl_poly_as_cst(), isl_poly_is_cst(), and poly.

Referenced by isl_qpolynomial_sgn().

◆ isl_poly_subs()

◆ isl_poly_sum()

◆ isl_poly_sum_cst()

◆ isl_poly_update_affine()

◆ isl_poly_var_pow()

◆ isl_poly_zero()

◆ isl_pw_qpolynomial_add()

Definition at line 3147 of file isl_polynomial.c.

References __isl_give, and __isl_take.

Referenced by isl_obj_pw_qp_add(), and read_term().

◆ isl_pw_qpolynomial_from_pw_aff()

◆ isl_pw_qpolynomial_is_one()

int isl_pw_qpolynomial_is_one ( __isl_keep isl_pw_qpolynomial * pwqp)

◆ isl_pw_qpolynomial_mul()

◆ isl_pw_qpolynomial_pow()

__isl_give isl_pw_qpolynomial * isl_pw_qpolynomial_pow ( __isl_take isl_pw_qpolynomial * pwqp,
unsigned power )

◆ isl_pw_qpolynomial_split_periods()

◆ isl_pw_qpolynomial_to_polynomial()

◆ isl_qpolynomial_add()

◆ isl_qpolynomial_add_dims()

__isl_give isl_qpolynomial * isl_qpolynomial_add_dims ( __isl_take isl_qpolynomial * qp,
enum isl_dim_type type,
unsigned n )

◆ isl_qpolynomial_add_isl_int()

◆ isl_qpolynomial_add_on_domain()

◆ isl_qpolynomial_align_params()

◆ isl_qpolynomial_alloc()

◆ isl_qpolynomial_as_polynomial_on_domain()

◆ isl_qpolynomial_coeff()

◆ isl_qpolynomial_copy()

◆ isl_qpolynomial_cow()

◆ isl_qpolynomial_cst_on_domain()

◆ isl_qpolynomial_degree()

◆ isl_qpolynomial_dim()

◆ isl_qpolynomial_domain_dim()

◆ isl_qpolynomial_domain_offset()

unsigned isl_qpolynomial_domain_offset ( __isl_keep isl_qpolynomial * qp,
enum isl_dim_type type )

◆ isl_qpolynomial_domain_var_offset()

◆ isl_qpolynomial_drop_dims()

◆ isl_qpolynomial_dup()

◆ isl_qpolynomial_eval()

◆ isl_qpolynomial_extract_affine()

◆ isl_qpolynomial_foreach_term()

isl_stat isl_qpolynomial_foreach_term ( __isl_keep isl_qpolynomial * qp,
isl_stat(* fn )(__isl_take isl_term *term, void *user),
void * user )

◆ isl_qpolynomial_free()

__isl_null isl_qpolynomial * isl_qpolynomial_free ( __isl_take isl_qpolynomial * qp)

Definition at line 1363 of file isl_polynomial.c.

References __isl_null, __isl_take, isl_mat_free(), isl_poly_free(), and isl_space_free().

Referenced by bernstein_coefficients_base(), bernstein_coefficients_cell(), bernstein_coefficients_factors(), bernstein_coefficients_full_recursive(), compressed_guarded_poly_bound(), eval_void(), extract_coefficients(), guarded_poly_bound(), guarded_qp(), isl_basic_map_from_qpolynomial(), isl_qpolynomial_add(), isl_qpolynomial_add_dims(), isl_qpolynomial_add_isl_int(), isl_qpolynomial_align_params(), isl_qpolynomial_alloc(), isl_qpolynomial_bound_on_domain_bernstein(), isl_qpolynomial_coeff(), isl_qpolynomial_drop_dims(), isl_qpolynomial_dup(), isl_qpolynomial_eval(), isl_qpolynomial_fold_add_qpolynomial(), isl_qpolynomial_from_aff(), isl_qpolynomial_from_term(), isl_qpolynomial_homogenize(), isl_qpolynomial_insert_dims(), isl_qpolynomial_lift(), isl_qpolynomial_morph_domain(), isl_qpolynomial_move_dims(), isl_qpolynomial_mul(), isl_qpolynomial_mul_isl_int(), isl_qpolynomial_opt_on_domain(), isl_qpolynomial_pow(), isl_qpolynomial_project_domain_on_params(), isl_qpolynomial_realign_domain(), isl_qpolynomial_reset_domain_space(), isl_qpolynomial_scale_down_val(), isl_qpolynomial_scale_val(), isl_qpolynomial_set_dim_name(), isl_qpolynomial_sign(), isl_qpolynomial_substitute(), isl_qpolynomial_substitute_equalities(), isl_qpolynomial_substitute_equalities_lifted(), isl_qpolynomial_terms_of_sign(), isl_qpolynomial_val_on_domain(), make_divs_pos(), merge_lists(), monotonicity(), plug_in_at_pos(), print_qpolynomial_c(), propagate_on_domain(), qpolynomial_bound_on_domain_range(), qpolynomial_fold_covers_on_domain(), reduce_divs(), remove_redundant_divs(), set_div(), sort_divs(), split_div(), split_periods(), substitute_div(), substitute_non_divs(), to_polynomial_on_orthant(), unwrapped_guarded_poly_bound(), and with_merged_divs().

◆ isl_qpolynomial_from_aff()

◆ isl_qpolynomial_from_affine()

__isl_give isl_qpolynomial * isl_qpolynomial_from_affine ( __isl_take isl_space * space,
isl_int * f,
isl_int denom )

◆ isl_qpolynomial_from_constraint()

__isl_give isl_qpolynomial * isl_qpolynomial_from_constraint ( __isl_take isl_constraint * c,
enum isl_dim_type type,
unsigned pos )

◆ isl_qpolynomial_from_term()

◆ isl_qpolynomial_get_constant_val()

__isl_give isl_val * isl_qpolynomial_get_constant_val ( __isl_keep isl_qpolynomial * qp)

Definition at line 2036 of file isl_polynomial.c.

References __isl_give, __isl_keep, and isl_poly_get_constant_val().

Referenced by isl_qpolynomial_opt_on_domain().

◆ isl_qpolynomial_get_ctx()

◆ isl_qpolynomial_get_den()

◆ isl_qpolynomial_get_domain_local_space()

static static __isl_give isl_local_space * isl_qpolynomial_get_domain_local_space ( __isl_keep isl_qpolynomial * qp)
static

◆ isl_qpolynomial_get_domain_space()

◆ isl_qpolynomial_get_space()

◆ isl_qpolynomial_gist()

◆ isl_qpolynomial_gist_params()

◆ isl_qpolynomial_homogenize()

◆ isl_qpolynomial_infty_on_domain()

__isl_give isl_qpolynomial * isl_qpolynomial_infty_on_domain ( __isl_take isl_space * domain)

◆ isl_qpolynomial_insert_dims()

◆ isl_qpolynomial_involves_dims()

◆ isl_qpolynomial_is_affine()

isl_bool isl_qpolynomial_is_affine ( __isl_keep isl_qpolynomial * qp)

Definition at line 2072 of file isl_polynomial.c.

References __isl_keep, isl_bool_error, isl_bool_false, and isl_poly_is_affine().

Referenced by isl_qpolynomial_sign().

◆ isl_qpolynomial_is_cst()

isl_bool isl_qpolynomial_is_cst ( __isl_keep isl_qpolynomial * qp,
isl_int * n,
isl_int * d )

◆ isl_qpolynomial_is_infty()

isl_bool isl_qpolynomial_is_infty ( __isl_keep isl_qpolynomial * qp)

Definition at line 610 of file isl_polynomial.c.

References __isl_keep, isl_bool_error, and isl_poly_is_infty().

Referenced by plug_in_at_pos().

◆ isl_qpolynomial_is_nan()

◆ isl_qpolynomial_is_neginfty()

isl_bool isl_qpolynomial_is_neginfty ( __isl_keep isl_qpolynomial * qp)

Definition at line 615 of file isl_polynomial.c.

References __isl_keep, isl_bool_error, and isl_poly_is_neginfty().

Referenced by plug_in_at_pos().

◆ isl_qpolynomial_is_one()

isl_bool isl_qpolynomial_is_one ( __isl_keep isl_qpolynomial * qp)

Definition at line 600 of file isl_polynomial.c.

References __isl_keep, isl_bool_error, and isl_poly_is_one().

Referenced by isl_pw_qpolynomial_is_one().

◆ isl_qpolynomial_is_zero()

isl_bool isl_qpolynomial_is_zero ( __isl_keep isl_qpolynomial * qp)

◆ isl_qpolynomial_lift()

◆ isl_qpolynomial_morph_domain()

◆ isl_qpolynomial_move_dims()

◆ isl_qpolynomial_mul()

◆ isl_qpolynomial_mul_isl_int()

◆ isl_qpolynomial_nan_on_domain()

__isl_give isl_qpolynomial * isl_qpolynomial_nan_on_domain ( __isl_take isl_space * domain)

Definition at line 1957 of file isl_polynomial.c.

References __isl_give, __isl_take, domain, isl_poly_nan(), and isl_qpolynomial_alloc().

Referenced by read_factor().

◆ isl_qpolynomial_neg()

__isl_give isl_qpolynomial * isl_qpolynomial_neg ( __isl_take isl_qpolynomial * qp)

Definition at line 1749 of file isl_polynomial.c.

References __isl_give, __isl_take, and isl_qpolynomial_mul_isl_int().

Referenced by isl_qpolynomial_sub().

◆ isl_qpolynomial_neginfty_on_domain()

__isl_give isl_qpolynomial * isl_qpolynomial_neginfty_on_domain ( __isl_take isl_space * domain)

Definition at line 1949 of file isl_polynomial.c.

References __isl_give, __isl_take, domain, isl_poly_neginfty(), and isl_qpolynomial_alloc().

Referenced by signed_infty().

◆ isl_qpolynomial_one_on_domain()

__isl_give isl_qpolynomial * isl_qpolynomial_one_on_domain ( __isl_take isl_space * domain)

◆ isl_qpolynomial_opt_on_domain()

◆ isl_qpolynomial_peek_domain_space()

◆ isl_qpolynomial_plain_cmp()

int isl_qpolynomial_plain_cmp ( __isl_keep isl_qpolynomial * qp1,
__isl_keep isl_qpolynomial * qp2 )

◆ isl_qpolynomial_plain_is_equal()

◆ isl_qpolynomial_pow()

__isl_give isl_qpolynomial * isl_qpolynomial_pow ( __isl_take isl_qpolynomial * qp,
unsigned power )

◆ isl_qpolynomial_project_domain_on_params()

◆ isl_qpolynomial_rat_cst_on_domain()

__isl_give isl_qpolynomial * isl_qpolynomial_rat_cst_on_domain ( __isl_take isl_space * domain,
const isl_int n,
const isl_int d )

◆ isl_qpolynomial_realign_domain()

◆ isl_qpolynomial_reset_domain_space()

◆ isl_qpolynomial_reset_space_and_domain()

__isl_give isl_qpolynomial * isl_qpolynomial_reset_space_and_domain ( __isl_take isl_qpolynomial * qp,
__isl_take isl_space * space,
__isl_take isl_space * domain )

◆ isl_qpolynomial_scale()

__isl_give isl_qpolynomial * isl_qpolynomial_scale ( __isl_take isl_qpolynomial * qp,
isl_int v )

Definition at line 1784 of file isl_polynomial.c.

References __isl_give, __isl_take, and isl_qpolynomial_mul_isl_int().

◆ isl_qpolynomial_scale_down_val()

◆ isl_qpolynomial_scale_val()

◆ isl_qpolynomial_set_dim_name()

◆ isl_qpolynomial_sgn()

int isl_qpolynomial_sgn ( __isl_keep isl_qpolynomial * qp)

Definition at line 620 of file isl_polynomial.c.

References __isl_keep, and isl_poly_sgn().

◆ isl_qpolynomial_sub()

◆ isl_qpolynomial_substitute()

◆ isl_qpolynomial_substitute_equalities()

◆ isl_qpolynomial_substitute_equalities_lifted()

◆ isl_qpolynomial_val_on_domain()

◆ isl_qpolynomial_var_on_domain()

◆ isl_qpolynomial_var_pow_on_domain()

__isl_give isl_qpolynomial * isl_qpolynomial_var_pow_on_domain ( __isl_take isl_space * domain,
int pos,
int power )

◆ isl_qpolynomial_zero_in_space()

__isl_give isl_qpolynomial * isl_qpolynomial_zero_in_space ( __isl_take isl_space * space)
static

◆ isl_qpolynomial_zero_on_domain()

◆ isl_term_alloc()

◆ isl_term_copy()

__isl_give isl_term * isl_term_copy ( __isl_keep isl_term * term)

Definition at line 3924 of file isl_polynomial.c.

References __isl_give, __isl_keep, and isl_term::ref.

Referenced by isl_poly_foreach_term().

◆ isl_term_cow()

__isl_give isl_term * isl_term_cow ( __isl_take isl_term * term)

Definition at line 3956 of file isl_polynomial.c.

References __isl_give, __isl_take, isl_term_dup(), and isl_term::ref.

Referenced by isl_poly_foreach_term().

◆ isl_term_dim()

◆ isl_term_dup()

◆ isl_term_free()

◆ isl_term_get_coefficient_val()

__isl_give isl_val * isl_term_get_coefficient_val ( __isl_keep isl_term * term)

◆ isl_term_get_ctx()

isl_ctx * isl_term_get_ctx ( __isl_keep isl_term * term)

Definition at line 4033 of file isl_polynomial.c.

References __isl_keep.

Referenced by isl_poly_foreach_term(), isl_term_get_coefficient_val(), and isl_term_offset().

◆ isl_term_get_div()

◆ isl_term_get_exp()

isl_size isl_term_get_exp ( __isl_keep isl_term * term,
enum isl_dim_type type,
unsigned pos )
static

Definition at line 4061 of file isl_polynomial.c.

References __isl_keep, isl_size_error, isl_term_offset(), offset, pos(), and type.

◆ isl_term_get_num()

void isl_term_get_num ( __isl_keep isl_term * term,
isl_int * n )

Definition at line 4038 of file isl_polynomial.c.

References __isl_keep, isl_int_set, and n.

Referenced by collect_fixed_sign_terms().

◆ isl_term_offset()

◆ isl_term_peek_space()

__isl_keep isl_space * isl_term_peek_space ( __isl_keep isl_term * term)
static

Definition at line 4006 of file isl_polynomial.c.

References __isl_keep.

Referenced by isl_term_offset().

◆ isl_union_pw_qpolynomial_mul()

Definition at line 4450 of file isl_polynomial.c.

References __isl_give, __isl_take, and isl_pw_qpolynomial_mul().

◆ isl_union_pw_qpolynomial_to_polynomial()

__isl_give isl_union_pw_qpolynomial * isl_union_pw_qpolynomial_to_polynomial ( __isl_take isl_union_pw_qpolynomial * upwqp,
int sign )

Definition at line 5173 of file isl_polynomial.c.

References __isl_give, __isl_take, poly_entry(), and isl_to_poly_data::sign.

◆ make_divs_pos()

◆ multiplicative_call_base()

◆ multiplicative_call_factor_pw_qpolynomial()

◆ needs_invert()

int needs_invert ( __isl_keep isl_mat * div,
int row )
static

Definition at line 2505 of file isl_polynomial.c.

References __isl_keep, cmp(), isl_int_cmp, isl_int_divexact_ui, isl_int_is_zero, and isl_int_mul_ui.

Referenced by reduce_divs().

◆ normalize_div()

◆ opt_fn()

◆ poly_entry()

◆ poly_free_cst()

void poly_free_cst ( __isl_take isl_poly_cst * cst)
static

Definition at line 625 of file isl_polynomial.c.

References __isl_take, and isl_int_clear.

Referenced by isl_poly_free().

◆ poly_free_rec()

void poly_free_rec ( __isl_take isl_poly_rec * rec)
static

Definition at line 631 of file isl_polynomial.c.

References __isl_take, and isl_poly_free().

Referenced by isl_poly_free().

◆ poly_set_active()

isl_stat poly_set_active ( __isl_keep isl_poly * poly,
int * active,
int d )
static

◆ poly_update_den()

◆ pos()

◆ pwqp_drop_floors()

◆ qp_drop_floors()

◆ reduce_div()

◆ reduce_divs()

◆ remove_redundant_divs()

◆ reorder()

◆ reordering_move()

int * reordering_move ( isl_ctx * ctx,
unsigned len,
unsigned dst,
unsigned src,
unsigned n )
static

Definition at line 3388 of file isl_polynomial.c.

References isl_alloc_array, and n.

Referenced by isl_qpolynomial_move_dims().

◆ replace_by_constant_term()

__isl_give isl_poly * replace_by_constant_term ( __isl_take isl_poly * poly)
static

◆ replace_by_zero()

__isl_give isl_poly * replace_by_zero ( __isl_take isl_poly * poly)
static

Definition at line 779 of file isl_polynomial.c.

References __isl_give, __isl_take, isl_poly_free(), isl_poly_zero(), and poly.

Referenced by isl_poly_sum().

◆ set_active()

◆ set_div()

◆ set_div_slice()

◆ sort_divs()

◆ split_div()

◆ split_periods()

◆ substitute_div()

◆ substitute_non_divs()

◆ to_polynomial_on_orthant()

◆ update_coeff()

void update_coeff ( __isl_keep isl_vec * aff,
__isl_keep isl_poly_cst * cst,
int pos )
static

◆ with_merged_divs()