{"id":21471,"library":"islpy","title":"islpy","description":"Python wrapper around the Integer Set Library (isl), providing operations on integer sets, relations, and affine constraints. Current version 2026.1, released on a rolling basis with no fixed cadence.","status":"active","version":"2026.1","language":"python","source_language":"en","source_url":"https://github.com/inducer/islpy","tags":["isl","polyhedral","integer sets","loop optimization","compiler"],"install":[{"cmd":"pip install islpy","lang":"bash","label":"Standard install"}],"dependencies":[],"imports":[{"note":"Direct import is the standard and only supported pattern.","symbol":"islpy","correct":"import islpy"}],"quickstart":{"code":"import islpy as isl\n\n# Create a basic set: all integer pairs (x, y) with x + y <= 5\ns1 = isl.BasicSet('[n] -> { [x, y] : x + y <= n }')\nprint(s1)\n\n# Create a second set\ns2 = isl.BasicSet('[n] -> { [x, y] : x >= 0 and y >= 0 }')\n\n# Intersection\nintersection = s1.intersect(s2)\nprint(intersection)\n\n# Check if non-empty\nprint(f\"Is empty? {intersection.is_empty()}\")","lang":"python","description":"Basic usage showing creation of integer sets and intersection."},"warnings":[{"fix":"Upgrade to Python 3.10 or later.","message":"Python 3.10 minimum required; islpy dropped support for Python <3.10 in version 2024.x. Attempting to install on older Python will fail.","severity":"breaking","affected_versions":">=2024.0"},{"fix":"Use islpy parsing helpers like isl.BasicSet.read_from_str or carefully double-check syntax.","message":"String-based set representation uses isl's syntax, which can be confusing. Misplacing brackets or missing dimensions leads to errors.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'2026.1':21 'affin':17 'around':4 'basi':26 'cadenc':30 'compil':37 'constraint':18 'current':19 'fix':29 'integ':6,13,33 'isl':9,31 'islpi':1 'librari':8 'loop':35 'oper':11 'optim':36 'polyhedr':32 'provid':10 'python':2 'relat':15 'releas':22 'roll':25 'set':7,14,34 'version':20 'wrapper':3","created_at":"2026-04-27T17:00:03.966663+00:00","updated_at":"2026-04-27T17:00:03.966663+00:00","problems":[{"fix":"Run: pip install islpy","cause":"islpy not installed in the current Python environment.","error":"ModuleNotFoundError: No module named 'islpy'"},{"fix":"Ensure the string follows isl syntax. For example: '{ [x] : x >= 0 }' or '[n] -> { [x] : x <= n }'.","cause":"The string representation for a set or relation is malformed.","error":"ValueError: could not create isl_basic_set: invalid input"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"2026.1","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/inducer/islpy","docs":"https://documen.tician.de/islpy","changelog":null,"pypi":"https://pypi.org/project/islpy/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-28","last_verified":"2026-06-28","next_check":"2026-07-28","install_tag":null}}