AutoVerus將40小時的證明編寫變成3次LLM呼叫。訣竅在於知道何時放棄。
AutoVerus利用LLM智慧體網路為Rust程式碼產生Verus正確性證明,透過由SMT求解器回饋驅動的生成-修復-消除迴圈,自動化超過90%的證明義務。
形式化驗證中最困難的部分從來不是驗證器本身,而是編寫證明。 給一位資深Rust工程師Verus——微軟研究院開發的基於SMT的驗證器——他可以在一個下午內為函式新增前置條件和後置條件註解。然後驗證器會以機械確定性告訴他,該函式是否對所有可能的輸入滿足這些契約。這部分令人滿意。…