Anthropic’s Frontier Red Team bersama rakan formal-methods, Theorem, melaporkan bahawa Claude menghasilkan bukti yang disemak mesin untuk 239 titik masuk ujian fuzz merentas 123 pustaka sumber terbuka. Bukti itu meliputi sifat khusus berkaitan ranap dan keselamatan memori bagi program RISC-V yang telah dikompil. Ia terpakai dalam keadaan yang ditetapkan — bukan bukti bahawa setiap pustaka bebas pepijat dalam semua keadaan.
9
5
Skalanya menarik perhatian: pasukan itu berkata kerja tersebut mengambil masa beberapa minggu dan menghasilkan kira-kira 180 juta baris kod bukti Rocq. Kepentingan lebih luasnya ialah kemungkinan menggunakan bantuan AI untuk menerapkan pengesahan formal kepada lebih banyak perisian sebenar, sambil memastikan dakwaan kekal terikat pada perkara yang benar-benar dinyatakan dan diperiksa.
3
13
Apakah yang dibuktikan?
Menurut Anthropic, bukti Claude menunjukkan bahawa program yang diliputi akan tamat secara normal tanpa ralat keselamatan memori atau kegagalan pernyataan (assertion), bagi setiap input di bawah 64 MB, merentasi respons sistem pengendalian Linux dan susun atur memori yang dimodelkan. Kesimpulan ini tertakluk pada andaian yang dinyatakan. Sasaran buktinya ialah artifak RISC-V yang telah dikompil — bukannya jaminan abstrak untuk setiap versi atau cara penggunaan pustaka tersebut.
9
12
Aliran kerja itu menggunakan semula titik masuk sedia ada daripada Google OSS-Fuzz sebagai spesifikasi formal. OSS-Fuzz ialah projek yang menjalankan ujian fuzz pada perisian sumber terbuka: ujian ini mencuba banyak input untuk mencari masalah. Dalam pendekatan baharu ini, Claude menghasilkan bukti tentang tingkah laku binari yang dinyatakan merentasi keseluruhan julat input yang diliputi teorem, bukan sekadar menguji banyak kes.
3
13
Anthropic menyifatkan usaha ini sebagai percubaan berskala besar pertama menggunakan AI untuk mengesahkan perisian produksi secara formal pada peringkat kod mesin. Itu ialah penilaian pasukan tentang kebaharuan projek ini, bukan kesimpulan sejarah yang disahkan secara bebas.
7
13
Mengapa penyemak Rocq penting?
Claude menghasilkan bukti, manakala kernel bukti Rocq menyemaknya. Ini bermakna pembangun tidak perlu mempercayai penaakulan Claude atau memeriksa setiap baris secara manual untuk memastikan bukti itu disemak secara mekanikal. Namun, semakan mesin tidak menghapuskan semua andaian: teorem mesti menyatakan sifat yang benar-benar penting kepada pembangun, dan model formal serta penyemak bukti itu sendiri tetap menjadi sebahagian daripada asas yang perlu dipercayai.
9
5
Anthropic dan laporan lain menganggarkan hasilnya sekitar 180 juta baris bukti Rocq, atau kira-kira 600,000 baris bagi setiap binari secara purata. Jumlah besar itu menggambarkan skala usaha berkenaan; bilangan baris semata-mata tidak menunjukkan sejauh mana sesuatu sifat itu terpakai atau sama ada ia memenuhi keperluan produksi projek.
3
12
Apa yang mungkin terlepas daripada ujian — dan apa yang ditemui
Ujian fuzz mencuba banyak input, tetapi dengan sendirinya tidak membuktikan tingkah laku bagi setiap input dalam sesuatu julat yang ditetapkan. Laporan tentang projek ini menyatakan bahawa Claude menemui dan membaiki ratusan pepijat, termasuk masalah yang terlepas daripada trilion percubaan fuzzing. Angka itu ialah dakwaan yang dilaporkan tentang usaha ini, bukan ukuran bebas tentang kekerapan pengesahan formal mengatasi ujian dalam projek lain.
2
11
Kesimpulan praktikalnya bukanlah supaya ujian dihentikan. Sebaliknya, bukti formal boleh menambah jenis kepastian yang berbeza: bagi sifat dan skop yang dinyatakan, ia boleh membuktikan tingkah laku untuk semua input yang menepati spesifikasi, bukan hanya kes yang sempat diuji.
9
2
Mengapa “disahkan” tidak bermaksud “bebas pepijat”
Jaminan ini terpakai kepada titik masuk tertentu dan artifak yang telah dikompil secara khusus. Ia tidak secara automatik meliputi setiap fungsi pustaka, konfigurasi binaan, seni bina atau cara pustaka itu digunakan.
9
5
Syarat yang dilaporkan juga penting. Menurut beberapa laporan, bukti itu terpakai pada binari RISC-V statik dan satu bebenang, yang berjalan dalam persekitaran Linux dimodelkan dengan had memori tetap. Kebanyakan pengguna menggunakan binaan untuk seni bina atau konfigurasi lain, jadi hasil ini tidak wajar dianggap sebagai jaminan bagi penggunaan tersebut.
12
27
34
Akhir sekali, bukti hanya mengesahkan teorem yang ditulis — bukan setiap sifat yang mungkin dikehendaki pembangun. Pepijat masih boleh wujud di luar skop bukti, atau dalam model formal dan asas penyemakan bukti yang menjadi sandaran keputusan itu.
5
31
Apa yang boleh diambil oleh pembangun?
Sumbangan utama projek ini ialah bukti bahawa bantuan AI mungkin menjadikan pengesahan formal pada peringkat kod mesin lebih praktikal untuk lebih banyak perisian dunia sebenar, berbanding pendekatan yang memerlukan usaha pakar yang besar. Namun, projek ini tidak memberikan anggaran kos yang boleh diguna pakai secara menyeluruh atau jaminan bahawa kaedah tersebut akan berjaya pada mana-mana pangkalan kod.
7
13
Sebahagian artifak bukti telah diterbitkan untuk umum. Satu laporan menyatakan bahawa keluaran itu merangkumi 25 pustaka dan 60 titik masuk, bukannya keseluruhan projek yang dilaporkan. Theorem turut mengumumkan OSS Verify, sebuah program untuk penyelenggara projek sumber terbuka.
32
16
38
Bagi pembangun, langkah berguna seterusnya ialah menganggap setiap bukti sebagai jaminan dengan skop tertentu: semak titik masuk, artifak yang dikompil, andaian dan sifat tepat yang dibuktikan sebelum bergantung padanya. Hasil ini menjadikan pengesahan formal berbantukan model bahasa besar (LLM) wajar dinilai bersama ujian — bukan alasan untuk berhenti menguji atau menganggap perisian bebas pepijat.
9
5