Space는 변수들의 집합과 그 차원을 나타냄
Space는 해당 변수들의 관계와 어떤 차원에서 작동하는지를 정의함.
예를 들어, 두 입력 차원과 한 출력 차원이 있는 공간은 2 -> 1 형태를 가집니다.
이는 맵이나 세트를 정의할 때 사용되는 기본 틀입니다.
Example
2 -> 1
isl_space
세트는 다차원 정수 좌표의 집합을 나타냅니다.
예를 들어, 2차원 평면 상의 직사각형 영역을 나타내는 세트는 이러한 좌표의 집합으로 생각할 수 있습니다.
세트는 기본적으로 선형 부등식과 같은 제약 조건에 의해 정의됩니다.
a.k.a Iteration Domain
isl_basic_set
isl_set
isl_union_set
isl_union_set *domain = isl_union_set_read_from_str(
ctx, "{ S[i, j] : 0 <= i < 32 and 0 <= j < 3 }"
);
맵은 두 세트 간의 관계를 나타냄.
맵은 입력 세트에서 출력 세트로의 매핑을 나타내므로, 입력 튜플에서 출력 튜플로의 함수로 생각할 수 있음
a.k.a Relation
Example
{ [x, y] -> [x+1, y+2] : x >= 0 and y >= 0 }
isl_map
isl_basic_map
isl_union_map