Automatically generated code is gaining traction recently owing to prevalence of Large Language Models (LLMs). Further, the AlphaProof initiative has demonstrated the possibility of using AI for general mathematical reasoning. Reasoning about computer programs (software) can be accomplished via such general mathematical reasoning, however, it tends to be more structured. The structure of the program can be used to structure the proof as well as its intermediate lemmas.
In this work, we present a first LLM agent for conducting program verification. Unlike past works which rely on extensive training of LLMs on proof examples, our agent learns on-the-fly and improves the proof via an iterative refinement loop. The iterative improvement of the proof is achieved by the proof agent communicating with Rocq (formerly Coq) theorem prover to get additional context. The final result of the iteration is a proof derivation checked by the Rocq theorem prover. In this way, our proof construction involves autonomous collaboration between the proof agent and the theorem prover. This autonomy facilitates the search for proofs and decision-making in deciding on the structure of the proof tree.
Experimental evaluation on SV-COMP benchmarks, as well as on Linux kernel modules, shows promising efficacy in achieving agentic program verification. As automation in code generation becomes more widespread, we posit that our proof agent can be potentially integrated with AI coding agents to achieve a generate-and-validate loop, thereby moving closer to the vision of trusted automatic programming.
Thu 9 JulDisplayed time zone: Eastern Time (US & Canada) change
14:00 - 15:30 | Verification 2Tool Demonstrations / Ideas, Visions and Reflections / Research Papers at MB 3.435 Chair(s): Shiva Nejati University of Ottawa | ||
14:00 20mTalk | Agentic Verification of Software Systems Research Papers Haoxin Tu National University of Singapore, Huan Zhao National University of Singapore, Yahui Song Standard Chartered Bank, Mehtab Zafar National University of Singapore, Ruijie Meng CISPA Helmholtz Center for Information Security, Abhik Roychoudhury National University of Singapore Pre-print | ||
14:20 20mTalk | DiverFPS: Generating Diverse Solutions for Floating-Point SMT Formulas Research Papers Shuangyu Lyu Beihang University, Chuan Luo Beihang University, Ruizhi Shi Beihang University, Zhuo Su Beihang University, Chunming Hu Beihang University | ||
14:40 10mTalk | The Watermark Paradox: How Provenance Verification Paves the Road to Camouflaged Backdoors Ideas, Visions and Reflections Haoyi Zhang Xi’an Jiaotong-Liverpool University, Huaijin Ran Xi’an Jiaotong-Liverpool University, Kisub Kim DGIST, Xunzhu Tang University of Luxembourg DOI | ||
14:50 10mTalk | HarnessForge: Automated Extraction of Verification Tasks from Industry-Scale Software Projects Tool Demonstrations Dirk Beyer LMU Munich, Po-Chun Chien LMU Munich, Bo-Yuan Huang Intel, USA, Nian-Ze Lee National Taiwan University, Taiwan, Thomas Lemberger LMU Munich Pre-print Media Attached | ||
15:00 10mTalk | PyMOP: A Runtime Verification Tool for Python Tool Demonstrations Zhuohang Shen Cornell University, Mohammed S. Yaseen Independent Researcher, Kevin Guan Cornell University, Denini Silva Federal University of Pernambuco, Marcelo d'Amorim North Carolina State University, Owolabi Legunsen Cornell University | ||
15:10 20mTalk | Property Refinement in Linear Temporal Logic: Formal Semantics and Algorithms for Software Verification Research Papers Luca Brodo Hochschule Hamm-Lippstadt, Giuseppe Scalora Hamm-Lippstadt University of Applied Sciences, Stefan Henkler Hochschule Hamm-Lippstadt File Attached | ||