Reference: Set-Like Objects¶
Constraint¶
- class namedisl.Constraint(_obj: IslObjectT_co, space: Space, _isl_names_ok: bool = False)[source]¶
- static equality_from_aff(aff: Aff) Constraint[source]¶
- static inequality_from_aff(aff: Aff) Constraint[source]¶
- is_equality¶
- namedisl.make_constraint(obj: Constraint) Constraint[source]¶
Quasiconvex set¶
- class namedisl.BasicSet(_obj: IslObjectT_co, space: Space, _isl_names_ok: bool = False)[source]¶
- add_constraint(cns: Constraint, /) BasicSet[source]¶
- var_affs¶
Returns a lazily-evaluated mapping from dimension names (or zero) to
PwAffs.Note
Lazy evaluation means you do not pay for the creation of unused dimensions.
- eliminate(names: Collection[str], *, cache: Cache | None = None) Self[source]¶
Keeps the dimensions, but eliminates constraints.
- project_out(names: str | Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- project_out_except(names_to_keep: Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- __eq__(other: object) bool[source]¶
This is intended to be cheap and strict, suitable mainly for hashing. Some subclasses (e.g.
namedisl.Set) may provide a different, ‘mathematically exact’ notion of equality as a different method that is more expensive to check for.
General set¶
- class namedisl.Set(_obj: IslObjectT_co, space: Space, _isl_names_ok: bool = False)[source]¶
-
- var_pw_affs¶
Returns a lazily-evaluated mapping from dimension names (or zero) to
PwAffs.Note
Lazy evaluation means you do not pay for the creation of unused dimensions.
- as_basic() BasicSet[source]¶
Will only succeed if self consists of a single piece. Try
coalesce()if not.
- as_pw_multi_aff() PwMultiAff[source]¶
- eliminate(names: Collection[str], *, cache: Cache | None = None) Self[source]¶
Keeps the dimensions, but eliminates constraints.
- project_out(names: str | Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- project_out_except(names_to_keep: Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- __eq__(other: object) bool[source]¶
This is intended to be cheap and strict, suitable mainly for hashing. Some subclasses (e.g.
namedisl.Set) may provide a different, ‘mathematically exact’ notion of equality as a different method that is more expensive to check for.
Quasiconvex map¶
- class namedisl.BasicMap(_obj: IslObjectT_co, space: Space, _isl_names_ok: bool = False)[source]¶
-
- active_dim_types: ClassVar[frozenset[DimType]] = frozenset({DimType.param, DimType.in_, DimType.out})¶
- eliminate(names: Collection[str], *, cache: Cache | None = None) Self[source]¶
Keeps the dimensions, but eliminates constraints.
- project_out(names: str | Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- project_out_except(names_to_keep: Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- __eq__(other: object) bool[source]¶
This is intended to be cheap and strict, suitable mainly for hashing. Some subclasses (e.g.
namedisl.Set) may provide a different, ‘mathematically exact’ notion of equality as a different method that is more expensive to check for.
General map¶
- class namedisl.Map(_obj: IslObjectT_co, space: Space, _isl_names_ok: bool = False)[source]¶
-
- as_basic() BasicMap[source]¶
Will only succeed if self consists of a single piece. Try
coalesce()if not.
- domain_var_pw_affs¶
Returns a lazily-evaluated mapping from dimension names (or zero) to
PwAffs for the domain variables of selfNote
Lazy evaluation means you do not pay for the creation of unused dimensions.
- range_var_pw_affs¶
Returns a lazily-evaluated mapping from dimension names (or zero) to
PwAffs for the domain variables of selfNote
Lazy evaluation means you do not pay for the creation of unused dimensions.
- eliminate(names: Collection[str], *, cache: Cache | None = None) Self[source]¶
Keeps the dimensions, but eliminates constraints.
- project_out(names: str | Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- project_out_except(names_to_keep: Collection[str], *, cache: Cache | None = None) Self[source]¶
Eliminates the dimensions and constraints.
- __eq__(other: object) bool[source]¶
This is intended to be cheap and strict, suitable mainly for hashing. Some subclasses (e.g.
namedisl.Set) may provide a different, ‘mathematically exact’ notion of equality as a different method that is more expensive to check for.
- as_pw_multi_aff() PwMultiAff[source]¶