Автоматизация доказательств в Lean с помощью LLM: подсказки по тактикам, поиск доказательств и подбор лемм.
bendlang/bend
Язык программирования, который использует законы и доказательства, чтобы проверять корректность кода, написанного ИИ, и компилирует его в быстрый параллельный код для CPU и GPU.
- Звёзды
- 24,879
- Форки
- 797
- Открытые issues
- 124
- Последний коммит
- 8 часов назад
Что это?
Bend — язык программирования, призванный упростить проверку кода, сгенерированного ИИ. Разработчики записывают законы в файл LAWS.bend, указывая правила, которые программа не должна нарушать. При каждом изменении кода компилятор требует машинно проверяемое доказательство того, что эти законы соблюдаются. Синтаксис похож на Python, а система типов — зависимая.
Bend также ориентирован на производительность. Он компилирует код в C, Metal, CUDA и JavaScript, а также автоматически распараллеливает алгоритмы «разделяй и властвуй» по ядрам CPU или потокам GPU — без явного управления потоками, блокировок и написания кернелов. В проект входит проверяющий доказательства инструмент, который должен обрабатывать файлы с теоремами гораздо быстрее существующих систем автоматизированного доказательства.
Язык пока молод, и это отмечено в документации: Bend 2 несовместим с Bend 1 и HVM, вывода типов нет, отладчика нет, а компилятор ещё не прошёл полный аудит. Установка выполняется одним shell-скриптом. Проект предназначен для Linux и macOS, а в Windows работает только через WSL.
Ключевые возможности
- 01Законы в LAWS.bend задают правила, которые изменения кода обязаны сохранять; соблюдение обеспечивается доказательствами.
- 02Автоматическое распараллеливание алгоритмов «разделяй и властвуй» по ядрам CPU и GPU.
- 03Компиляция в C, Metal, CUDA и JavaScript.
- 04Зависимая система типов и синтаксис, похожий на Python.
- 05Встроенный проверяющий доказательства инструмент с ядром, формализованным в Lean.
- 06Руководство доступно по команде bend guide.
Сценарии использования
- Серверные приложения, в которых ИИ-агенты редактируют код, а инварианты нельзя нарушать.
- Параллельные вычисления с числами или алгоритмы «разделяй и властвуй» на GPU без написания CUDA-кернелов.
- Более быстрая проверка файлов с математическими доказательствами по сравнению с традиционными системами автоматизированного доказательства.
- Эксперименты с программированием на зависимых типах и проверкой кода, сгенерированного ИИ.
Быстрый старт
- 1
Запустите официальный скрипт установки из README
- 2
Попросите ИИ-агента использовать Bend, добавив инструкции из AGENTS.md в README
- 3
Перед коммитом выполните проверку доказательств
bend PROOF.bend
Что важно знать
- Bend — молодой язык, и в компиляторе есть известные ошибки, поэтому возможны сбои.
- Bend лучше всего работает в Linux или macOS; Windows поддерживается только через WSL.
- Для компиляции в нативные бинарные файлы требуется clang 14 или новее, а для функций GPU нужны более новые инструменты.
- Bend 2 — новый язык; программы для Bend 1 и HVM не переносятся.
В подборках
Темы
Частые вопросы
- Что такое bend?
- Язык программирования, который использует законы и доказательства, чтобы проверять корректность кода, написанного ИИ, и компилирует его в быстрый параллельный код для CPU и GPU. Bend — язык программирования, призванный упростить проверку кода, сгенерированного ИИ. Разработчики записывают законы в файл LAWS.bend, указывая правила, которые программа не должна нарушать. При каждом изменении кода компилятор требует машинно проверяемое доказательство того, что эти законы соблюдаются. Синтаксис похож на Python, а система типов — зависимая.
- bend можно использовать бесплатно? Какая у него лицензия?
- bend распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- bend всё ещё поддерживается?
- Активно поддерживается. Последний коммит в bend — 7 нояб. 2026 г..
- Для чего можно использовать bend?
- Серверные приложения, в которых ИИ-агенты редактируют код, а инварианты нельзя нарушать. Параллельные вычисления с числами или алгоритмы «разделяй и властвуй» на GPU без написания CUDA-кернелов. Более быстрая проверка файлов с математическими доказательствами по сравнению с традиционными системами автоматизированного доказательства. Эксперименты с программированием на зависимых типах и проверкой кода, сгенерированного ИИ.
- Как установить bend?
- Запустите официальный скрипт установки из README Попросите ИИ-агента использовать Bend, добавив инструкции из AGENTS.md в README Перед коммитом выполните проверку доказательств: bend PROOF.bend
- Где скачать bend?
- Исходный код и инструкции по установке — на GitHub: https://github.com/bendlang/bend
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Фреймворк для Lean 4, позволяющий описывать, запускать и формально верифицировать нейросети с проверкой форм тензоров и обучением в стиле PyTorch.
Интерпретатор и проверщик моделей TLA+ на TypeScript — замена TLC на Java, работающая в браузерах, Node и Bun.
Формализация Stacks Project на Lean 4 — открытого справочника по алгебраической геометрии; проект построен на Mathlib и содержит доказательства, проверяемые машиной.
Фреймворк для Lean 4, позволяющий формально доказывать корректность и безопасность работы с памятью в скомпилированном .NET CIL.
GPU.js преобразует простые функции JavaScript в шейдерный код, чтобы выполнять их на GPU в браузерах и Node.js, а при необходимости переключается на обычный JavaScript.