← Наука і техніка
🔬 Наука і техніка18 вересня 2026 р.

Bend: мова, що математично доводить відсутність багів у AI-коді

Нова мова програмування Bend формально верифікує згенерований ШІ код на GPU, гарантуючи відсутність цілого класу помилок ще до запуску.

Мова програмування Bend перевіряє код, який згенерував штучний інтелект, і математично доводить, що в ньому немає цілого класу помилок ще до запуску. Не тестує на прикладах — доводить. Різниця та сама, що між "ми прогнали тисячу перевірок і збоїв не було" і "збій тут неможливий за побудовою".

Bend компілюється і на CPU, і на GPU, тобто важкі перевірки можна розпаралелити на відеокарту. Це не деталь для гіків: формальна верифікація історично впиралася саме в те, що доведення властивостей великого коду займає години. Якщо частину роботи бере на себе GPU, поріг входу для реальних проєктів падає.

Чому "працює в тестах" — це не "працює"

Тест перевіряє поведінку програми на конкретних вхідних даних. Ви подали десять сценаріїв — переконалися в десяти. Одинадцятий, якого ніхто не передбачив, і є тим, через який падає банківський переказ або спрацьовує не та команда в системі керування.

Формальний доказ працює інакше. Він стверджує властивість для усіх можливих входів одразу. "Ця функція ніколи не звернеться до пам'яті за межами масиву" — не для перевірених випадків, а взагалі. Саме переповнення буфера — той heap overflow, через який на цьому ж тижні зламали внутрішні репозиторії OpenAI — це помилка, яку формальна система типів здатна відсікти на етапі компіляції.

Тепер додайте сюди генеративний ШІ. Він пише правдоподібний код швидко й упевнено, включно з правдоподібними помилками. Людина проглядає, киває, комітить. Bend змінює саму процедуру: код від ШІ не проходить компіляцію, поки не доведено його коректність за заданими правилами. Модель може помилятися скільки завгодно — до продакшену помилка не дійде.

Де це критично саме для України

Оборонне ПЗ і фінансові системи — дві сфери, де ціна одного невідсіяного багу вимірюється не грошима компанії, а життями чи блокуванням критичної інфраструктури під час атаки. У таких системах "ми не встигли протестувати цей стан" — неприйнятна відповідь.

Формальні методи тут не новина. Їх десятиліттями застосовують в авіоніці, ядерній енергетиці, залізничній автоматиці — усюди, де відмова недопустима. Нове те, що вони перестають бути привілеєм лабораторій із командою математиків. Мова, яку можна поставити й запустити на власній машині з GPU, зсуває це в бік звичайної інженерії.

Для державного сектору висновок прямий. Якщо частина коду для оборонки чи держреєстрів дедалі частіше пишеться за допомогою ШІ — а вона пишеться — то потрібен механізм, який не довіряє генератору на слово. Ручний код-рев'ю з цим об'ємом не впорається.

Як перевірити, а не повірити

Не купуйте ідею на віру — цьому й присвячений увесь підхід. Порядок дій для команди:

  • Візьміть один вузол, де помилка коштує дорого: валідація фінансової транзакції, парсинг зовнішнього формату, робота з масивами в модулі, що приймає дані ззовні.
  • Опишіть на Bend властивість, яку код зобов'язаний тримати — межі індексів, коректність результату, відсутність звернень до неініціалізованої пам'яті.
  • Дайте ШІ згенерувати реалізацію й перевірте, чи проходить вона доказ. Свідомо внесіть баг і подивіться, чи компілятор його зловить.
  • Заміряйте час верифікації на CPU і на GPU — від цієї цифри залежить, чи потягне підхід ваш реальний обсяг коду.

Тестування показує наявність помилок. Доказ показує їхню відсутність. Для коду, від якого залежить оборона й гроші, це різні професії — і Bend переносить другу з академічної статті в командний термінал.

#Bend#формальна верифікація#штучний інтелект#кібербезпека#GPU
Хочете знати першими?

Щодня — головне про Україну, спокійна аналітика та наука і техніка простою мовою.

Підписатися в Telegram →