CPU・
Bend 2 is here!
— Taelin (@VictorTaelin) September 17, 2026
It is a new programming language that blocks AI mistakes via *proof checking* - the same technique big AI labs used to solve open math problems, like Navier-Stokes.
It is also very fast, and runs on GPUs.
Watch the video. Link in the comments. https://t. pic.co/ StgYdcILWN twitter. com/ ux1dmBVopA
開発者が条件を定め、AIが実装と証明を書く
Taelin氏は、人がコードを書いたり読んだりしなくなる時代にも、AIへ意図を正確に伝える言語は必要になると考えている。Bendは、定理証明支援系Leanのような証明機能をアプリケーション開発に取り入れている。自然言語でAIに指示してコードを作らせる
Bendでは、この条件をlaw
言語ガイドには、law add_がルール、後半のdef add_が証明に当たる。
Natは自然数の型、0nは自然数の0を表している。証明では、xが0の場合と、1n+ppに1を足した数)pに対する証明を利用し、すべての自然数でルールが成立することを示している。
import Base
law add_zero:
for x: Nat
{Nat.add(x, 0n) == x : Nat}
def add_zero(x):
match x:
case 0n:
{==}
case 1n+p:
%add_zero(p) : {1n+Nat.add(p, 0n) == 1n+_ : Nat}
{==}
アプリ開発では、こうしたルールと証明をファイルに分けて管理する。同ガイドが示す運用では、開発者がプログラムに満たしてほしい条件をLAWS.に記述し、AIにはこのファイルを変更させない。AIは実装コードを書き、そのコードが条件を満たすことを示す証明をPROOF.に記述する。bend PROOF.を実行すると、Bendが証明の正しさを検査する。未証明のルールが残っている場合や証明が成立しない場合は、検査に失敗する。
公式サイトは、証明の検査が速く、AIエージェントがコードを変更するたびに証明を確認できる点も利点に挙げている。
その活用例として、同サイトでは、AIがコードを変更しても、あらかじめ定めた条件が保たれるかを確かめるデモを紹介している。このデモでは、
ただし、検証の対象は記述したルールに限られ、アプリに必要な条件が漏れなく記述されていることまで保証するものではない。
GPU並列実行を継承し、初代の実行方式を変更
Taelin氏はBendを、Cのような速度、CUDAのような並列性、Pythonのような書き味を持つ言語と説明している。GPU上でも、関数とその周囲の値をまとめて扱うクロージャーや、動的なメモリ確保を利用できる。こうした高級言語の機能に対応しながら、ガベージコレクション
処理を分割して関数を並列に呼び出すよう記述すると、実行基盤が各コアに処理を割り当てる。開発者がスレッドやロック、GPU用のカーネルを直接書く必要はない。ただし、言語ガイドによると、分割した処理の所要時間が偏ると効率が落ちるため、各処理にかかる時間をおおむねそろえる必要があるという。
なお、Bend 2では、初代Bendから実行方式を変更した[1]。初代のBendプログラムは、そのままBend 2へ引き継ぐことはできないと説明している。
Taelin氏は公開に先立つ投稿で、初代に比べて実行速度が最大100倍になり、プログラムが実行時に扱えるメモリの上限も2GBから8TBへ拡大したと説明している
実行ファイルの生成については、コンパイルに時間がかかると説明している。開発を素早く進めるには、Bendに備わるJavaScriptでの実行機能を使うよう案内している。
言語ガイドには、実行ファイルにコンパイルする方法と、JavaScriptで実行する方法が載っている。たとえば、プログラムをhello.
# 実行ファイル「hello」を生成する bend hello.bend -o hello # 生成した実行ファイルを起動する ./hello # ソースコードを検査し、JavaScriptの実行基盤で実行する bend hello.bend # JavaScriptファイルとして出力する場合 bend hello.bend -o hello.js
ただし、JavaScriptでの実行は単一コアで動作し、CPU・
公開初期の制約と、証明を支える実装の課題
言語と実装には、現時点でいくつかの制約がある。数値型は自然数のNat、32ビット符号なし整数のU32、32ビット浮動小数点数のF32に限られ、64ビット整数や64ビット浮動小数点数には対応していない。F32で浮動小数点演算はできるが、その演算が指定した条件を満たすことをBendの証明機能で確かめることはできないとしている。
また、Bendは証明の整合性を保つため、再帰が必ず終了することを確かめる停止性の検査も行っている。ただし、@unsafeでこの検査を無効にした関数は、証明の保証範囲から外れる。
検証を支える実装自体も開発途上にある。Taelin氏は、証明を検査する中核部分
Bendのソースコードは、Apache License 2.
このほか、Taelin氏はBend本体とは別に、証明に特化した有償のAIエージェント