Biblioteca de conjuntos de enteros


isl ( biblioteca de conjuntos de enteros ) es una biblioteca de C portátil para manipular conjuntos y relaciones de puntos enteros delimitados por restricciones lineales . [2]

También incluye un solucionador de ILP basado en reducción de base generalizada , cierres transitivos en mapas (que pueden codificar gráficos infinitos ), análisis de dependencia y límites en polinomios escalonados por partes .

Muchas técnicas de análisis de programas se basan en manipulaciones de conjuntos enteros. Los enteros normalmente representan iteraciones de un nido de bucles o elementos de una matriz . isl usa programación paramétrica de enteros para obtener una representación explícita en términos de divisiones de enteros.

Se utiliza como biblioteca poliédrica backend en el marco GCC Graphite [4] y en el marco LLVM Polly [5] para optimizaciones de bucle .