Inductive Deductive Synthesis: Enabling AI to
Generate Formally Verified Systems
https://arxiv.org/pdf/2605.23109
This paper is pretty cool.
They more-or-less use a proof checker (Rocq, a successor to Coq) as a tool in their agent loop during implementation, instead of turning to verification only at the end. The proof-checker generates structured output clarifying bugs in each stage of the implemenation (rather like a compiler in an ordinary coding assistant), which gets fed back into the prompt for the next stage of the agent-loop.
They use an analogy to chain-of-thought, except the intermediate states are formally verified, with “holes/need to fill this gap” output from the proof assistant rather than just plausible-sounding text inserted into the prompt for the next pass.
One still has to generate a Rocq spec as input — abstract data types, operation signatures, and axioms that specify the behavior of those operations (post-conditions, basically), but then the system produces a verified implementation prototype in Ocaml.
They are looking at using Verus, instead of Rocq as the proof assistant back end, which would produce Rust instead of Ocaml.
#formalverification
#distributedsystems
#rocq #ai #codeassistant





