Verification skill reduces assumptions for linked list correctness proofs
Fewer Assumptions by Design: A Reusable Skill for LLM-Assisted Verus Verification
Summary
Verifying that complex computer programs work correctly can be very difficult, especially for structures like doubly linked lists, which have two-way connections and are tricky to check. The authors studied whether large language models (LLMs) can help create strong technical descriptions (specifications) for these lists without relying on unproven assumptions that might make the verification unreliable. They created a special skill for an LLM that includes expert knowledge and a way to break down the task, allowing the model to produce trustworthy specifications for doubly linked lists in the Verus verification tool. This approach helps make the program verification process less tedious and more reliable.
What this means in practice
- •For software verification engineers: Use an LLM with a specialized skill to generate reliable proofs for Rust data structures with minimal unproven assumptions.
- •For programming language tool developers: Incorporate LLM-based verification skills to improve support for complex data structures in automated verification tools.