Reference: Expression-like Objects

Quasi-Affine Expressions

Quasi-Affine Expression

class islpy.Aff(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__(self) int

__hash__(self) -> int

Warning

This function is not part of the officially public isl API. Use at your own risk.

__ne__(value, /)

Return self!=value.

add(self, aff2: Aff) Aff
add_coefficient_val(self, type: dim_type, pos: int, v: Val | int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_constant_num_si(self, v: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_constant_val(self, v: Val | int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_dims(self, type: dim_type, n: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

bind_id(self, id: Id) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

ceil(self) Aff
coefficient_sgn(self, type: dim_type, pos: int) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

copy(self) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

div(self, aff2: Aff) Aff
domain_reverse(self) Aff
drop_dims(self, type: dim_type, first: int, n: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

eq_basic_set(self, aff2: Aff) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

eq_set(self, aff2: Aff) Set
eval(self, pnt: Point) Val
find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

floor(self) Aff
from_range(self) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

ge_basic_set(self, aff2: Aff) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

ge_set(self, aff2: Aff) Set
get_coefficient_val(self, type: dim_type, pos: int) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_coefficients_by_name(dimtype: dim_type | None = None, dim_to_name: Mapping[tuple[dim_type, int], str] | None = None) dict[str | Literal[1], Val]

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) Val
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_denominator_val(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_name(self, type: dim_type, pos: int) str | None

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_div(self, pos: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_local_space(self) LocalSpace

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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) LocalSpace

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_pieces() list[tuple[Set, Aff]]
get_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: Set | BasicSet) Aff
gist_params(self, context: Set | BasicSet) Aff
gt_basic_set(self, aff2: Aff) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

gt_set(self, aff2: Aff) Set
insert_dims(self, type: dim_type, first: int, n: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_dims(self, type: dim_type, first: int, n: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_locals(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_cst(self) bool
is_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

le_basic_set(self, aff2: Aff) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

le_set(self, aff2: Aff) Set
lt_basic_set(self, aff2: Aff) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

lt_set(self, aff2: Aff) Set
mod_val(self, mod: Val | int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

mul(self, aff2: Aff) Aff
nan_on_domain = <nanobind.nb_func object>
nan_on_domain_space = <nanobind.nb_func object>
ne_set(self, aff2: Aff) Set
neg(self) Aff
neg_basic_set(self) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

param_on_domain_space_id = <nanobind.nb_func object>
plain_is_equal(self, aff2: Aff) bool
plain_is_zero(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

project_domain_on_params(self) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_aff(self, aff2: Aff) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_multi_aff(self, ma: MultiAff) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
scale_down_val(self, v: Val | int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_coefficient_val(self, type: dim_type, pos: int, v: Val | int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_coefficients(dim_tp: dim_type, args: Sequence[Val | int]) AffOrConstraintT
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: Iterable[tuple[str | Literal[1], Val | int]] | Mapping[str | Literal[1], Val | int], name_to_dim: Mapping[str, tuple[dim_type, int]] | None = None) AffOrConstraintT

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: Val | int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_id(self, type: dim_type, pos: int, id: Id) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_id(self, type: dim_type, id: Id) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, aff2: Aff) Aff
to_list(self) AffList
to_pw_aff
to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

unbind_params_insert_domain(self, domain: MultiId) Aff
val_on_domain = <nanobind.nb_func object>
val_on_domain_space = <nanobind.nb_func object>
var_on_domain = <nanobind.nb_func object>
zero_basic_set(self) BasicSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

zero_on_domain = <nanobind.nb_func object>
zero_on_domain_space = <nanobind.nb_func object>

Piecewise Quasi-Affine Expression

class islpy.PwAff(*args, **kwargs)
__eq__(other: object) bool

Return self==value.

__hash__(self) int

__hash__(self) -> int

Warning

This function is not part of the officially public isl API. Use at your own risk.

__ne__(value, /)

Return self!=value.

add(self, pwaff2: PwAff | Aff) PwAff
add_constant_val(self, v: Val | int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_dims(self, type: dim_type, n: int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

alloc = <nanobind.nb_func object>
as_aff(self) Aff
as_map(self) Map
bind_domain(self, tuple: MultiId) PwAff
bind_domain_wrapped_domain(self, tuple: MultiId) PwAff
bind_id(self, id: Id) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

ceil(self) PwAff
coalesce(self) PwAff
cond(self, pwaff_true: PwAff | Aff, pwaff_false: PwAff | Aff) PwAff
copy(self) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

div(self, pa2: PwAff | Aff) PwAff
domain(self) Set
domain_reverse(self) PwAff
drop_dims(self, type: dim_type, first: int, n: int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) PwAff
dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

empty = <nanobind.nb_func object>
eq_map(self, pa2: PwAff | Aff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

eq_set(self, pwaff2: PwAff | Aff) Set
eval(self, pnt: Point) Val
every_piece(self, test: Callable[[Set, Aff], bool]) bool
Parameters:

test – callback(set, aff)

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

floor(self) PwAff
foreach_piece(self, fn: Callable[[Set, Aff], None]) None
Parameters:

fn – callback(set, aff)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_aff = <nanobind.nb_func object>
from_range(self) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

ge_map(self, pa2: PwAff | Aff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

ge_set(self, pwaff2: PwAff | Aff) Set
get_aggregate_domain() Set
Returns:

a Set that is the union of the domains of all pieces

get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_id(self, type: dim_type, pos: int) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_name(self, type: dim_type, pos: int) str | None

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_pieces() list[tuple[Set, Aff]]
get_space(self) Space
get_tuple_id(self, type: dim_type) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: Set | BasicSet) PwAff
gist_params(self, context: Set | BasicSet) PwAff
gt_map(self, pa2: PwAff | Aff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

gt_set(self, pwaff2: PwAff | Aff) Set
has_dim_id(self, type: dim_type, pos: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

has_tuple_id(self, type: dim_type) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

insert_dims(self, type: dim_type, first: int, n: int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

insert_domain(self, domain: Space) PwAff
intersect_domain(self, set: Set | BasicSet) PwAff
intersect_domain_wrapped_domain(self, set: Set | BasicSet) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_range(self, set: Set | BasicSet) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_params(self, set: Set | BasicSet) PwAff
involves_dims(self, type: dim_type, first: int, n: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_param_id(self, id: Id) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_cst(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_empty(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_equal(self, pa2: PwAff | Aff) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

isa_aff(self) bool
le_map(self, pa2: PwAff | Aff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

le_set(self, pwaff2: PwAff | Aff) Set
lt_map(self, pa2: PwAff | Aff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

lt_set(self, pwaff2: PwAff | Aff) Set
max(self, pwaff2: PwAff | Aff) PwAff
max_val(self) Val
min(self, pwaff2: PwAff | Aff) PwAff
min_val(self) Val
mod_val(self, mod: Val | int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

mul(self, pwaff2: PwAff | Aff) PwAff
n_piece(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

nan_on_domain = <nanobind.nb_func object>
nan_on_domain_space = <nanobind.nb_func object>
ne_set(self, pwaff2: PwAff | Aff) Set
neg(self) PwAff
non_zero_set(self) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

nonneg_set(self) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

param_on_domain_id = <nanobind.nb_func object>
params(self) Set
plain_cmp(self, pa2: PwAff | Aff) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, pwaff2: PwAff | Aff) bool
pos_set(self) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

project_domain_on_params(self) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_multi_aff(self, ma: MultiAff) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_multi_pw_aff(self, mpa: MultiPwAff) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_pw_multi_aff(self, pma: PwMultiAff | MultiAff) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
reset_tuple_id(self, type: dim_type) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, f: Val | int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_id(self, type: dim_type, pos: int, id: Id) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_id(self, type: dim_type, id: Id) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, pwaff2: PwAff | Aff) PwAff
subtract_domain(self, set: Set | BasicSet) PwAff
tdiv_q(self, pa2: PwAff | Aff) PwAff
tdiv_r(self, pa2: PwAff | Aff) PwAff
to_list(self) PwAffList
to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_union_pw_aff(self) UnionPwAff
union_add(self, pwaff2: PwAff | Aff) PwAff
union_max(self, pwaff2: PwAff | Aff) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

union_min(self, pwaff2: PwAff | Aff) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

val_on_domain = <nanobind.nb_func object>
var_on_domain = <nanobind.nb_func object>
zero_on_domain = <nanobind.nb_func object>
zero_set(self) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

Union of Piecewise Quasi-Affine Expressions

class islpy.UnionPwAff(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

add(self, upa2: UnionPwAff | Aff | PwAff) UnionPwAff
add_pw_aff(self, pa: PwAff | Aff) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

aff_on_domain = <nanobind.nb_func object>
align_params(self, model: Space) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

bind_id(self, id: Id) UnionSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

coalesce(self) UnionPwAff
copy(self) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) UnionSet
drop_dims(self, type: dim_type, first: int, n: int) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) UnionPwAff
dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

empty = <nanobind.nb_func object>
empty_ctx = <nanobind.nb_func object>
empty_space = <nanobind.nb_func object>
every_pw_aff(self, test: Callable[[PwAff], bool]) bool
Parameters:

test – callback(pa)

Warning

This function is not part of the officially public isl API. Use at your own risk.

extract_pw_aff(self, space: Space) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

floor(self) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_pw_aff(self, fn: Callable[[PwAff], None]) None
Parameters:

fn – callback(pa)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_aff = <nanobind.nb_func object>
from_pw_aff = <nanobind.nb_func object>
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_pw_aff_list(self) PwAffList

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_space(self) Space
get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: UnionSet | BasicSet | Set) UnionPwAff
gist_params(self, context: Set | BasicSet) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain(self, uset: UnionSet | BasicSet | Set) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_space(self, space: Space) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_domain(self, uset: UnionSet | BasicSet | Set) UnionPwAff
intersect_domain_wrapped_range(self, uset: UnionSet | BasicSet | Set) UnionPwAff
intersect_params(self, set: Set | BasicSet) UnionPwAff
involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

max_val(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

min_val(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

mod_val(self, f: Val | int) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

n_pw_aff(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

neg(self) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

param_on_domain_id = <nanobind.nb_func object>
plain_is_equal(self, upa2: UnionPwAff | Aff | PwAff) bool
pullback_union_pw_multi_aff(self, upma: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pw_aff_on_domain = <nanobind.nb_func object>
read_from_str = <nanobind.nb_func object>
reset_user(self) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, upa2: UnionPwAff | Aff | PwAff) UnionPwAff
subtract_domain(self, uset: UnionSet | BasicSet | Set) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_space(self, space: Space) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_list(self) UnionPwAffList
to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

union_add(self, upa2: UnionPwAff | Aff | PwAff) UnionPwAff
val_on_domain = <nanobind.nb_func object>
zero_union_set(self) UnionSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

Multiple Union of Piecewise Quasi-Affine Expressions

class islpy.MultiUnionPwAff(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__len__(self) int

__len__(self) -> int

__ne__(value, /)

Return self!=value.

add(self, multi2: MultiUnionPwAff) MultiUnionPwAff
align_params(self, model: Space) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

apply_aff(self, aff: Aff) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

apply_multi_aff(self, ma: MultiAff) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

apply_pw_aff(self, pa: PwAff | Aff) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

apply_pw_multi_aff(self, pma: PwMultiAff | MultiAff) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

bind(self, tuple: MultiId) UnionSet
coalesce(self) MultiUnionPwAff
copy(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) UnionSet
drop_dims(self, type: dim_type, first: int, n: int) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

extract_multi_pw_aff(self, space: Space) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

factor_range(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_id(self, type: dim_type, id: Id) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

flat_range_product(self, multi2: MultiUnionPwAff) MultiUnionPwAff
flatten_range(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

floor(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_multi_aff = <nanobind.nb_func object>
from_multi_pw_aff = <nanobind.nb_func object>
from_range(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_union_map = <nanobind.nb_func object>
from_union_pw_aff = <nanobind.nb_func object>
from_union_pw_aff_list = <nanobind.nb_func object>
from_union_pw_multi_aff = <nanobind.nb_func object>
get_at(self, pos: int) UnionPwAff
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_id(self, type: dim_type, pos: int) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_list(self) UnionPwAffList
get_range_tuple_id(self) Id
get_space(self) Space
get_tuple_id(self, type: dim_type) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_tuple_name(self, type: dim_type) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_union_pw_aff(self, pos: int) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: UnionSet | BasicSet | Set) MultiUnionPwAff
gist_params(self, context: Set | BasicSet) MultiUnionPwAff
has_range_tuple_id(self) bool
has_tuple_id(self, type: dim_type) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain(self, uset: UnionSet | BasicSet | Set) MultiUnionPwAff
intersect_params(self, params: Set | BasicSet) MultiUnionPwAff
intersect_range(self, set: Set | BasicSet) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_nan(self) bool
max_multi_val(self) MultiVal

Warning

This function is not part of the officially public isl API. Use at your own risk.

min_multi_val(self) MultiVal

Warning

This function is not part of the officially public isl API. Use at your own risk.

mod_multi_val(self, mv: MultiVal) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

multi_aff_on_domain = <nanobind.nb_func object>
multi_val_on_domain = <nanobind.nb_func object>
neg(self) MultiUnionPwAff
plain_is_equal(self, multi2: MultiUnionPwAff) bool
pullback_union_pw_multi_aff(self, upma: UnionPwMultiAff | MultiAff | PwMultiAff) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pw_multi_aff_on_domain = <nanobind.nb_func object>
range_factor_domain(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_factor_range(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_is_wrapping(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_product(self, multi2: MultiUnionPwAff) MultiUnionPwAff
range_splice(self, pos: int, multi2: MultiUnionPwAff) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
reset_range_tuple_id(self) MultiUnionPwAff
reset_tuple_id(self, type: dim_type) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_multi_val(self, mv: MultiVal) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_multi_val(self, mv: MultiVal) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_at(self, pos: int, el: UnionPwAff | Aff | PwAff) MultiUnionPwAff
set_dim_id(self, type: dim_type, pos: int, id: Id) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_range_tuple_id(self, id: Id) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_id(self, type: dim_type, id: Id) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_name(self, type: dim_type, s: str) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_union_pw_aff(self, pos: int, el: UnionPwAff | Aff | PwAff) MultiUnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, multi2: MultiUnionPwAff) MultiUnionPwAff
to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

union_add(self, mupa2: MultiUnionPwAff) MultiUnionPwAff
zero = <nanobind.nb_func object>
zero_union_set(self) UnionSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

Multiple Affine Expressions

Multiple Affine Expression

class islpy.MultiAff(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__len__(self) int

__len__(self) -> int

__ne__(value, /)

Return self!=value.

add(self, multi2: MultiAff) MultiAff
add_constant_multi_val(self, mv: MultiVal) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_constant_val(self, v: Val | int) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_dims(self, type: dim_type, n: int) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

as_map(self) Map
as_set(self) Set
bind(self, tuple: MultiId) BasicSet
bind_domain(self, tuple: MultiId) MultiAff
bind_domain_wrapped_domain(self, tuple: MultiId) MultiAff
copy(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain_map = <nanobind.nb_func object>
domain_reverse(self) MultiAff
drop_dims(self, type: dim_type, first: int, n: int) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

factor_range(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_id(self, type: dim_type, id: Id) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

flat_range_product(self, multi2: MultiAff) MultiAff
flatten_domain(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

flatten_range(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

floor(self) MultiAff
from_aff = <nanobind.nb_func object>
from_aff_list = <nanobind.nb_func object>
from_range(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_aff(self, pos: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_at(self, pos: int) Aff
get_constant_multi_val(self) MultiVal
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_id(self, type: dim_type, pos: int) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_list(self) AffList
get_range_tuple_id(self) Id
get_space(self) Space
get_tuple_id(self, type: dim_type) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_tuple_name(self, type: dim_type) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: Set | BasicSet) MultiAff
gist_params(self, context: Set | BasicSet) MultiAff
has_range_tuple_id(self) bool
has_tuple_id(self, type: dim_type) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

identity = <nanobind.nb_func object>
identity_multi_aff(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

identity_on_domain_space = <nanobind.nb_func object>
insert_dims(self, type: dim_type, first: int, n: int) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

insert_domain(self, domain: Space) MultiAff
involves_dims(self, type: dim_type, first: int, n: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_locals(self) bool
involves_nan(self) bool
lex_ge_set(self, ma2: MultiAff) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

lex_gt_set(self, ma2: MultiAff) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

lex_le_set(self, ma2: MultiAff) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

lex_lt_set(self, ma2: MultiAff) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

lift(self) tuple[MultiAff, LocalSpace]

Warning

This function is not part of the officially public isl API. Use at your own risk.

mod_multi_val(self, mv: MultiVal) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

multi_val_on_domain_space = <nanobind.nb_func object>
multi_val_on_space = <nanobind.nb_func object>
neg(self) MultiAff
plain_cmp(self, multi2: MultiAff) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, multi2: MultiAff) bool
product(self, multi2: MultiAff) MultiAff
project_domain_on_params(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

project_out_map = <nanobind.nb_func object>
pullback_multi_aff(self, ma2: MultiAff) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_factor_domain(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_factor_range(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_is_wrapping(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_map = <nanobind.nb_func object>
range_product(self, multi2: MultiAff) MultiAff
range_splice(self, pos: int, multi2: MultiAff) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
reset_range_tuple_id(self) MultiAff
reset_tuple_id(self, type: dim_type) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_multi_val(self, mv: MultiVal) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_multi_val(self, mv: MultiVal) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_aff(self, pos: int, el: Aff) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_at(self, pos: int, el: Aff) MultiAff
set_dim_id(self, type: dim_type, pos: int, id: Id) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_range_tuple_id(self, id: Id) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_id(self, type: dim_type, id: Id) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_name(self, type: dim_type, s: str) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
splice(self, in_pos: int, out_pos: int, multi2: MultiAff) MultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

sub(self, multi2: MultiAff) MultiAff
to_multi_pw_aff(self) MultiPwAff
to_multi_union_pw_aff(self) MultiUnionPwAff
to_pw_multi_aff(self) PwMultiAff
to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

unbind_params_insert_domain(self, domain: MultiId) MultiAff
zero = <nanobind.nb_func object>

Piecewise Multiple Affine Expression

class islpy.PwMultiAff(*args, **kwargs)
__eq__(other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

add(self, pma2: PwMultiAff | MultiAff) PwMultiAff
add_constant_multi_val(self, mv: MultiVal) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_constant_val(self, v: Val | int) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

alloc = <nanobind.nb_func object>
as_map(self) Map
as_multi_aff(self) MultiAff
as_set(self) Set
bind_domain(self, tuple: MultiId) PwMultiAff
bind_domain_wrapped_domain(self, tuple: MultiId) PwMultiAff
coalesce(self) PwMultiAff
copy(self) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) Set
domain_map = <nanobind.nb_func object>
domain_reverse(self) PwMultiAff
drop_dims(self, type: dim_type, first: int, n: int) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) PwMultiAff
dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

empty = <nanobind.nb_func object>
every_piece(self, test: Callable[[Set, MultiAff], bool]) bool
Parameters:

test – callback(set, ma)

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

fix_si(self, type: dim_type, pos: int, value: int) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

flat_range_product(self, pma2: PwMultiAff | MultiAff) PwMultiAff
foreach_piece(self, fn: Callable[[Set, MultiAff], None]) None
Parameters:

fn – callback(set, maff)

from_domain = <nanobind.nb_func object>
from_map = <nanobind.nb_func object>
from_multi_aff = <nanobind.nb_func object>
from_multi_pw_aff = <nanobind.nb_func object>
from_pw_aff = <nanobind.nb_func object>
from_set = <nanobind.nb_func object>
get_at(self, pos: int) PwAff
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_id(self, type: dim_type, pos: int) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_name(self, type: dim_type, pos: int) str | None

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_pw_aff(self, pos: int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_range_tuple_id(self) Id
get_space(self) Space
get_tuple_id(self, type: dim_type) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_tuple_name(self, type: dim_type) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, set: Set | BasicSet) PwMultiAff
gist_params(self, set: Set | BasicSet) PwMultiAff
has_range_tuple_id(self) bool
has_tuple_id(self, type: dim_type) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

has_tuple_name(self, type: dim_type) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

identity = <nanobind.nb_func object>
identity_on_domain_space = <nanobind.nb_func object>
insert_domain(self, domain: Space) PwMultiAff
intersect_domain(self, set: Set | BasicSet) PwMultiAff
intersect_domain_wrapped_domain(self, set: Set | BasicSet) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_range(self, set: Set | BasicSet) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_params(self, set: Set | BasicSet) PwMultiAff
involves_dims(self, type: dim_type, first: int, n: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_locals(self) bool
involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_param_id(self, id: Id) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_equal(self, pma2: PwMultiAff | MultiAff) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

isa_multi_aff(self) bool
max_multi_val(self) MultiVal
min_multi_val(self) MultiVal
multi_val_on_domain = <nanobind.nb_func object>
n_piece(self) int
neg(self) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, pma2: PwMultiAff | MultiAff) bool
preimage_domain_wrapped_domain_pw_multi_aff(self, pma2: PwMultiAff | MultiAff) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

product(self, pma2: PwMultiAff | MultiAff) PwMultiAff
project_domain_on_params(self) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

project_out_map = <nanobind.nb_func object>
pullback_multi_aff(self, ma: MultiAff) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_pw_multi_aff(self, pma2: PwMultiAff | MultiAff) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_factor_domain(self) PwMultiAff
range_factor_range(self) PwMultiAff
range_map = <nanobind.nb_func object>
range_product(self, pma2: PwMultiAff | MultiAff) PwMultiAff
read_from_str = <nanobind.nb_func object>
reset_tuple_id(self, type: dim_type) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_multi_val(self, mv: MultiVal) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_multi_val(self, mv: MultiVal) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_id(self, type: dim_type, pos: int, id: Id) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_pw_aff(self, pos: int, pa: PwAff | Aff) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_range_tuple_id(self, id: Id) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_id(self, type: dim_type, id: Id) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, pma2: PwMultiAff | MultiAff) PwMultiAff
subtract_domain(self, set: Set | BasicSet) PwMultiAff
to_list(self) PwMultiAffList
to_multi_pw_aff(self) MultiPwAff
to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_union_pw_multi_aff(self) UnionPwMultiAff
union_add(self, pma2: PwMultiAff | MultiAff) PwMultiAff
union_lexmax(self, pma2: PwMultiAff | MultiAff) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

union_lexmin(self, pma2: PwMultiAff | MultiAff) PwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

zero = <nanobind.nb_func object>

Multiple Piecewise Affine Expression

class islpy.MultiPwAff(*args, **kwargs)
__eq__(other: object) bool

Return self==value.

__hash__(self) int

__hash__(self) -> int

Warning

This function is not part of the officially public isl API. Use at your own risk.

__len__(self) int

__len__(self) -> int

__ne__(value, /)

Return self!=value.

add(self, multi2: MultiPwAff) MultiPwAff
add_constant_multi_val(self, mv: MultiVal) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_constant_val(self, v: Val | int) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_dims(self, type: dim_type, n: int) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

as_map(self) Map
as_multi_aff(self) MultiAff
as_set(self) Set
bind(self, tuple: MultiId) Set
bind_domain(self, tuple: MultiId) MultiPwAff
bind_domain_wrapped_domain(self, tuple: MultiId) MultiPwAff
coalesce(self) MultiPwAff
copy(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) Set
domain_reverse(self) MultiPwAff
drop_dims(self, type: dim_type, first: int, n: int) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

eq_map(self, mpa2: MultiPwAff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

factor_range(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_id(self, type: dim_type, id: Id) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

flat_range_product(self, multi2: MultiPwAff) MultiPwAff
flatten_range(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_aff = <nanobind.nb_func object>
from_multi_aff = <nanobind.nb_func object>
from_pw_aff = <nanobind.nb_func object>
from_pw_aff_list = <nanobind.nb_func object>
from_pw_multi_aff = <nanobind.nb_func object>
from_range(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_at(self, pos: int) PwAff
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_dim_id(self, type: dim_type, pos: int) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_list(self) PwAffList
get_pw_aff(self, pos: int) PwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_range_tuple_id(self) Id
get_space(self) Space
get_tuple_id(self, type: dim_type) Id

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_tuple_name(self, type: dim_type) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, set: Set | BasicSet) MultiPwAff
gist_params(self, set: Set | BasicSet) MultiPwAff
has_range_tuple_id(self) bool
has_tuple_id(self, type: dim_type) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

identity = <nanobind.nb_func object>
identity_multi_pw_aff(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

identity_on_domain_space = <nanobind.nb_func object>
insert_dims(self, type: dim_type, first: int, n: int) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

insert_domain(self, domain: Space) MultiPwAff
intersect_domain(self, domain: Set | BasicSet) MultiPwAff
intersect_params(self, set: Set | BasicSet) MultiPwAff
involves_dims(self, type: dim_type, first: int, n: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_nan(self) bool
involves_param_id(self, id: Id) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_param_id_list(self, list: IdList) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_cst(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_equal(self, mpa2: MultiPwAff) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

isa_multi_aff(self) bool
lex_ge_map(self, mpa2: MultiPwAff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

lex_gt_map(self, mpa2: MultiPwAff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

lex_le_map(self, mpa2: MultiPwAff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

lex_lt_map(self, mpa2: MultiPwAff) Map

Warning

This function is not part of the officially public isl API. Use at your own risk.

max(self, multi2: MultiPwAff) MultiPwAff
max_multi_val(self) MultiVal
min(self, multi2: MultiPwAff) MultiPwAff
min_multi_val(self) MultiVal
mod_multi_val(self, mv: MultiVal) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

neg(self) MultiPwAff
plain_is_equal(self, multi2: MultiPwAff) bool
product(self, multi2: MultiPwAff) MultiPwAff
project_domain_on_params(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_multi_aff(self, ma: MultiAff) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_multi_pw_aff(self, mpa2: MultiPwAff) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_pw_multi_aff(self, pma: PwMultiAff | MultiAff) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_factor_domain(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_factor_range(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_is_wrapping(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_product(self, multi2: MultiPwAff) MultiPwAff
range_splice(self, pos: int, multi2: MultiPwAff) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
reset_range_tuple_id(self) MultiPwAff
reset_tuple_id(self, type: dim_type) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_multi_val(self, mv: MultiVal) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_multi_val(self, mv: MultiVal) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_at(self, pos: int, el: PwAff | Aff) MultiPwAff
set_dim_id(self, type: dim_type, pos: int, id: Id) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_pw_aff(self, pos: int, el: PwAff | Aff) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_range_tuple_id(self, id: Id) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_id(self, type: dim_type, id: Id) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_tuple_name(self, type: dim_type, s: str) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
splice(self, in_pos: int, out_pos: int, multi2: MultiPwAff) MultiPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

sub(self, multi2: MultiPwAff) MultiPwAff
to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

unbind_params_insert_domain(self, domain: MultiId) MultiPwAff
union_add(self, mpa2: MultiPwAff) MultiPwAff
zero = <nanobind.nb_func object>

Union of Piecewise Multiple Affine Expressions

class islpy.UnionPwMultiAff(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

add(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff
add_pw_multi_aff(self, pma: PwMultiAff | MultiAff) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

apply_union_pw_multi_aff(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

as_multi_union_pw_aff(self) MultiUnionPwAff
as_pw_multi_aff(self) PwMultiAff
as_union_map(self) UnionMap
coalesce(self) UnionPwMultiAff
copy(self) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) UnionSet
drop_dims(self, type: dim_type, first: int, n: int) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) UnionPwMultiAff
dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

empty = <nanobind.nb_func object>
empty_ctx = <nanobind.nb_func object>
empty_space = <nanobind.nb_func object>
every_pw_multi_aff(self, test: Callable[[PwMultiAff], bool]) bool
Parameters:

test – callback(pma)

Warning

This function is not part of the officially public isl API. Use at your own risk.

extract_pw_multi_aff(self, space: Space) PwMultiAff
find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

flat_range_product(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff
foreach_pw_multi_aff(self, fn: Callable[[PwMultiAff], None]) None
Parameters:

fn – callback(pma)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_aff = <nanobind.nb_func object>
from_domain = <nanobind.nb_func object>
from_multi_aff = <nanobind.nb_func object>
from_multi_union_pw_aff = <nanobind.nb_func object>
from_pw_multi_aff = <nanobind.nb_func object>
from_union_map = <nanobind.nb_func object>
from_union_pw_aff = <nanobind.nb_func object>
from_union_set = <nanobind.nb_func object>
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_pw_multi_aff_list(self) PwMultiAffList
get_space(self) Space
get_union_pw_aff(self, pos: int) UnionPwAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: UnionSet | BasicSet | Set) UnionPwMultiAff
gist_params(self, context: Set | BasicSet) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain(self, uset: UnionSet | BasicSet | Set) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_space(self, space: Space) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_domain(self, uset: UnionSet | BasicSet | Set) UnionPwMultiAff
intersect_domain_wrapped_range(self, uset: UnionSet | BasicSet | Set) UnionPwMultiAff
intersect_params(self, set: Set | BasicSet) UnionPwMultiAff
involves_locals(self) bool
involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

isa_pw_multi_aff(self) bool
multi_val_on_domain = <nanobind.nb_func object>
n_pw_multi_aff(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

neg(self) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_empty(self) bool
plain_is_equal(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) bool
preimage_domain_wrapped_domain_union_pw_multi_aff(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

pullback_union_pw_multi_aff(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

range_factor_domain(self) UnionPwMultiAff
range_factor_range(self) UnionPwMultiAff
range_product(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff
read_from_str = <nanobind.nb_func object>
reset_user(self) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, val: Val | int) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_multi_val(self, mv: MultiVal) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, val: Val | int) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff
subtract_domain(self, uset: UnionSet | BasicSet | Set) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_space(self, space: Space) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwMultiAff

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_list(self) UnionPwMultiAffList

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

union_add(self, upma2: UnionPwMultiAff | MultiAff | PwMultiAff) UnionPwMultiAff

Quasipolynomials

Term

class islpy.Term
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

copy(self) Term

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_coefficient_val(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_div(self, pos: int) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_exp(self, type: dim_type, pos: int) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

QPolynomial

class islpy.QPolynomial
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

add(self, qp2: QPolynomial) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_dims(self, type: dim_type, n: int) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

as_aff(self) Aff

Warning

This function is not part of the officially public isl API. Use at your own risk.

as_polynomial_on_domain(self, bset: BasicSet, fn: Callable[[BasicSet, QPolynomial], None]) None
Parameters:

fn – callback(bset, poly)

Warning

This function is not part of the officially public isl API. Use at your own risk.

copy(self) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain_reverse(self) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_dims(self, type: dim_type, first: int, n: int) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

eval(self, pnt: Point) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_term(self, fn: Callable[[Term], None]) None
Parameters:

fn – callback(term)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_aff = <nanobind.nb_func object>
from_constraint = <nanobind.nb_func object>
from_term = <nanobind.nb_func object>
get_constant_val(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_terms() list[Term]

Get the list of Term instances in this QPolynomial.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: Set | BasicSet) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

gist_params(self, context: Set | BasicSet) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

homogenize(self) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

infty_on_domain = <nanobind.nb_func object>
insert_dims(self, type: dim_type, first: int, n: int) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_dims(self, type: dim_type, first: int, n: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_infty(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_neginfty(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_zero(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

isa_aff(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

mul(self, qp2: QPolynomial) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

nan_on_domain = <nanobind.nb_func object>
neg(self) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

neginfty_on_domain = <nanobind.nb_func object>
one_on_domain = <nanobind.nb_func object>
plain_is_equal(self, qp2: QPolynomial) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

pow(self, power: int) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

project_domain_on_params(self) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

sgn(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, qp2: QPolynomial) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_list(self) QPolynomialList

Warning

This function is not part of the officially public isl API. Use at your own risk.

val_on_domain = <nanobind.nb_func object>
var_on_domain = <nanobind.nb_func object>
zero_on_domain = <nanobind.nb_func object>

PwQPolynomial

class islpy.PwQPolynomial(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

add(self, pwqp2: PwQPolynomial) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_dims(self, type: dim_type, n: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_disjoint(self, pwqp2: PwQPolynomial) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

alloc = <nanobind.nb_func object>
as_qpolynomial(self) QPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

bound(self, type: fold) tuple[PwQPolynomialFold, bool]

Warning

This function is not part of the officially public isl API. Use at your own risk.

coalesce(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

copy(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) Set
domain_reverse(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_dims(self, type: dim_type, first: int, n: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

eval(self, pnt: Point) Val
eval_with_dict(value_dict: Mapping[str, int | Val]) int

Evaluates self for the parameters specified by value_dict, which maps parameter names to their values.

every_piece(self, test: Callable[[Set, QPolynomial], bool]) bool
Parameters:

test – callback(set, qp)

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

fix_val(self, type: dim_type, n: int, v: Val | int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_lifted_piece(self, fn: Callable[[Set, QPolynomial], None]) None
Parameters:

fn – callback(set, qp)

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_piece(self, fn: Callable[[Set, QPolynomial], None]) None
Parameters:

fn – callback(set, qp)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_pw_aff = <nanobind.nb_func object>
from_qpolynomial = <nanobind.nb_func object>
from_range(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_aggregate_domain() Set
Returns:

a Set that is the union of the domains of all pieces

get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_pieces() list[tuple[Set, QPolynomial]]
Returns:

list of (Set, QPolynomial)

get_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: Set | BasicSet) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

gist_params(self, context: Set | BasicSet) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

has_equal_space(self, pwqp2: PwQPolynomial) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

insert_dims(self, type: dim_type, first: int, n: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain(self, set: Set | BasicSet) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_domain(self, set: Set | BasicSet) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_range(self, set: Set | BasicSet) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_params(self, set: Set | BasicSet) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_dims(self, type: dim_type, first: int, n: int) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_param_id(self, id: Id) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_zero(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

isa_qpolynomial(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

max(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

min(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

mul(self, pwqp2: PwQPolynomial) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

n_piece(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

neg(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, pwqp2: PwQPolynomial) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

pow(self, exponent: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

project_domain_on_params(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
reset_domain_space(self, space: Space) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
split_dims(self, type: dim_type, first: int, n: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

split_periods(self, max_periods: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

sub(self, pwqp2: PwQPolynomial) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain(self, set: Set | BasicSet) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_list(self) PwQPolynomialList

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_polynomial(self, sign: int) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_union_pw_qpolynomial(self) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

zero = <nanobind.nb_func object>

UnionPwQPolynomial

class islpy.UnionPwQPolynomial(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

add(self, upwqp2: UnionPwQPolynomial) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_pw_qpolynomial(self, pwqp: PwQPolynomial) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

bound(self, type: fold) tuple[UnionPwQPolynomialFold, bool]

Warning

This function is not part of the officially public isl API. Use at your own risk.

coalesce(self) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

copy(self) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) UnionSet
domain_reverse(self) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_dims(self, type: dim_type, first: int, n: int) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

eval(self, pnt: Point) Val
every_pw_qpolynomial(self, test: Callable[[PwQPolynomial], bool]) bool
Parameters:

test – callback(pwqp)

Warning

This function is not part of the officially public isl API. Use at your own risk.

extract_pw_qpolynomial(self, space: Space) PwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_pw_qpolynomial(self, fn: Callable[[PwQPolynomial], None]) None
Parameters:

fn – callback(pwqp)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_pw_qpolynomial = <nanobind.nb_func object>
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_pw_qpolynomial_list(self) PwQPolynomialList

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: UnionSet | BasicSet | Set) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

gist_params(self, context: Set | BasicSet) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_space(self, space: Space) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_domain(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_range(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_params(self, set: Set | BasicSet) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

mul(self, upwqp2: UnionPwQPolynomial) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

n_pw_qpolynomial(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

neg(self) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, upwqp2: UnionPwQPolynomial) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
reset_user(self) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
sub(self, upwqp2: UnionPwQPolynomial) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_space(self, space: Space) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_polynomial(self, sign: int) UnionPwQPolynomial

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_str(self) str

Warning

This function is not part of the officially public isl API. Use at your own risk.

zero = <nanobind.nb_func object>
zero_ctx = <nanobind.nb_func object>
zero_space = <nanobind.nb_func object>

QPolynomialFold

class islpy.QPolynomialFold
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

alloc = <nanobind.nb_func object>
copy(self) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

empty = <nanobind.nb_func object>
eval(self, pnt: Point) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

fold(self, fold2: QPolynomialFold) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_qpolynomial(self, fn: Callable[[QPolynomial], None]) None
Parameters:

fn – callback(qp)

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_type(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: Set | BasicSet) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

gist_params(self, context: Set | BasicSet) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_empty(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, fold2: QPolynomialFold) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space

PwQPolynomial

class islpy.PwQPolynomialFold(*args, **kwargs)
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__len__(self) int

__len__(self) -> int

Warning

This function is not part of the officially public isl API. Use at your own risk.

__ne__(value, /)

Return self!=value.

add(self, pwf2: PwQPolynomialFold) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

add_disjoint(self, pwf2: PwQPolynomialFold) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

alloc = <nanobind.nb_func object>
as_qpolynomial_fold(self) QPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

bound(self) tuple[PwQPolynomialFold, bool]

Warning

This function is not part of the officially public isl API. Use at your own risk.

coalesce(self) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

copy(self) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) Set

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_dims(self, type: dim_type, first: int, n: int) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

dump(self) None

Warning

This function is not part of the officially public isl API. Use at your own risk.

eval(self, pnt: Point) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

every_piece(self, test: Callable[[Set, QPolynomialFold], bool]) bool
Parameters:

test – callback(set, fold)

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

fix_val(self, type: dim_type, n: int, v: Val | int) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

fold(self, pwf2: PwQPolynomialFold) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_lifted_piece(self, fn: Callable[[Set, QPolynomialFold], None]) None
Parameters:

fn – callback(set, fold)

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_piece(self, fn: Callable[[Set, QPolynomialFold], None]) None
Parameters:

fn – callback(set, fold)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_pw_qpolynomial = <nanobind.nb_func object>
from_qpolynomial_fold = <nanobind.nb_func object>
from_range(self) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_domain_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_type(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: Set | BasicSet) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

gist_params(self, context: Set | BasicSet) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

has_equal_space(self, pwf2: PwQPolynomialFold) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain(self, set: Set | BasicSet) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_domain(self, set: Set | BasicSet) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_range(self, set: Set | BasicSet) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_params(self, set: Set | BasicSet) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_param_id(self, id: Id) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

is_zero(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

isa_qpolynomial_fold(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

max(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

min(self) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

move_dims(self, dst_type: dim_type, dst_pos: int, src_type: dim_type, src_pos: int, n: int) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

n_piece(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, pwf2: PwQPolynomialFold) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

project_domain_on_params(self) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

read_from_str = <nanobind.nb_func object>
reset_space(self, space: Space) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
subtract_domain(self, set: Set | BasicSet) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_list(self) PwQPolynomialFoldList

Warning

This function is not part of the officially public isl API. Use at your own risk.

to_union_pw_qpolynomial_fold(self) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

zero = <nanobind.nb_func object>

UnionPwQPolynomialFold

class islpy.UnionPwQPolynomialFold
__eq__(_other: object) bool

Return self==value.

__hash__()

Return hash(self).

__ne__(value, /)

Return self!=value.

add_union_pw_qpolynomial(self, upwqp: UnionPwQPolynomial) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

align_params(self, model: Space) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

coalesce(self) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

copy(self) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

dim(self, type: dim_type) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

domain(self) UnionSet

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_dims(self, type: dim_type, first: int, n: int) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

drop_unused_params(self) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

eval(self, pnt: Point) Val

Warning

This function is not part of the officially public isl API. Use at your own risk.

every_pw_qpolynomial_fold(self, test: Callable[[PwQPolynomialFold], bool]) bool
Parameters:

test – callback(pwf)

Warning

This function is not part of the officially public isl API. Use at your own risk.

extract_pw_qpolynomial_fold(self, space: Space) PwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

find_dim_by_name(self, type: dim_type, name: str) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

fold(self, upwf2: UnionPwQPolynomialFold) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

fold_pw_qpolynomial_fold(self, pwqp: PwQPolynomialFold) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

foreach_pw_qpolynomial_fold(self, fn: Callable[[PwQPolynomialFold], None]) None
Parameters:

fn – callback(pwf)

Warning

This function is not part of the officially public isl API. Use at your own risk.

from_pw_qpolynomial_fold = <nanobind.nb_func object>
get_ctx(self) Context

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_id_dict(dimtype: dim_type | None = None) Mapping[Id, tuple[dim_type, int]]

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_pw_qpolynomial_fold_list(self) PwQPolynomialFoldList

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_space(self) Space

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_type(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

get_var_dict(dimtype: dim_type | None = None) Mapping[str, tuple[dim_type, int]]

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: dim_type) Sequence[str | None]

Return a list of Id instances for dim_type dimtype.

get_var_names(dimtype: dim_type) Sequence[str | None]

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

get_var_names_not_none(dimtype: dim_type) Sequence[str]

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

Raise ValueError if any of the names is None.

Added in version 2025.2.5.

gist(self, context: UnionSet | BasicSet | Set) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

gist_params(self, context: Set | BasicSet) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_space(self, space: Space) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_domain(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_domain_wrapped_range(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

intersect_params(self, set: Set | BasicSet) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

involves_nan(self) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

n_pw_qpolynomial_fold(self) int

Warning

This function is not part of the officially public isl API. Use at your own risk.

plain_is_equal(self, upwf2: UnionPwQPolynomialFold) bool

Warning

This function is not part of the officially public isl API. Use at your own risk.

reset_user(self) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_down_val(self, v: Val | int) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

scale_val(self, v: Val | int) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

set_dim_name(self, type: dim_type, pos: int, s: str) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

property space
subtract_domain(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_space(self, space: Space) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

subtract_domain_union_set(self, uset: UnionSet | BasicSet | Set) UnionPwQPolynomialFold

Warning

This function is not part of the officially public isl API. Use at your own risk.

zero = <nanobind.nb_func object>
zero_ctx = <nanobind.nb_func object>
zero_space = <nanobind.nb_func object>