Reference: Basic Building Blocks

Context

class islpy.Context
abort(self)
Parameters:selfContext
Returns:(nothing)
aborted(self)
Parameters:selfContext
Returns:int
static alloc()
Returns:Context
deref(self)
Parameters:selfContext
Returns:(nothing)
get_ast_always_print_block(self)
Parameters:selfContext
Returns:int
get_ast_build_allow_else(self)
Parameters:selfContext
Returns:int
get_ast_build_allow_or(self)
Parameters:selfContext
Returns:int
get_ast_build_atomic_upper_bound(self)
Parameters:selfContext
Returns:int
get_ast_build_detect_min_max(self)
Parameters:selfContext
Returns:int
get_ast_build_exploit_nested_bounds(self)
Parameters:selfContext
Returns:int
get_ast_build_group_coscheduled(self)
Parameters:selfContext
Returns:int
get_ast_build_prefer_pdiv(self)
Parameters:selfContext
Returns:int
get_ast_build_scale_strides(self)
Parameters:selfContext
Returns:int
get_ast_build_separation_bounds(self)
Parameters:selfContext
Returns:int
get_ast_iterator_type(self)
Parameters:selfContext
Returns:string
get_ast_print_macro_once(self)
Parameters:selfContext
Returns:int
get_bound(self)
Parameters:selfContext
Returns:int
get_coalesce_bounded_wrapping(self)
Parameters:selfContext
Returns:int
get_gbr_only_first(self)
Parameters:selfContext
Returns:int
get_max_operations(self)
Parameters:selfContext
Returns:unsigned long
get_on_error(self)
Parameters:selfContext
Returns:int
get_pip_symmetry(self)
Parameters:selfContext
Returns:int
get_schedule_algorithm(self)
Parameters:selfContext
Returns:int
get_schedule_carry_self_first(self)
Parameters:selfContext
Returns:int
get_schedule_max_coefficient(self)
Parameters:selfContext
Returns:int
get_schedule_max_constant_term(self)
Parameters:selfContext
Returns:int
get_schedule_maximize_band_depth(self)
Parameters:selfContext
Returns:int
get_schedule_maximize_coincidence(self)
Parameters:selfContext
Returns:int
get_schedule_outer_coincidence(self)
Parameters:selfContext
Returns:int
get_schedule_separate_components(self)
Parameters:selfContext
Returns:int
get_schedule_serialize_sccs(self)
Parameters:selfContext
Returns:int
get_schedule_split_scaled(self)
Parameters:selfContext
Returns:int
get_schedule_treat_coalescing(self)
Parameters:selfContext
Returns:int
get_schedule_whole_component(self)
Parameters:selfContext
Returns:int
get_tile_scale_tile_loops(self)
Parameters:selfContext
Returns:int
get_tile_shift_point_loops(self)
Parameters:selfContext
Returns:int
last_error(self)
Parameters:selfContext
Returns:isl_error
last_error_file(self)
Parameters:selfContext
Returns:string
last_error_line(self)
Parameters:selfContext
Returns:int
last_error_msg(self)
Parameters:selfContext
Returns:string
ref(self)
Parameters:selfContext
Returns:(nothing)
reset_error(self)
Parameters:selfContext
Returns:(nothing)
reset_operations(self)
Parameters:selfContext
Returns:(nothing)
resume(self)
Parameters:selfContext
Returns:(nothing)
set_ast_always_print_block(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_allow_else(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_allow_or(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_atomic_upper_bound(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_detect_min_max(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_exploit_nested_bounds(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_group_coscheduled(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_prefer_pdiv(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_scale_strides(self, val)
Parameters:
Returns:

(nothing)

set_ast_build_separation_bounds(self, val)
Parameters:
Returns:

(nothing)

set_ast_iterator_type(self, val)
Parameters:
Returns:

(nothing)

set_ast_print_macro_once(self, val)
Parameters:
Returns:

(nothing)

set_bound(self, val)
Parameters:
Returns:

(nothing)

set_coalesce_bounded_wrapping(self, val)
Parameters:
Returns:

(nothing)

set_error(self, error)
Parameters:
Returns:

(nothing)

set_gbr_only_first(self, val)
Parameters:
Returns:

(nothing)

set_max_operations(self, max_operations)
Parameters:
  • selfContext
  • max_operationslong
Returns:

(nothing)

set_on_error(self, val)
Parameters:
Returns:

(nothing)

set_pip_symmetry(self, val)
Parameters:
Returns:

(nothing)

set_schedule_algorithm(self, val)
Parameters:
Returns:

(nothing)

set_schedule_carry_self_first(self, val)
Parameters:
Returns:

(nothing)

set_schedule_max_coefficient(self, val)
Parameters:
Returns:

(nothing)

set_schedule_max_constant_term(self, val)
Parameters:
Returns:

(nothing)

set_schedule_maximize_band_depth(self, val)
Parameters:
Returns:

(nothing)

set_schedule_maximize_coincidence(self, val)
Parameters:
Returns:

(nothing)

set_schedule_outer_coincidence(self, val)
Parameters:
Returns:

(nothing)

set_schedule_separate_components(self, val)
Parameters:
Returns:

(nothing)

set_schedule_serialize_sccs(self, val)
Parameters:
Returns:

(nothing)

set_schedule_split_scaled(self, val)
Parameters:
Returns:

(nothing)

set_schedule_treat_coalescing(self, val)
Parameters:
Returns:

(nothing)

set_schedule_whole_component(self, val)
Parameters:
Returns:

(nothing)

set_tile_scale_tile_loops(self, val)
Parameters:
Returns:

(nothing)

set_tile_shift_point_loops(self, val)
Parameters:
Returns:

(nothing)

Id

class islpy.Id(name=None, user=None, context=None, _data=None)
  • __eq__()
  • __hash__()
  • __ne__()
static alloc(ctx, name, user)
Parameters:
  • ctxContext
  • name – string
  • user – None
Returns:

Id

dump(self)
Parameters:selfId
Returns:(nothing)
get_ctx(self)
Parameters:selfId
Returns:Context
get_hash(self)
Parameters:selfId
Returns:uint32_t
get_name(self)
Parameters:selfId
Returns:string
name

get_name(self)

Parameters:selfId
Returns:string
to_str(self)
Parameters:selfId
Returns:string

Space

(formerly called Dim. A compatibility alias is in place.)

class islpy.Space(_data)
add_dims(self, type, n)
Parameters:
Returns:

Space

add_param_id(self, id)
Parameters:
Returns:

Space

align_params(self, dim2)
Parameters:
Returns:

Space

static alloc(ctx, nparam, n_in, n_out)
Parameters:
  • ctxContext
  • nparamunsigned
  • n_inunsigned
  • n_outunsigned
Returns:

Space

can_curry(self)
Parameters:selfSpace
Returns:bool
can_range_curry(self)
Parameters:selfSpace
Returns:bool
can_uncurry(self)
Parameters:selfSpace
Returns:bool
can_zip(self)
Parameters:selfSpace
Returns:bool
copy(self)
Parameters:selfSpace
Returns:Space
static create_from_names(ctx, set=None, in_=None, out=None, params=[])

Create a Space from lists of variable names.

Parameters:
  • set – names of set-type variables.
  • in – names of in-type variables.
  • out – names of out-type variables.
  • params` – names of parameter-type variables.
curry(self)
Parameters:selfSpace
Returns:Space
dim(self, type)
Parameters:
Returns:

unsigned

domain(self)
Parameters:selfSpace
Returns:Space
domain_factor_domain(self)
Parameters:selfSpace
Returns:Space
domain_factor_range(self)
Parameters:selfSpace
Returns:Space
domain_is_wrapping(self)
Parameters:selfSpace
Returns:bool
domain_map(self)
Parameters:selfSpace
Returns:Space
domain_product(self, right)
Parameters:
Returns:

Space

drop_dims(self, type, first, num)
Parameters:
  • selfSpace
  • typedim_type
  • firstunsigned
  • numunsigned
Returns:

Space

drop_inputs(self, first, n)
Parameters:
  • selfSpace
  • firstunsigned
  • nunsigned
Returns:

Space

drop_outputs(self, first, n)
Parameters:
  • selfSpace
  • firstunsigned
  • nunsigned
Returns:

Space

dump(self)
Parameters:selfSpace
Returns:(nothing)
extend(self, nparam, n_in, n_out)
Parameters:
  • selfSpace
  • nparamunsigned
  • n_inunsigned
  • n_outunsigned
Returns:

Space

factor_domain(self)
Parameters:selfSpace
Returns:Space
factor_range(self)
Parameters:selfSpace
Returns:Space
find_dim_by_id(self, type, id)
Parameters:
Returns:

int

find_dim_by_name(self, type, name)
Parameters:
Returns:

int

flatten_domain(self)
Parameters:selfSpace
Returns:Space
flatten_range(self)
Parameters:selfSpace
Returns:Space
from_domain(self)
Parameters:selfSpace
Returns:Space
from_range(self)
Parameters:selfSpace
Returns:Space
get_ctx(self)
Parameters:selfSpace
Returns:Context
get_dim_id(self, type, pos)
Parameters:
Returns:

Id

get_dim_name(self, type, pos)
Parameters:
Returns:

string

get_div(self, pos)
Parameters:
Returns:

Aff

get_id_dict(dimtype=None)

Return a dictionary mapping variable Id instances to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_space(self)
Parameters:selfLocalSpace
Returns:Space
get_tuple_id(self, type)
Parameters:
Returns:

Id

get_tuple_name(self, type)
Parameters:
Returns:

string

get_var_dict(dimtype=None, ignore_out=False)

Return a dictionary mapping variable names to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_var_ids(dimtype)

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype)

Return a list of dim names (in order) for dim_type dimtype.

has_dim_id(self, type, pos)
Parameters:
Returns:

bool

has_dim_name(self, type, pos)
Parameters:
Returns:

bool

has_equal_params(self, space2)
Parameters:
Returns:

bool

has_equal_tuples(self, space2)
Parameters:
Returns:

bool

has_tuple_id(self, type)
Parameters:
Returns:

bool

has_tuple_name(self, type)
Parameters:
Returns:

bool

insert_dims(self, type, pos, n)
Parameters:
  • selfSpace
  • typedim_type
  • posunsigned
  • nunsigned
Returns:

Space

intersect(self, ls2)
Parameters:
Returns:

LocalSpace

is_domain(self, space2)
Parameters:
Returns:

bool

is_equal(self, space2)
Parameters:
Returns:

bool

is_map(self)
Parameters:selfSpace
Returns:bool
is_params(self)
Parameters:selfSpace
Returns:bool
is_product(self)
Parameters:selfSpace
Returns:bool
is_range(self, space2)
Parameters:
Returns:

bool

is_set(self)
Parameters:selfSpace
Returns:bool
is_wrapping(self)
Parameters:selfSpace
Returns:bool
join(self, right)
Parameters:
Returns:

Space

lifting(self)
Parameters:selfLocalSpace
Returns:BasicMap
map_from_domain_and_range(self, range)
Parameters:
Returns:

Space

map_from_set(self)
Parameters:selfSpace
Returns:Space
match(self, type1, space2, type2)
Parameters:
Returns:

bool

move_dims(self, dst_type, dst_pos, src_type, src_pos, n)
Parameters:
  • selfSpace
  • dst_typedim_type
  • dst_posunsigned
  • src_typedim_type
  • src_posunsigned
  • nunsigned
Returns:

Space

params(self)
Parameters:selfSpace
Returns:Space
static params_alloc(ctx, nparam)
Parameters:
  • ctxContext
  • nparamunsigned
Returns:

Space

product(self, right)
Parameters:
Returns:

Space

range(self)
Parameters:selfSpace
Returns:Space
range_curry(self)
Parameters:selfSpace
Returns:Space
range_factor_domain(self)
Parameters:selfSpace
Returns:Space
range_factor_range(self)
Parameters:selfSpace
Returns:Space
range_is_wrapping(self)
Parameters:selfSpace
Returns:bool
range_map(self)
Parameters:selfSpace
Returns:Space
range_product(self, right)
Parameters:
Returns:

Space

reset_tuple_id(self, type)
Parameters:
Returns:

Space

reset_user(self)
Parameters:selfSpace
Returns:Space
reverse(self)
Parameters:selfSpace
Returns:Space
static set_alloc(ctx, nparam, dim)
Parameters:
  • ctxContext
  • nparamunsigned
  • dimunsigned
Returns:

Space

set_dim_id(self, type, pos, id)
Parameters:
Returns:

Space

set_dim_name(self, type, pos, name)
Parameters:
  • selfSpace
  • typedim_type
  • posunsigned
  • name – string
Returns:

Space

set_from_params(self)
Parameters:selfSpace
Returns:Space
set_tuple_id(self, type, id)
Parameters:
Returns:

Space

set_tuple_name(self, type, s)
Parameters:
Returns:

Space

to_str(self)
Parameters:selfSpace
Returns:string
tuple_is_equal(self, type1, space2, type2)
Parameters:
Returns:

bool

uncurry(self)
Parameters:selfSpace
Returns:Space
unwrap(self)
Parameters:selfSpace
Returns:Space
wrap(self)
Parameters:selfSpace
Returns:Space
zip(self)
Parameters:selfSpace
Returns:Space

Local Space

class islpy.LocalSpace(_data)
add_dims(self, type, n)
Parameters:
Returns:

LocalSpace

copy(self)
Parameters:selfLocalSpace
Returns:LocalSpace
dim(self, type)
Parameters:
Returns:

int

domain(self)
Parameters:selfLocalSpace
Returns:LocalSpace
drop_dims(self, type, first, n)
Parameters:
Returns:

LocalSpace

dump(self)
Parameters:selfLocalSpace
Returns:(nothing)
find_dim_by_name(self, type, name)
Parameters:
Returns:

int

flatten_domain(self)
Parameters:selfLocalSpace
Returns:LocalSpace
flatten_range(self)
Parameters:selfLocalSpace
Returns:LocalSpace
from_domain(self)
Parameters:selfLocalSpace
Returns:LocalSpace
static from_space(dim)
Parameters:dimSpace
Returns:LocalSpace
get_ctx(self)
Parameters:selfLocalSpace
Returns:Context
get_dim_id(self, type, pos)
Parameters:
Returns:

Id

get_dim_name(self, type, pos)
Parameters:
Returns:

string

get_div(self, pos)
Parameters:
Returns:

Aff

get_id_dict(dimtype=None)

Return a dictionary mapping Id instances to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_space(self)
Parameters:selfLocalSpace
Returns:Space
get_var_dict(dimtype=None)

Return a dictionary mapping variable names to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_var_ids(dimtype)

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype)

Return a list of dim names (in order) for dim_type dimtype.

has_dim_id(self, type, pos)
Parameters:
Returns:

bool

has_dim_name(self, type, pos)
Parameters:
Returns:

bool

insert_dims(self, type, first, n)
Parameters:
Returns:

LocalSpace

intersect(self, ls2)
Parameters:
Returns:

LocalSpace

is_equal(self, ls2)
Parameters:
Returns:

bool

is_params(self)
Parameters:selfLocalSpace
Returns:bool
is_set(self)
Parameters:selfLocalSpace
Returns:bool
lifting(self)
Parameters:selfLocalSpace
Returns:BasicMap
range(self)
Parameters:selfLocalSpace
Returns:LocalSpace
set_dim_id(self, type, pos, id)
Parameters:
Returns:

LocalSpace

set_dim_name(self, type, pos, s)
Parameters:
Returns:

LocalSpace

set_from_params(self)
Parameters:selfLocalSpace
Returns:LocalSpace
set_tuple_id(self, type, id)
Parameters:
Returns:

LocalSpace

space

get_space(self)

Parameters:selfLocalSpace
Returns:Space
wrap(self)
Parameters:selfLocalSpace
Returns:LocalSpace

Constraints

class islpy.Constraint(_data)
static alloc_equality(ls)
Parameters:lsLocalSpace
Returns:Constraint
static alloc_inequality(ls)
Parameters:lsLocalSpace
Returns:Constraint
cmp_last_non_zero(self, c2)
Parameters:
Returns:

int

dump(self)
Parameters:selfConstraint
Returns:(nothing)
static eq_from_names(space, coefficients={})

Create a constraint const + coeff_1*var_1 +… == 0.

Parameters:
  • spaceSpace
  • coefficients – a dict or iterable of tuple instances mapping variable names to their coefficients The constant is set to the value of the key ‘1’.

Changed in version 2011.3: Eliminated the separate const parameter.

static equality_alloc(ls)
Parameters:lsLocalSpace
Returns:Constraint
static equality_from_aff(aff)
Parameters:affAff
Returns:Constraint
get_aff(self)
Parameters:selfConstraint
Returns:Aff
get_bound(self, type, pos)
Parameters:
Returns:

Aff

get_coefficient_val(self, type, pos)
Parameters:
Returns:

Val

get_coefficients_by_name(dimtype=None, dim_to_name=None)

Return a dictionary mapping variable names to coefficients.

Parameters:dimtype – None to get all variables, otherwise one of dim_type.

Changed in version 2011.3: New for Aff

get_constant_val(self)
Parameters:selfConstraint
Returns:Val
get_ctx(self)
Parameters:selfConstraint
Returns:Context
get_dim_name(self, type, pos)
Parameters:
Returns:

string

get_div(self, pos)
Parameters:
Returns:

Aff

get_id_dict(dimtype=None)

Return a dictionary mapping Id instances to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_local_space(self)
Parameters:selfConstraint
Returns:LocalSpace
get_space(self)
Parameters:selfConstraint
Returns:Space
get_var_dict(dimtype=None)

Return a dictionary mapping variable names to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_var_ids(dimtype)

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype)

Return a list of dim names (in order) for dim_type dimtype.

static ineq_from_names(space, coefficients={})

Create a constraint const + coeff_1*var_1 +… >= 0.

Parameters:
  • spaceSpace
  • coefficients – a dict or iterable of tuple instances mapping variable names to their coefficients The constant is set to the value of the key ‘1’.

Changed in version 2011.3: Eliminated the separate const parameter.

static inequality_alloc(ls)
Parameters:lsLocalSpace
Returns:Constraint
static inequality_from_aff(aff)
Parameters:affAff
Returns:Constraint
involves_dims(self, type, first, n)
Parameters:
Returns:

bool

is_div_constraint(self)
Parameters:selfConstraint
Returns:int
is_equality(self)
Parameters:selfConstraint
Returns:bool
is_lower_bound(self, type, pos)
Parameters:
Returns:

bool

is_upper_bound(self, type, pos)
Parameters:
Returns:

bool

plain_cmp(self, c2)
Parameters:
Returns:

int

set_coefficient_val(self, type, pos, v)
Parameters:
Returns:

Constraint

set_coefficients(dim_tp, args)
Parameters:
  • dim_tpdim_type
  • argslist of coefficients, for indices 0..len(args)-1.

Changed in version 2011.3: New for Aff

set_coefficients_by_name(iterable, name_to_dim=None)

Set the coefficients and the constant.

Parameters:iterable – a dict or iterable of tuple instances mapping variable names to their coefficients. The constant is set to the value of the key ‘1’.

Changed in version 2011.3: New for Aff

set_constant_val(self, v)
Parameters:
Returns:

Constraint

space

get_space(self)

Parameters:selfConstraint
Returns:Space

Value

class islpy.Val(src=None, context=None, _data=None)
abs(self)
Parameters:selfVal
Returns:Val
abs_eq(self, v2)
Parameters:
Returns:

bool

add(self, v2)
Parameters:
Returns:

Val

ceil(self)
Parameters:selfVal
Returns:Val
cmp_si(self, i)
Parameters:
  • selfVal
  • ilong
Returns:

int

copy(self)
Parameters:selfVal
Returns:Val
div(self, v2)
Parameters:
Returns:

Val

dump(self)
Parameters:selfVal
Returns:(nothing)
eq(self, v2)
Parameters:
Returns:

bool

floor(self)
Parameters:selfVal
Returns:Val
gcd(self, v2)
Parameters:
Returns:

Val

gcdext(self, v2)
Parameters:
Returns:

(Val, x (Val), y (Val))

ge(self, v2)
Parameters:
Returns:

bool

get_ctx(self)
Parameters:selfVal
Returns:Context
get_d(self)
Parameters:selfVal
Returns:double
get_den_val(self)
Parameters:selfVal
Returns:Val
get_hash(self)
Parameters:selfVal
Returns:uint32_t
get_num_si(self)
Parameters:selfVal
Returns:long
gt(self, v2)
Parameters:
Returns:

bool

static infty(ctx)
Parameters:ctxContext
Returns:Val
static int_from_si(ctx, i)
Parameters:
Returns:

Val

static int_from_ui(ctx, u)
Parameters:
Returns:

Val

inv(self)
Parameters:selfVal
Returns:Val
is_divisible_by(self, v2)
Parameters:
Returns:

bool

is_infty(self)
Parameters:selfVal
Returns:bool
is_int(self)
Parameters:selfVal
Returns:bool
is_nan(self)
Parameters:selfVal
Returns:bool
is_neg(self)
Parameters:selfVal
Returns:bool
is_neginfty(self)
Parameters:selfVal
Returns:bool
is_negone(self)
Parameters:selfVal
Returns:bool
is_nonneg(self)
Parameters:selfVal
Returns:bool
is_nonpos(self)
Parameters:selfVal
Returns:bool
is_one(self)
Parameters:selfVal
Returns:bool
is_pos(self)
Parameters:selfVal
Returns:bool
is_rat(self)
Parameters:selfVal
Returns:bool
is_zero(self)
Parameters:selfVal
Returns:bool
le(self, v2)
Parameters:
Returns:

bool

lt(self, v2)
Parameters:
Returns:

bool

max(self, v2)
Parameters:
Returns:

Val

min(self, v2)
Parameters:
Returns:

Val

mod(self, v2)
Parameters:
Returns:

Val

mul(self, v2)
Parameters:
Returns:

Val

n_abs_num_chunks(self, size)
Parameters:
  • selfVal
  • sizesize_t
Returns:

size_t

static nan(ctx)
Parameters:ctxContext
Returns:Val
ne(self, v2)
Parameters:
Returns:

bool

neg(self)
Parameters:selfVal
Returns:Val
static neginfty(ctx)
Parameters:ctxContext
Returns:Val
static negone(ctx)
Parameters:ctxContext
Returns:Val
static one(ctx)
Parameters:ctxContext
Returns:Val
static read_from_str(ctx, str)
Parameters:
Returns:

Val

set_si(self, i)
Parameters:
  • selfVal
  • ilong
Returns:

Val

sgn(self)
Parameters:selfVal
Returns:int
sub(self, v2)
Parameters:
Returns:

Val

to_str(self)
Parameters:selfVal
Returns:string
trunc(self)
Parameters:selfVal
Returns:Val
two_exp(self)
Parameters:selfVal
Returns:Val
static zero(ctx)
Parameters:ctxContext
Returns:Val

Multi-Value

class islpy.MultiVal(s=None, context=None, _data=None)
add(self, multi2)
Parameters:
Returns:

MultiVal

add_val(self, v)
Parameters:
Returns:

MultiVal

align_params(self, model)
Parameters:
Returns:

MultiVal

copy(self)
Parameters:selfMultiVal
Returns:MultiVal
dim(self, type)
Parameters:
Returns:

unsigned

drop_dims(self, type, first, n)
Parameters:
Returns:

MultiVal

dump(self)
Parameters:selfMultiVal
Returns:(nothing)
factor_range(self)
Parameters:selfMultiVal
Returns:MultiVal
find_dim_by_id(self, type, id)
Parameters:
Returns:

int

find_dim_by_name(self, type, name)
Parameters:
Returns:

int

flat_range_product(self, multi2)
Parameters:
Returns:

MultiVal

flatten_range(self)
Parameters:selfMultiVal
Returns:MultiVal
from_range(self)
Parameters:selfMultiVal
Returns:MultiVal
static from_val_list(space, list)
Parameters:
Returns:

MultiVal

get_ctx(self)
Parameters:selfMultiVal
Returns:Context
get_dim_id(self, type, pos)
Parameters:
Returns:

Id

get_domain_space(self)
Parameters:selfMultiVal
Returns:Space
get_id_dict(dimtype=None)

Return a dictionary mapping Id instances to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_space(self)
Parameters:selfMultiVal
Returns:Space
get_tuple_id(self, type)
Parameters:
Returns:

Id

get_tuple_name(self, type)
Parameters:
Returns:

string

get_val(self, pos)
Parameters:
Returns:

Val

get_var_dict(dimtype=None)

Return a dictionary mapping variable names to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_var_ids(dimtype)

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype)

Return a list of dim names (in order) for dim_type dimtype.

has_tuple_id(self, type)
Parameters:
Returns:

bool

involves_nan(self)
Parameters:selfMultiVal
Returns:bool
mod_multi_val(self, mv)
Parameters:
Returns:

MultiVal

mod_val(self, v)
Parameters:
Returns:

MultiVal

plain_is_equal(self, multi2)
Parameters:
Returns:

bool

range_factor_domain(self)
Parameters:selfMultiVal
Returns:MultiVal
range_factor_range(self)
Parameters:selfMultiVal
Returns:MultiVal
range_is_wrapping(self)
Parameters:selfMultiVal
Returns:bool
range_product(self, multi2)
Parameters:
Returns:

MultiVal

range_splice(self, pos, multi2)
Parameters:
Returns:

MultiVal

static read_from_str(ctx, str)
Parameters:
Returns:

MultiVal

reset_tuple_id(self, type)
Parameters:
Returns:

MultiVal

reset_user(self)
Parameters:selfMultiVal
Returns:MultiVal
scale_down_multi_val(self, mv)
Parameters:
Returns:

MultiVal

scale_down_val(self, v)
Parameters:
Returns:

MultiVal

scale_multi_val(self, mv)
Parameters:
Returns:

MultiVal

scale_val(self, v)
Parameters:
Returns:

MultiVal

set_dim_id(self, type, pos, id)
Parameters:
Returns:

MultiVal

set_dim_name(self, type, pos, s)
Parameters:
Returns:

MultiVal

set_tuple_id(self, type, id)
Parameters:
Returns:

MultiVal

set_tuple_name(self, type, s)
Parameters:
Returns:

MultiVal

set_val(self, pos, el)
Parameters:
Returns:

MultiVal

space

get_space(self)

Parameters:selfMultiVal
Returns:Space
sub(self, multi2)
Parameters:
Returns:

MultiVal

to_str(self)
Parameters:selfMultiVal
Returns:string
static zero(space)
Parameters:spaceSpace
Returns:MultiVal

Vector

class islpy.Vec(_data)
add(self, vec2)
Parameters:
Returns:

Vec

add_els(self, n)
Parameters:
  • selfVec
  • nunsigned
Returns:

Vec

static alloc(ctx, size)
Parameters:
  • ctxContext
  • sizeunsigned
Returns:

Vec

ceil(self)
Parameters:selfVec
Returns:Vec
clr(self)
Parameters:selfVec
Returns:Vec
cmp_element(self, vec2, pos)
Parameters:
Returns:

int

concat(self, vec2)
Parameters:
Returns:

Vec

copy(self)
Parameters:selfVec
Returns:Vec
drop_els(self, pos, n)
Parameters:
  • selfVec
  • posunsigned
  • nunsigned
Returns:

Vec

dump(self)
Parameters:selfVec
Returns:(nothing)
extend(self, size)
Parameters:
  • selfVec
  • sizeunsigned
Returns:

Vec

get_ctx(self)
Parameters:selfVec
Returns:Context
get_element_val(self, pos)
Parameters:
Returns:

Val

insert_els(self, pos, n)
Parameters:
  • selfVec
  • posunsigned
  • nunsigned
Returns:

Vec

insert_zero_els(self, pos, n)
Parameters:
  • selfVec
  • posunsigned
  • nunsigned
Returns:

Vec

is_equal(self, vec2)
Parameters:
Returns:

bool

mat_product(self, mat)
Parameters:
Returns:

Vec

move_els(self, dst_col, src_col, n)
Parameters:
  • selfVec
  • dst_colunsigned
  • src_colunsigned
  • nunsigned
Returns:

Vec

neg(self)
Parameters:selfVec
Returns:Vec
set_element_val(self, pos, v)
Parameters:
Returns:

Vec

set_val(self, v)
Parameters:
Returns:

Vec

sort(self)
Parameters:selfVec
Returns:Vec
static zero(ctx, size)
Parameters:
  • ctxContext
  • sizeunsigned
Returns:

Vec

zero_extend(self, size)
Parameters:
  • selfVec
  • sizeunsigned
Returns:

Vec

Matrix

class islpy.Mat(_data)
add_rows(self, n)
Parameters:
  • selfMat
  • nunsigned
Returns:

Mat

add_zero_cols(self, n)
Parameters:
  • selfMat
  • nunsigned
Returns:

Mat

add_zero_rows(self, n)
Parameters:
  • selfMat
  • nunsigned
Returns:

Mat

aff_direct_sum(self, right)
Parameters:
Returns:

Mat

static alloc(ctx, n_row, n_col)
Parameters:
  • ctxContext
  • n_rowunsigned
  • n_colunsigned
Returns:

Mat

col_add(self, dst_col, src_col)
Parameters:
  • selfMat
  • dst_colint
  • src_colint
Returns:

(nothing)

cols(self)
Parameters:selfMat
Returns:int
concat(self, bot)
Parameters:
Returns:

Mat

copy(self)
Parameters:selfMat
Returns:Mat
diagonal(self, mat2)
Parameters:
Returns:

Mat

drop_cols(self, col, n)
Parameters:
  • selfMat
  • colunsigned
  • nunsigned
Returns:

Mat

drop_rows(self, row, n)
Parameters:
  • selfMat
  • rowunsigned
  • nunsigned
Returns:

Mat

dump(self)
Parameters:selfMat
Returns:(nothing)
static from_row_vec(vec)
Parameters:vecVec
Returns:Mat
get_ctx(self)
Parameters:selfMat
Returns:Context
get_element_val(self, row, col)
Parameters:
Returns:

Val

has_linearly_independent_rows(self, mat2)
Parameters:
Returns:

bool

initial_non_zero_cols(self)
Parameters:selfMat
Returns:int
insert_cols(self, col, n)
Parameters:
  • selfMat
  • colunsigned
  • nunsigned
Returns:

Mat

insert_rows(self, row, n)
Parameters:
  • selfMat
  • rowunsigned
  • nunsigned
Returns:

Mat

insert_zero_cols(self, first, n)
Parameters:
  • selfMat
  • firstunsigned
  • nunsigned
Returns:

Mat

insert_zero_rows(self, row, n)
Parameters:
  • selfMat
  • rowunsigned
  • nunsigned
Returns:

Mat

inverse_product(self, right)
Parameters:
Returns:

Mat

is_equal(self, mat2)
Parameters:
Returns:

bool

left_hermite(self, neg)
Parameters:
Returns:

(Mat, U (Mat), Q (Mat))

lin_to_aff(self)
Parameters:selfMat
Returns:Mat
move_cols(self, dst_col, src_col, n)
Parameters:
  • selfMat
  • dst_colunsigned
  • src_colunsigned
  • nunsigned
Returns:

Mat

normalize(self)
Parameters:selfMat
Returns:Mat
normalize_row(self, row)
Parameters:
Returns:

Mat

product(self, right)
Parameters:
Returns:

Mat

rank(self)
Parameters:selfMat
Returns:int
right_inverse(self)
Parameters:selfMat
Returns:Mat
right_kernel(self)
Parameters:selfMat
Returns:Mat
row_basis(self)
Parameters:selfMat
Returns:Mat
row_basis_extension(self, mat2)
Parameters:
Returns:

Mat

rows(self)
Parameters:selfMat
Returns:int
set_element_val(self, row, col, v)
Parameters:
Returns:

Mat

swap_cols(self, i, j)
Parameters:
  • selfMat
  • iunsigned
  • junsigned
Returns:

Mat

swap_rows(self, i, j)
Parameters:
  • selfMat
  • iunsigned
  • junsigned
Returns:

Mat

transpose(self)
Parameters:selfMat
Returns:Mat
unimodular_complete(self, row)
Parameters:
Returns:

Mat

vec_concat(self, bot)
Parameters:
Returns:

Mat

vec_inverse_product(self, vec)
Parameters:
Returns:

Vec

vec_product(self, vec)
Parameters:
Returns:

Vec

Sets and Maps

Basic Set

class islpy.BasicSet(s=None, context=None, _data=None)
add_constraint(self, constraint)
Parameters:
Returns:

BasicSet

add_constraints(constraints)

New in version 2011.3.

add_dims(self, type, n)
Parameters:
Returns:

BasicSet

add_set(self, set)
Parameters:
Returns:

UnionSet

affine_hull(self)
Parameters:selfBasicSet
Returns:BasicSet
align_divs(self)
Parameters:selfSet
Returns:Set
align_params(self, model)
Parameters:
Returns:

BasicSet

apply(self, bmap)
Parameters:
Returns:

BasicSet

apply_pw_qpolynomial_fold(self, pwf)
Parameters:
Returns:

(PwQPolynomialFold, tight (integer))

apply_union_pw_qpolynomial_fold(self, upwf)
Parameters:
Returns:

(UnionPwQPolynomialFold, tight (integer))

bounded_simple_hull(self)
Parameters:selfSet
Returns:BasicSet
static box_from_points(pnt1, pnt2)
Parameters:
Returns:

BasicSet

coalesce(self)
Parameters:selfSet
Returns:Set
coefficients(self)
Parameters:selfBasicSet
Returns:BasicSet
complement(self)
Parameters:selfSet
Returns:Set
compute_divs(self)
Parameters:selfBasicSet
Returns:Set
compute_schedule(self, validity, proximity)
Parameters:
Returns:

Schedule

compute_vertices(self)
Parameters:selfBasicSet
Returns:Vertices
contains(self, space)
Parameters:
Returns:

bool

convex_hull(self)
Parameters:selfSet
Returns:BasicSet
copy(self)
Parameters:selfBasicSet
Returns:BasicSet
count_val(self)
Parameters:selfSet
Returns:Val
detect_equalities(self)
Parameters:selfBasicSet
Returns:BasicSet
dim(self, type)
Parameters:
Returns:

unsigned

dim_has_any_lower_bound(self, type, pos)
Parameters:
Returns:

bool

dim_has_any_upper_bound(self, type, pos)
Parameters:
Returns:

bool

dim_has_lower_bound(self, type, pos)
Parameters:
Returns:

bool

dim_has_upper_bound(self, type, pos)
Parameters:
Returns:

bool

dim_is_bounded(self, type, pos)
Parameters:
Returns:

bool

dim_max(self, pos)
Parameters:
Returns:

PwAff

dim_max_val(self, pos)
Parameters:
Returns:

Val

dim_min(self, pos)
Parameters:
Returns:

PwAff

dim_residue_class_val(self, pos)
Parameters:
Returns:

(modulo (Val), residue (Val))

drop_constraints_involving_dims(self, type, first, n)
Parameters:
Returns:

BasicSet

drop_constraints_not_involving_dims(self, type, first, n)
Parameters:
Returns:

BasicSet

drop_unused_params(self)
Parameters:selfBasicSet
Returns:BasicSet
dump(self)
Parameters:selfBasicSet
Returns:(nothing)
eliminate(self, type, first, n)
Parameters:
Returns:

BasicSet

eliminate_dims(self, first, n)
Parameters:
  • selfSet
  • firstunsigned
  • nunsigned
Returns:

Set

eliminate_except(names, types)
Parameters:
  • types – list of dim_type determining the types of axes to eliminate
  • names – names of axes matching the above which should be left alone by the eliminate

New in version 2011.3.

static empty(space)
Parameters:spaceSpace
Returns:BasicSet
equalities_matrix(self, c1, c2, c3, c4)
Parameters:
Returns:

Mat

equate(self, type1, pos1, type2, pos2)
Parameters:
Returns:

Set

extract_set(self, dim)
Parameters:
Returns:

Set

find_dim_by_id(self, type, id)
Parameters:
Returns:

int

find_dim_by_name(self, type, name)
Parameters:
Returns:

int

fix_val(self, type, pos, v)
Parameters:
Returns:

BasicSet

flat_product(self, bset2)
Parameters:
Returns:

BasicSet

flatten(self)
Parameters:selfBasicSet
Returns:BasicSet
flatten_map(self)
Parameters:selfSet
Returns:Map
follows_at(self, set2, pos)
Parameters:
Returns:

int

foreach_basic_set(self, fn)
Parameters:
  • selfSet
  • fn – callback(bset) -> isl_stat
Returns:

(nothing)

foreach_bound_pair(self, type, pos, fn)
Parameters:
  • selfBasicSet
  • typedim_type
  • posunsigned
  • fn – callback(lower, upper, bset) -> isl_stat
Returns:

(nothing)

foreach_constraint(self, fn)
Parameters:
  • selfBasicSet
  • fn – callback(c) -> isl_stat
Returns:

(nothing)

foreach_point(self, fn)
Parameters:
  • selfSet
  • fn – callback(pnt) -> isl_stat
Returns:

(nothing)

foreach_set(self, fn)
Parameters:
  • selfUnionSet
  • fn – callback(set) -> isl_stat
Returns:

(nothing)

static from_constraint(constraint)
Parameters:constraintConstraint
Returns:BasicSet
static from_constraint_matrices(dim, eq, ineq, c1, c2, c3, c4)
Parameters:
Returns:

BasicSet

static from_multi_aff(ma)
Parameters:maMultiAff
Returns:BasicSet
from_params(self)
Parameters:selfBasicSet
Returns:BasicSet
static from_point(pnt)
Parameters:pntPoint
Returns:BasicSet
get_basic_set_list(self)
Parameters:selfSet
Returns:BasicSetList
get_basic_sets()

Get the list of BasicSet instances in this Set.

get_constraint_list(self)
Parameters:selfBasicSet
Returns:ConstraintList
get_constraints()

Get a list of constraints.

get_ctx(self)
Parameters:selfBasicSet
Returns:Context
get_dim_id(self, type, pos)
Parameters:
Returns:

Id

get_dim_name(self, type, pos)
Parameters:
Returns:

string

get_div(self, pos)
Parameters:
Returns:

Aff

get_hash(self)
Parameters:selfUnionSet
Returns:uint32_t
get_id_dict(dimtype=None)

Return a dictionary mapping Id instances to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_local_space(self)
Parameters:selfBasicSet
Returns:LocalSpace
get_set_list(self)
Parameters:selfUnionSet
Returns:SetList
get_space(self)
Parameters:selfBasicSet
Returns:Space
get_stride(self, pos)
Parameters:
Returns:

Val

get_stride_info(self, pos)
Parameters:
Returns:

StrideInfo

get_tuple_id(self)
Parameters:selfSet
Returns:Id
get_tuple_name(self)
Parameters:selfBasicSet
Returns:string
get_var_dict(dimtype=None)

Return a dictionary mapping variable names to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_var_ids(dimtype)

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype)

Return a list of dim names (in order) for dim_type dimtype.

gist(self, context)
Parameters:
Returns:

BasicSet

gist_basic_set(self, context)
Parameters:
Returns:

Set

gist_params(self, context)
Parameters:
  • selfSet
  • contextSet
Returns:

Set

has_dim_id(self, type, pos)
Parameters:
Returns:

bool

has_dim_name(self, type, pos)
Parameters:
Returns:

bool

has_equal_space(self, set2)
Parameters:
Returns:

bool

has_tuple_id(self)
Parameters:selfSet
Returns:bool
has_tuple_name(self)
Parameters:selfSet
Returns:bool
identity(self)
Parameters:selfSet
Returns:Map
identity_union_pw_multi_aff(self)
Parameters:selfUnionSet
Returns:UnionPwMultiAff
indicator_function(self)
Parameters:selfSet
Returns:PwAff
inequalities_matrix(self, c1, c2, c3, c4)
Parameters:
Returns:

Mat

insert_dims(self, type, pos, n)
Parameters:
Returns:

BasicSet

intersect(self, bset2)
Parameters:
Returns:

BasicSet

intersect_params(self, bset2)
Parameters:
Returns:

BasicSet

involves_dims(self, type, first, n)
Parameters:
Returns:

bool

is_bounded(self)
Parameters:selfBasicSet
Returns:bool
is_box(self)
Parameters:selfSet
Returns:bool
is_disjoint(self, bset2)
Parameters:
Returns:

bool

is_empty(self)
Parameters:selfBasicSet
Returns:bool
is_equal(self, bset2)
Parameters:
Returns:

bool

is_params(self)
Parameters:selfSet
Returns:bool
is_rational(self)
Parameters:selfBasicSet
Returns:int
is_singleton(self)
Parameters:selfSet
Returns:bool
is_strict_subset(self, set2)
Parameters:
Returns:

bool

is_subset(self, bset2)
Parameters:
Returns:

bool

is_universe(self)
Parameters:selfBasicSet
Returns:bool
is_wrapping(self)
Parameters:selfBasicSet
Returns:bool
lex_ge_set(self, set2)
Parameters:
Returns:

Map

lex_ge_union_set(self, uset2)
Parameters:
Returns:

UnionMap

lex_gt_set(self, set2)
Parameters:
Returns:

Map

lex_gt_union_set(self, uset2)
Parameters:
Returns:

UnionMap

lex_le_set(self, set2)
Parameters:
Returns:

Map

lex_le_union_set(self, uset2)
Parameters:
Returns:

UnionMap

lex_lt_set(self, set2)
Parameters:
Returns:

Map

lex_lt_union_set(self, uset2)
Parameters:
Returns:

UnionMap

lexmax(self)
Parameters:selfBasicSet
Returns:Set
lexmax_pw_multi_aff(self)
Parameters:selfSet
Returns:PwMultiAff
lexmin(self)
Parameters:selfBasicSet
Returns:Set
lexmin_pw_multi_aff(self)
Parameters:selfSet
Returns:PwMultiAff
lift(self)
Parameters:selfBasicSet
Returns:BasicSet
lower_bound_val(self, type, pos, value)
Parameters:
Returns:

BasicSet

make_disjoint(self)
Parameters:selfSet
Returns:Set
max_val(self, obj)
Parameters:
Returns:

Val

min_multi_union_pw_aff(self, obj)
Parameters:
Returns:

MultiVal

min_val(self, obj)
Parameters:
Returns:

Val

move_dims(self, dst_type, dst_pos, src_type, src_pos, n)
Parameters:
  • selfBasicSet
  • dst_typedim_type
  • dst_posunsigned
  • src_typedim_type
  • src_posunsigned
  • nunsigned
Returns:

BasicSet

multiplicative_call(self, fn)
Parameters:
  • selfBasicSet
  • fn – callback(bset) -> isl_pw_qpolynomial
Returns:

PwQPolynomial

n_basic_set(self)
Parameters:selfSet
Returns:int
n_constraint(self)
Parameters:selfBasicSet
Returns:int
n_dim(self)
Parameters:selfBasicSet
Returns:unsigned
n_param(self)
Parameters:selfBasicSet
Returns:unsigned
n_set(self)
Parameters:selfUnionSet
Returns:int
static nat_universe(dim)
Parameters:dimSpace
Returns:BasicSet
neg(self)
Parameters:selfBasicSet
Returns:BasicSet
params(self)
Parameters:selfBasicSet
Returns:BasicSet
partial_lexmax(self, dom)
Parameters:
Returns:

(Set, empty (Set))

partial_lexmax_pw_multi_aff(self, dom)
Parameters:
Returns:

(PwMultiAff, empty (Set))

partial_lexmin(self, dom)
Parameters:
Returns:

(Set, empty (Set))

partial_lexmin_pw_multi_aff(self, dom)
Parameters:
Returns:

(PwMultiAff, empty (Set))

plain_cmp(self, set2)
Parameters:
Returns:

int

plain_get_val_if_fixed(self, type, pos)
Parameters:
Returns:

Val

plain_is_disjoint(self, set2)
Parameters:
Returns:

bool

plain_is_empty(self)
Parameters:selfBasicSet
Returns:bool
plain_is_equal(self, bset2)
Parameters:
Returns:

bool

plain_is_universe(self)
Parameters:selfBasicSet
Returns:bool
plain_unshifted_simple_hull(self)
Parameters:selfSet
Returns:BasicSet
polyhedral_hull(self)
Parameters:selfSet
Returns:BasicSet
static positive_orthant(space)
Parameters:spaceSpace
Returns:BasicSet
preimage_multi_aff(self, ma)
Parameters:
Returns:

BasicSet

preimage_multi_pw_aff(self, mpa)
Parameters:
  • selfSet
  • mpaMultiPwAff
Returns:

Set

preimage_pw_multi_aff(self, pma)
Parameters:
Returns:

Set

preimage_union_pw_multi_aff(self, upma)
Parameters:
Returns:

UnionSet

product(self, set2)
Parameters:
Returns:

Set

project_onto_map(self, type, first, n)
Parameters:
  • selfSet
  • typedim_type
  • firstunsigned
  • nunsigned
Returns:

Map

project_out(self, type, first, n)
Parameters:
Returns:

BasicSet

project_out_except(names, types)
Parameters:
  • types – list of dim_type determining the types of axes to project out
  • names – names of axes matching the above which should be left alone by the projection

New in version 2011.3.

static read_from_str(ctx, str)
Parameters:
Returns:

BasicSet

reduced_basis(self)
Parameters:selfBasicSet
Returns:Mat
remove_dims(self, type, first, n)
Parameters:
Returns:

BasicSet

remove_divs(self)
Parameters:selfBasicSet
Returns:BasicSet
remove_divs_involving_dims(self, type, first, n)
Parameters:
Returns:

BasicSet

remove_redundancies(self)
Parameters:selfBasicSet
Returns:BasicSet
remove_unknown_divs(self)
Parameters:selfBasicSet
Returns:BasicSet
reset_space(self, dim)
Parameters:
Returns:

Set

reset_tuple_id(self)
Parameters:selfSet
Returns:Set
reset_user(self)
Parameters:selfSet
Returns:Set
sample(self)
Parameters:selfBasicSet
Returns:BasicSet
sample_point(self)
Parameters:selfBasicSet
Returns:Point
set_dim_id(self, type, pos, id)
Parameters:
Returns:

Set

set_dim_name(self, type, pos, s)
Parameters:
Returns:

BasicSet

set_tuple_id(self, id)
Parameters:
Returns:

BasicSet

set_tuple_name(self, s)
Parameters:
Returns:

BasicSet

simple_hull(self)
Parameters:selfSet
Returns:BasicSet
solutions(self)
Parameters:selfBasicSet
Returns:BasicSet
space

get_space(self)

Parameters:selfBasicSet
Returns:Space
split_dims(self, type, first, n)
Parameters:
  • selfSet
  • typedim_type
  • firstunsigned
  • nunsigned
Returns:

Set

subtract(self, set2)
Parameters:
Returns:

Set

sum(self, set2)
Parameters:
Returns:

Set

to_str(self)
Parameters:selfBasicSet
Returns:string
total_dim(self)
Parameters:selfBasicSet
Returns:unsigned
union(self, bset2)
Parameters:
Returns:

Set

union_disjoint(self, set2)
Parameters:
Returns:

Set

static universe(space)
Parameters:spaceSpace
Returns:BasicSet
unshifted_simple_hull(self)
Parameters:selfSet
Returns:BasicSet
unshifted_simple_hull_from_set_list(self, list)
Parameters:
Returns:

BasicSet

unwrap(self)
Parameters:selfBasicSet
Returns:BasicMap
upper_bound_val(self, type, pos, value)
Parameters:
Returns:

BasicSet

wrapped_domain_map(self)
Parameters:selfSet
Returns:Map

Basic Map

class islpy.BasicMap(s=None, context=None, _data=None)
add_constraint(self, constraint)
Parameters:
Returns:

BasicMap

add_constraints(constraints)

New in version 2011.3.

add_dims(self, type, n)
Parameters:
Returns:

BasicMap

add_map(self, map)
Parameters:
Returns:

UnionMap

affine_hull(self)
Parameters:selfBasicMap
Returns:BasicMap
align_divs(self)
Parameters:selfMap
Returns:Map
align_params(self, model)
Parameters:
Returns:

BasicMap

apply_domain(self, bmap2)
Parameters:
Returns:

BasicMap

apply_pw_qpolynomial_fold(self, pwf)
Parameters:
Returns:

(PwQPolynomialFold, tight (integer))

apply_range(self, bmap2)
Parameters:
Returns:

BasicMap

apply_union_pw_qpolynomial_fold(self, upwf)
Parameters:
Returns:

(UnionPwQPolynomialFold, tight (integer))

can_curry(self)
Parameters:selfBasicMap
Returns:bool
can_range_curry(self)
Parameters:selfMap
Returns:bool
can_uncurry(self)
Parameters:selfBasicMap
Returns:bool
can_zip(self)
Parameters:selfBasicMap
Returns:bool
coalesce(self)
Parameters:selfMap
Returns:Map
complement(self)
Parameters:selfMap
Returns:Map
compute_divs(self)
Parameters:selfBasicMap
Returns:Map
compute_flow(self, must_source, may_source, schedule)
Parameters:
Returns:

(int, must_dep (UnionMap), may_dep (UnionMap), must_no_source (UnionMap), may_no_source (UnionMap))

contains(self, space)
Parameters:
Returns:

bool

convex_hull(self)
Parameters:selfMap
Returns:BasicMap
copy(self)
Parameters:selfBasicMap
Returns:BasicMap
curry(self)
Parameters:selfBasicMap
Returns:BasicMap
deltas(self)
Parameters:selfBasicMap
Returns:BasicSet
deltas_map(self)
Parameters:selfBasicMap
Returns:BasicMap
detect_equalities(self)
Parameters:selfBasicMap
Returns:BasicMap
dim(self, type)
Parameters:
Returns:

unsigned

dim_max(self, pos)
Parameters:
Returns:

PwAff

dim_min(self, pos)
Parameters:
Returns:

PwAff

domain(self)
Parameters:selfBasicMap
Returns:BasicSet
domain_factor_domain(self)
Parameters:selfMap
Returns:Map
domain_factor_range(self)
Parameters:selfMap
Returns:Map
domain_is_wrapping(self)
Parameters:selfMap
Returns:bool
domain_map(self)
Parameters:selfBasicMap
Returns:BasicMap
domain_map_union_pw_multi_aff(self)
Parameters:selfUnionMap
Returns:UnionPwMultiAff
domain_product(self, bmap2)
Parameters:
Returns:

BasicMap

drop_constraints_involving_dims(self, type, first, n)
Parameters:
Returns:

BasicMap

drop_constraints_not_involving_dims(self, type, first, n)
Parameters:
Returns:

BasicMap

drop_unused_params(self)
Parameters:selfBasicMap
Returns:BasicMap
dump(self)
Parameters:selfBasicMap
Returns:(nothing)
eliminate(self, type, first, n)
Parameters:
Returns:

BasicMap

static empty(space)
Parameters:spaceSpace
Returns:BasicMap
eq_at_multi_union_pw_aff(self, mupa)
Parameters:
Returns:

UnionMap

static equal(dim, n_equal)
Parameters:
  • dimSpace
  • n_equalunsigned
Returns:

BasicMap

equalities_matrix(self, c1, c2, c3, c4, c5)
Parameters:
Returns:

Mat

equate(self, type1, pos1, type2, pos2)
Parameters:
Returns:

BasicMap

every_map(self, test)
Parameters:
  • selfUnionMap
  • test – callback(map) -> isl_bool
Returns:

bool

extract_map(self, dim)
Parameters:
Returns:

Map

factor_domain(self)
Parameters:selfMap
Returns:Map
factor_range(self)
Parameters:selfMap
Returns:Map
find_dim_by_id(self, type, id)
Parameters:
Returns:

int

find_dim_by_name(self, type, name)
Parameters:
Returns:

int

fix_val(self, type, pos, v)
Parameters:
Returns:

BasicMap

fixed_power_val(self, exp)
Parameters:
Returns:

Map

flat_domain_product(self, map2)
Parameters:
Returns:

Map

flat_product(self, bmap2)
Parameters:
Returns:

BasicMap

flat_range_product(self, bmap2)
Parameters:
Returns:

BasicMap

flatten(self)
Parameters:selfBasicMap
Returns:BasicMap
flatten_domain(self)
Parameters:selfBasicMap
Returns:BasicMap
flatten_range(self)
Parameters:selfBasicMap
Returns:BasicMap
floordiv_val(self, d)
Parameters:
Returns:

Map

foreach_basic_map(self, fn)
Parameters:
  • selfMap
  • fn – callback(bmap) -> isl_stat
Returns:

(nothing)

foreach_constraint(self, fn)
Parameters:
  • selfBasicMap
  • fn – callback(c) -> isl_stat
Returns:

(nothing)

foreach_map(self, fn)
Parameters:
  • selfUnionMap
  • fn – callback(map) -> isl_stat
Returns:

(nothing)

static from_aff(aff)
Parameters:affAff
Returns:BasicMap
static from_aff_list(domain_space, list)
Parameters:
Returns:

BasicMap

static from_constraint(constraint)
Parameters:constraintConstraint
Returns:BasicMap
static from_constraint_matrices(dim, eq, ineq, c1, c2, c3, c4, c5)
Parameters:
Returns:

BasicMap

static from_domain(bset)
Parameters:bsetBasicSet
Returns:BasicMap
static from_domain_and_range(domain, range)
Parameters:
Returns:

BasicMap

static from_multi_aff(maff)
Parameters:maffMultiAff
Returns:BasicMap
static from_qpolynomial(qp)
Parameters:qpQPolynomial
Returns:BasicMap
static from_range(bset)
Parameters:bsetBasicSet
Returns:BasicMap
get_basic_map_list(self)
Parameters:selfMap
Returns:BasicMapList
get_basic_maps()

Get the list of BasicMap instances in this Map.

get_constraint_list(self)
Parameters:selfBasicMap
Returns:ConstraintList
get_constraints()

Get a list of constraints.

get_ctx(self)
Parameters:selfBasicMap
Returns:Context
get_dim_id(self, type, pos)
Parameters:
Returns:

Id

get_dim_name(self, type, pos)
Parameters:
Returns:

string

get_div(self, pos)
Parameters:
Returns:

Aff

get_hash(self)
Parameters:selfMap
Returns:uint32_t
get_id_dict(dimtype=None)

Return a dictionary mapping Id instances to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_local_space(self)
Parameters:selfBasicMap
Returns:LocalSpace
get_map_list(self)
Parameters:selfUnionMap
Returns:MapList
get_range_simple_fixed_box_hull(self)
Parameters:selfMap
Returns:FixedBox
get_range_stride_info(self, pos)
Parameters:
Returns:

StrideInfo

get_space(self)
Parameters:selfBasicMap
Returns:Space
get_tuple_id(self, type)
Parameters:
Returns:

Id

get_tuple_name(self, type)
Parameters:
Returns:

string

get_var_dict(dimtype=None)

Return a dictionary mapping variable names to tuples of (dim_type, index).

Parameters:dimtype – None to get all variables, otherwise one of dim_type.
get_var_ids(dimtype)

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype)

Return a list of dim names (in order) for dim_type dimtype.

gist(self, context)
Parameters:
Returns:

BasicMap

gist_basic_map(self, context)
Parameters:
Returns:

Map

gist_domain(self, context)
Parameters:
Returns:

BasicMap

gist_params(self, context)
Parameters:
  • selfMap
  • contextSet
Returns:

Map

gist_range(self, context)
Parameters:
  • selfMap
  • contextSet
Returns:

Map

has_defining_equality(self, type, pos)
Parameters:
Returns:

(bool, c (Constraint))

has_dim_id(self, type, pos)
Parameters:
Returns:

bool

has_dim_name(self, type, pos)
Parameters:
Returns:

bool

has_equal_space(self, map2)
Parameters:
Returns:

bool

has_tuple_id(self, type)
Parameters:
Returns:

bool

has_tuple_name(self, type)
Parameters:
Returns:

bool

static identity(dim)
Parameters:dimSpace
Returns:BasicMap
image_is_bounded(self)
Parameters:selfBasicMap
Returns:bool
inequalities_matrix(self, c1, c2, c3, c4, c5)
Parameters:
Returns:

Mat

insert_dims(self, type, pos, n)
Parameters:
Returns:

BasicMap

intersect(self, bmap2)
Parameters:
Returns:

BasicMap

intersect_domain(self, bset)
Parameters:
Returns:

BasicMap

intersect_domain_factor_range(self, factor)
Parameters:
Returns:

Map

intersect_params(self, params)
Parameters:
Returns:

Map

intersect_range(self, bset)
Parameters:
Returns:

BasicMap

intersect_range_factor_range(self, factor)
Parameters:
Returns:

Map

involves_dims(self, type, first, n)
Parameters:
Returns:

bool

is_bijective(self)
Parameters:selfMap
Returns:bool
is_disjoint(self, bmap2)
Parameters:
Returns:

bool

is_empty(self)
Parameters:selfBasicMap
Returns:bool
is_equal(self, bmap2)
Parameters:
Returns:

bool

is_identity(self)
Parameters:selfMap
Returns:bool
is_injective(self)
Parameters:selfMap
Returns:bool
is_product(self)
Parameters:selfMap
Returns:bool