Кодирование задач ограничений в SMT-LIB2 и Z3

★ 6.5 · data

encode — это скилл для Claude Code, который переводит описание задачи ограничений в корректный код SMT-LIB2 или скрипт Python API Z3. Скилл запускает encode.py с указанием проблемы и желаемого формата, самостоятельно определяет нужную теорию (LIA, LRA, QF_BV, QF_AX, QF_S, QF_UF и их комбинации), объявляет все переменные, формирует ограничения и добавляет команды check-sat / get-model. Поддерживаемые классы задач — планирование, раскраска графов, арифметические головоломки, верификационные условия, работа с битовыми векторами и массивами. После генерации кода встроенная валидация прогоняет результат через z3 -in в режиме разбора без решения и сообщает номер строки при синтаксической ошибке. Готовый артефакт передаётся в скиллы solve, prove или optimize.