Thematic explorer

Formal Specifications & Coding Agents

Formal specification as the bottleneck in agent-written software: who writes the spec, how its quality is measured, and what a verifier can and cannot certify.

168 papers · 9 themes

← All collections

168 papers shown

Specification foundations

What a formal specification is before any model writes one: verification-aware languages and their verifiers, contracts and proof obligations, and the pre-LLM work on inferring specifications from code and from executions. The vocabulary here is assumed by everything that follows.

Key threads
  • Verification-aware languages put pre- and postconditions, invariants and termination metrics in the source (Dafny, SPARK, Verus, Frama-C/ACSL).
  • Prove it or find a counterexample: deductive verification and model checking answer the same question with different failure modes (Event-B into Alloy, Kani, ESBMC).
  • Specification inference predates language models: strongest-postcondition abstraction, postcondition-weakened invariants, evolutionary assertion mining.
  • A verifier is part of the trusted base, and both Dafny's verifier and its compiler have had soundness bugs.
Open gaps
  • Almost none of this literature measures the cost of keeping a specification correct as the code changes.
  • The empirical study of how experts actually write proofs is a single recent paper, so the human baseline agents are compared against is thin.
  1. Strongest postcondition semantics as the formal basis for reverse engineering

    Gannod · 1995 0 cites

    Synthesis

    Uses strongest-postcondition semantics to derive formal abstractions from existing code as the basis for reverse engineering.

    Why it matters The oldest item in this map, naming the code-to-specification direction decades before it became a prompt.

  2. Model Checking Event-B by Encoding into Alloy

    Matos · 2008 1 cites arXiv

    Synthesis

    Encodes Event-B models into Alloy so a SAT-based finder can search for invariant counterexamples the prover cannot discharge.

    Why it matters The clean statement of prove-it versus find-a-counterexample, the tradeoff every agent verification loop re-encounters.

  3. Inferring Loop Invariants using Postconditions

    Furia · 2009 1 cites arXiv

    Synthesis

    Infers loop invariants by weakening the loop's postcondition, using heuristics such as uncoupling.

    Why it matters Pre-LLM statement of the idea the invariant section keeps rediscovering: an invariant is a weakened postcondition, so specification quality bounds invariant quality.

  4. Dafny: An Automatic Program Verifier for Functional Correctness

    Leino · 2010 70 cites

    Synthesis

    Introduces Dafny, an imperative language whose SMT-backed verifier checks preconditions, postconditions, loop invariants and termination as part of the build.

    Why it matters The verification-aware language most of the agent work here targets. Read it to know what 'the verifier accepted it' actually asserts.

  5. Verifying Safety Properties With the TLA+ Proof System

    Chaudhuri · 2010 0 cites arXiv

    Synthesis

    TLAPS is the proof system for TLA+, with declarative hierarchical proofs discharged through SMT solvers and proof assistants.

    Why it matters The proof half of TLA+, which the natural-language-to-TLA+ work below mostly leaves implicit.

  6. Dafny: Statically Verifying Functional Correctness

    Gauci · 2014 0 cites arXiv

    Synthesis

    A feature-by-feature tour of Dafny: pre- and postconditions, assertions, loop invariants, termination metrics, quantifiers, predicates and framing.

    Why it matters The cheapest way to pick up the specification vocabulary the LLM papers assume you already have.

  7. A Lesson on Verification of IoT Software with Frama-C

    Blanchard · 2018 1 cites

    Synthesis

    Tutorial on Frama-C value analysis, deductive verification (WP) and runtime verification (E-ACSL), worked on real Contiki operating-system modules.

    Why it matters ACSL annotations are the output target for several spec-generation papers here; this is where that annotation discipline comes from.

  8. Poster: An Algorithm and Tool to Infer Practical Postconditions

    Singleton · 2018 0 cites

    Synthesis

    Studies 2,300 methods across seven Java libraries and finds the strongest-postcondition transformer yields postconditions too unwieldy to use, motivating a different inference algorithm.

    Why it matters Empirical warning that a formally correct specification can still be worthless, which is the gap spec-quality benchmarks now try to measure.

  9. EvoSpex: An Evolutionary Algorithm for Learning Postconditions

    Molina · 2021 0 cites arXiv

    Synthesis

    Learns postcondition assertions from observed executions through an evolutionary search over candidate predicates.

    Why it matters Dynamic specification mining as it stood before language models, and the implicit baseline that LLM inference is compared against.

  10. SMLtoCoq: Automated Generation of Coq Specifications and Proof Obligations from SML Programs with Contracts

    El-Beheiry · 2021 0 cites arXiv

    Synthesis

    Automatically translates SML programs and their function contracts into Coq specifications and proof obligations.

    Why it matters Contracts-to-proof-obligations as a compilation problem; the same pipeline shape Coins later exploits to grade generated specifications.

  11. Verified VCG and Verified Compiler for Dafny

    Nezamabadi · 2025 0 cites arXiv

    Synthesis

    Builds a big-step semantics for an imperative Dafny subset plus a verified verification-condition generator and compiler, after soundness bugs were found in both existing tools.

    Why it matters The verifier is part of the trusted base. If an agent's only oracle is a checker with soundness bugs, the guarantee is smaller than it reads.

  12. What's in a Proof? Analyzing Expert Proof-Writing Processes in F* and Verus

    Jain · 2025 2 cites arXiv

    Synthesis

    Observational study of how expert developers actually build proofs in F* and Verus, and where the process stalls.

    Why it matters The human baseline for proof-oriented programming, worth having before claiming an agent replaces it.

  13. ESBMC: A Survey of Its Evolution, Integration, and Future Directions in Formal Software Verification

    Dantas · 2026 1 cites arXiv

    Synthesis

    Traces the evolution and integrations of ESBMC across two decades of bounded model checking for software.

    Why it matters Grounds the current wave in the tool lineage it plugs into; several invariant papers below use exactly this substrate.

  14. Kairos: Generating Tick-Indexed Proof Obligations for Synchronous Temporal Contracts

    Dabrowski · 2026 0 cites arXiv

    Synthesis

    Generates tick-indexed proof obligations from synchronous programs and LTL assume-guarantee contracts through the automata-theoretic reduction.

    Why it matters Concrete machinery for turning a temporal contract into something a first-order backend can actually discharge.

  15. Kani: A Model Checker for Rust

    Delmas · 2026 0 cites arXiv

    Synthesis

    Kani, an open-source bounded model checker for Rust that targets unsafe-code soundness, functional correctness and panic freedom rather than bug-finding alone.

    Why it matters Shows what a mainstream-language verifier gives you without writing proofs, which is the baseline agent-written proofs have to beat.

Writing the specification

Models producing the formal artifact itself: postconditions, contracts, ACSL and VeriFast annotations, separation-logic assertions, Alloy formulas. The recurring recipe is that the model proposes and a sound analysis or verifier constrains, and the recurring finding is that generated specifications are shallower than their pass rates suggest.

Key threads
  • Static analysis, symbolic execution and test oracles supply the grounding the model lacks (AutoSpec, AutoACSL, symbolic-execution pipelines).
  • Correctness and discriminating power are separate axes: a true but weak specification excludes nothing (nl2postcond, POSTCONDBENCH).
  • Postconditions are the easy part; preconditions and frame conditions are what let a verifier close the proof.
  • Heap and memory reasoning, not arithmetic, is where generated specifications break down (VeriFast and separation-logic studies).
  • Formal specification text is scarce, so several systems manufacture corpora or knowledge bases rather than relying on pretraining.
Open gaps
  • Specifications derived from an implementation inherit its bugs, and only a few papers (KaPilot, MutDafny) confront that directly.
  • Frame conditions are largely absent from both generation systems and their evaluations.
  1. Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?

    Endres · 2023 13 cites arXiv

    Synthesis

    Turns natural-language intent into formal postconditions and evaluates them both for soundness and for power to discriminate buggy programs.

    Why it matters Introduced the two axes everything since is graded on: is the specification correct, and does it actually exclude wrong code.

  2. Enchanting Program Specification Synthesis by Large Language Models using Static Analysis and Program Verification

    Wen · 2024 9 cites arXiv

    Synthesis

    Decomposes a program, generates specifications per sub-component with an LLM, and validates each against the program verifier (AutoSpec).

    Why it matters One of the first pipelines to make specification synthesis compositional instead of whole-function guessing.

  3. Evaluating the Ability of Large Language Models to Generate Verifiable Specifications in VeriFast

    Fan · 2024 9 cites arXiv

    Synthesis

    Measures how well LLMs write VeriFast specifications, where separation-logic auxiliary annotations dominate the actual work.

    Why it matters Separation logic is the hardest realistic target in this map, so this is the honest difficulty reading.

  4. A Tale of 1001 LoC: Potential Runtime Error-Guided Specification Synthesis for Verifying Large-Scale Programs

    Wang · 2025 2 cites arXiv

    Synthesis

    Drives specification synthesis from potential runtime errors so large programs can be verified without hand-written contracts.

    Why it matters Takes the properties to prove from what the analyzer already fears rather than from a human wish list, which is what makes it scale.

  5. Beyond Postconditions: Can Large Language Models infer Formal Contracts for Automatic Software Verification?

    Richter · 2025 2 cites arXiv

    Synthesis

    Pushes past postconditions to full contracts, including the preconditions and frame conditions automatic verification needs.

    Why it matters Postconditions alone rarely make a verifier succeed; the missing preconditions are where verification stalls.

  6. FormalSpecCpp: A Dataset of C++ Formal Specifications created using LLMs

    Chakraborty · 2025 0 cites arXiv

    Synthesis

    A dataset of C++ programs paired with LLM-created formal specifications.

    Why it matters One attempt to manufacture the training data whose absence KBSpec names.

  7. Integrating Symbolic Execution with LLMs for Automated Generation of Program Specifications

    Yang · 2025 1 cites arXiv

    Synthesis

    Pairs symbolic execution with an LLM so path constraints ground the generated program specifications.

    Why it matters Representative of the dominant recipe in this section: the model proposes, a sound analysis constrains.

  8. On the Effectiveness of Large Language Models in Writing Alloy Formulas

    Hong · 2025 9 cites arXiv

    Synthesis

    Controlled experiment on LLMs writing Alloy formulas from natural language, repairing faulty formulas, and judging equivalence.

    Why it matters Separates three abilities usually measured as one: write, repair, and check.

  9. Agentic Separation Logic Specification Synthesis

    Suresh · 2026 0 cites arXiv

    Synthesis

    An agent loop that synthesizes separation-logic specifications, iterating against verifier feedback.

    Why it matters The agentic framing applied to the least forgiving specification language here.

  10. An Empirical Study of LLM-Generated Specifications for VeriFast

    Fan · 2026 0 cites arXiv

    Synthesis

    Follow-up empirical study of LLM-generated VeriFast specifications on larger heap-manipulating code.

    Why it matters Shows where the failures concentrate once the toy functions are gone.

  11. AutoACSL: Synthesizing ACSL Specifications by Integrating LLMs with CPG-Based Static Analysis

    Zhou · 2026 0 cites arXiv

    Synthesis

    Synthesizes ACSL specifications by combining an LLM with code-property-graph static analysis (AutoACSL).

    Why it matters Static analysis used as the retrieval mechanism for what the annotation is obliged to mention.

  12. Automatic Generation of Formal Specification and Verification Annotations Using LLMs and Test Oracles

    Pascoal Faria · 2026 4 cites arXiv

    Synthesis

    Generates specification and verification annotations from code with LLMs, then cross-checks them against test oracles.

    Why it matters Tests as the cheap oracle for whether a specification is plausible, the same lever Coins formalizes with proof obligations.

  13. Beyond Basic Specifications? A Systematic Study of Logical Constructs in LLM-based Specification Generation

    Chen · 2026 0 cites arXiv

    Synthesis

    Systematically studies which logical constructs (quantification, nesting, frame conditions) LLM-generated specifications actually contain.

    Why it matters Aggregate pass rates hide that most generated specifications are shallow; this measures the shallowness directly.

  14. Evaluating LLM-Generated ACSL Annotations for Formal Verification

    Beg · 2026 2 cites arXiv

    Synthesis

    Evaluates LLM-written ACSL annotations for Frama-C deductive verification.

    Why it matters The C-side counterpart to the Dafny and Verus results, on the annotation language industrial C verification actually uses.

  15. How Powerful are LLMs in Generating Formal Program Specifications?

    Yang · 2026 0 cites arXiv

    Synthesis

    Studies at scale whether LLMs can write formal program specifications in Rocq, against curated human-written specifications for HumanEval problems.

    Why it matters The paper this explorer was built around. It puts the specification, not the code, under test.

  16. Improving Dynamic Specification Inference with LLM-Generated Counterexamples

    Balestra · 2026 0 cites arXiv

    Synthesis

    Improves dynamic specification inference by having an LLM propose counterexamples that kill candidate invariants overfitted to the observed runs.

    Why it matters Counterexamples are where models add most to classical mining: they can imagine executions the test suite never produced.

  17. KBSpec: LLM-driven Formal Specification Generation with Evolving Domain Knowledge Base

    Wang · 2026 1 cites arXiv

    Synthesis

    Builds an evolving domain knowledge base so specification generation is not capped by the scarcity of formal-language corpora (KBSpec).

    Why it matters Names the data problem underneath this whole section: there is very little formal specification text to learn from.

  18. LM2Alloy: Investigating LLM-Generated Formal Specifications for Automated Test Derivation in Production Software

    Rashid · 2026 0 cites arXiv

    Synthesis

    Generates Alloy specifications from requirements documents and from production source, then derives executable tests from them.

    Why it matters Declarative specifications used to produce tests instead of proofs, a cheaper way into real codebases.

  19. Neuro-Symbolic Generation and Validation of Memory-Aware Formal Function Specifications

    Zhang · 2026 0 cites arXiv

    Synthesis

    Neuro-symbolic generation and validation of function specifications that reason about the heap as well as about values.

    Why it matters Heap-manipulating code is where naive specification generation quietly falls apart.

  20. SpecSyn: LLM-based Synthesis and Refinement of Formal Specifications for Real-world Program Verification

    Ma · 2026 0 cites arXiv

    Synthesis

    Synthesizes and then refines formal specifications for real-world program verification with the model in the loop (SpecSyn).

    Why it matters Refinement rather than one-shot generation is what lets specifications survive contact with real code.

  21. Grounding AI Agents in Contracts: An Empirical Evaluation of Spec-Driven Test Generation

    Tufano, Michele · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract Spec-Driven Test Generation has an LLM agent first write a semi-formal specification of a code component's pre-conditions, post-conditions, and undefined behaviors, then use that specification as a scaffold to generate tests, instead of generating tests directly from code.

    Motivation Agents prompted to generate tests directly from code often fail to reason about the code's underlying contracts, missing edge cases and behavioral boundaries. Design by Contract has long formalized this reasoning for humans via pre-/post-conditions and invariants, but agents generating tests have no such explicit contract to anchor exploration, so they can hallucinate logic or generate superficial tests.

    Methodology A two-phase Spec-Driven Agent first retroactively extracts and documents a component's contract as a semi-formal (natural-language-structured, not mathematically formal) specification, then generates tests grounded in that document. It is compared against a baseline agent that generates tests directly, on 90 historical production bugs from Google's issue tracker, using a 'Greenfield Test Generation' setup. A novel Contract Coverage metric scores how completely a spec covers a bug's incorrect behavior, and a pairwise LLM-as-a-Judge (Gemini 3.1 Pro judging outputs from agents using Gemini 3 Flash) rates test suite quality.

    Results The Spec-Driven Agent reaches a 63.2% bug detection rate at k=5 runs, a statistically significant 9.8-percentage-point improvement over the baseline (p=0.0352), and a 2.5-percentage-point improvement in branch coverage (p=0.0034). The LLM judge rates its test suites superior to the baseline's in 77.8% of cases and to human-authored tests in 56.7% of cases, with gains in adherence to best practices, readability, and edge-case coverage.

Invariants and proof obligations

The oldest bottleneck in deductive verification, and the first place language models paid off. Invariant inference is guess-and-check, models are strong guessers, and most of the engineering is in ranking candidates, feeding back the right failure signal, and keeping the whole loop sound.

Key threads
  • Guess-and-check with a verifier as the judge lets an unsound generator drive a sound pipeline (Lemur states the proof rules explicitly).
  • Candidate ranking matters more than candidate quality, because checking dominates the cost.
  • Feedback shape is a design choice: verifier errors, counterexamples, or checks on the model's own natural-language reasoning.
  • Weakest-precondition reasoning connects the modern pipelines back to the classical calculus.
  • Small curated models can match large ones on this task when the training data is chosen for verifier usefulness.
Open gaps
  • Termination and ranking functions get a fraction of the attention safety invariants get.
  • Benchmarks skew numeric; memory-manipulating and interacting-loop programs are far less covered.
  1. Finding Inductive Loop Invariants using Large Language Models

    Kamath · 2023 45 cites arXiv

    Synthesis

    Prompts LLMs for inductive loop invariants and checks each candidate with a verifier, solving instances classical tools miss.

    Why it matters The result that opened this line. Invariant inference is guess-and-check, and models are unusually good guessers.

  2. Lemur: Integrating Large Language Models in Automated Program Verification

    Wu · 2023 29 cites arXiv

    Synthesis

    Formalizes LLM-plus-automated-reasoner program verification as a set of sound proof rules, so model proposals cannot make the system unsound (Lemur).

    Why it matters The soundness discipline the rest of this section depends on, stated explicitly rather than assumed.

  3. Ranking LLM-Generated Loop Invariants for Program Verification

    Chakraborty · 2023 18 cites arXiv

    Synthesis

    Trains a re-ranker over LLM-generated invariant candidates so the correct one is checked early.

    Why it matters Generation is cheap and checking is expensive, so ordering the candidates is most of the speedup.

  4. Towards General Loop Invariant Generation: A Benchmark of Programs with Memory Manipulation

    Liu · 2023 9 cites arXiv

    Synthesis

    A loop-invariant benchmark built from programs that manipulate memory rather than numbers.

    Why it matters Most invariant results are on numeric loops; this is the harder and more realistic distribution.

  5. Enhancing Automated Loop Invariant Generation for Complex Programs with Large Language Models

    Liu · 2024 4 cites arXiv

    Synthesis

    Targets invariant generation for programs whose complexity defeats template-based tools.

    Why it matters Useful for seeing which program features, not which prompts, decide success.

  6. LLM-Generated Invariants for Bounded Model Checking Without Loop Unrolling

    Pirzada · 2024 0 cites

    Synthesis

    Replaces loop unrolling in bounded model checking with a control-flow-graph node asserting an LLM-generated invariant.

    Why it matters A clean integration point, where the model supplies precisely the piece the classical algorithm lacks.

  7. Leveraging LLMs for Program Verification

    Kamath · 2024 2 cites

    Synthesis

    Extends the same guess-and-check approach from safety invariants to ranking functions for termination.

    Why it matters Termination is the half of correctness that agent papers routinely skip.

  8. A Neurosymbolic Approach to Loop Invariant Generation via Weakest Precondition Reasoning

    King · 2025 0 cites arXiv

    Synthesis

    Generates invariants by reasoning backward through weakest-precondition semantics instead of pattern-matching the loop body.

    Why it matters Ties the modern pipeline back to the calculus in the foundations section.

  9. Loop Invariant Generation: A Hybrid Framework of Reasoning optimised LLMs and SMT Solvers

    Bharti · 2025 1 cites arXiv

    Synthesis

    Couples reasoning-tuned LLMs with SMT solvers for loop invariant generation.

    Why it matters A current reading on how much reasoning training changes the guess half of guess-and-check.

  10. Quokka: Accelerating Program Verification with LLMs via Invariant Synthesis

    Wei · 2025 5 cites arXiv

    Synthesis

    Accelerates program verification by synthesizing the invariants that let the verifier discharge its goals faster (Quokka).

    Why it matters Invariant quality shows up as verifier runtime, which decides whether verification fits inside a build.

  11. ConVer: Using Contracts and Loop Invariant Synthesis for Scalable Formal Software Verification

    Pirzada · 2026 0 cites arXiv

    Synthesis

    Combines contract inference with loop invariant synthesis so verification scales past a single function (ConVer).

    Why it matters Contracts and invariants are the same problem at two granularities, and this treats them together.

  12. Guiding LLM-based Loop Invariant Synthesis via Feedback on Local Reasoning Errors

    Li · 2026 0 cites arXiv

    Synthesis

    Has the model write a step-by-step natural-language proof, formally checks that reasoning, and feeds back the local errors.

    Why it matters Feedback on the reasoning rather than on the final artifact, a different loop shape from verifier-only iteration.

  13. InvWeaver: Deductive Feedback for Invariant Synthesis in Interacting-Loop Programs

    Wu · 2026 0 cites arXiv

    Synthesis

    Uses deductive feedback to synthesize invariants for programs with interacting loops (InvWeaver).

    Why it matters Interacting loops break per-loop synthesis, which is exactly where most tools stop.

  14. Not All Invariants Are Equal: Curating Training Data to Accelerate Program Verification with SLMs

    Pinto · 2026 0 cites arXiv

    Synthesis

    Curates training data so small models learn to produce the invariants that actually help the verifier.

    Why it matters Evidence that this task does not need a frontier model when the data is chosen well.

Requirements to formal statements

Turning informal intent into a formal statement: autoformalization as it came from mathematics, and requirements-to-LTL, STL, TLA+, Event-B and Alloy as it lands in software. The hard part is not syntax, it is knowing whether the formula still means what the sentence meant.

Key threads
  • Autoformalization arrived from mathematics and was inherited wholesale by requirements work (Wu et al., then the survey literature).
  • Semantic fidelity, not parseability, is the real metric; paraphrase robustness is a cheap way to expose the difference.
  • Interactive and clarifying interfaces beat one-shot translation when the requirement is ambiguous (nl2spec, ClarifySTL).
  • Abstention through conformal prediction lets a translator decline instead of emitting an unreliable specification.
  • TLA+ has genuine industrial use, which makes the measured natural-language-to-TLA+ gap a practical gap.
Open gaps
  • Almost all evaluation uses short sentences; industrial requirement documents appear in only a handful of papers.
  • Nobody measures the cost of a wrong formalization downstream, so abstention thresholds have no principled setting.
  1. Autoformalization with Large Language Models

    Wu · 2022 60 cites arXiv

    Synthesis

    Showed that few-shot LLMs translate natural-language mathematics into formal statements at non-trivial rates.

    Why it matters The origin point for treating formalization as translation; every requirements-to-specification paper here inherits the framing.

  2. nl2spec: Interactively Translating Unstructured Natural Language to Temporal Logics with Large Language Models

    Cosler · 2023 18 cites arXiv

    Synthesis

    Interactively translates unstructured natural language into temporal logic, letting the user correct sub-translations rather than the whole formula (nl2spec).

    Why it matters Human-in-the-loop translation with a fine-grained repair unit, still the most practical interface shape for this task.

  3. Evaluating LLM-driven User-Intent Formalization for Verification-Aware Languages

    Lahiri · 2024 3 cites arXiv

    Synthesis

    Evaluates LLM-driven user-intent formalization for verification-aware languages, separating soundness of the formalized intent from its completeness.

    Why it matters The clearest statement of why intent formalization is its own evaluation problem, distinct from code correctness.

  4. A Short Survey on Formalising Software Requirements using Large Language Models

    Beg · 2025 4 cites arXiv

    Synthesis

    Short survey of formalizing software requirements with LLMs.

    Why it matters A compact entry point that separates requirements formalization from mathematical autoformalization.

  5. Autoformalization in the Era of Large Language Models: A Survey

    Weng · 2025 24 cites arXiv

    Synthesis

    Survey of autoformalization in the LLM era: targets, training signals, and how results are evaluated.

    Why it matters The map of the subfield, and a good way to see how little of it evaluates semantic fidelity.

  6. Bridging Natural Language and Formal Specification--Automated Translation of Software Requirements to LTL via Hierarchical Semantics Decomposition Using LLMs

    Ma · 2025 4 cites arXiv

    Synthesis

    Decomposes industrial requirements through hierarchical semantics before mapping them to LTL (Req2LTL).

    Why it matters Decomposition is what keeps a long requirement from collapsing into one confidently wrong formula.

  7. Evaluating Autoformalization Robustness via Semantically Similar Paraphrasing

    Moore · 2025 2 cites arXiv

    Synthesis

    Paraphrases the same statement in meaning-preserving ways and measures whether the formalization stays the same.

    Why it matters If a paraphrase changes the formula, the translation was not tracking meaning. Cheap to run and hard to argue with.

  8. From Informal to Formal -- Incorporating and Evaluating LLMs on Natural Language Requirements to Verifiable Formal Proofs

    Cao · 2025 14 cites arXiv

    Synthesis

    Evaluates LLMs end to end on turning natural-language requirements into verifiable formal proofs.

    Why it matters Connects the translation problem to the proof problem instead of stopping at a well-formed formula.

  9. Requirements Development and Formalization for Reliable Code Generation: A Multi-Agent Vision

    Lu · 2025 2 cites arXiv

    Synthesis

    A multi-agent vision for developing and formalizing requirements before any code is generated.

    Why it matters Positions requirements engineering, not prompt engineering, as the reliability lever.

  10. Automated LTL Specification Generation from Industrial Aerospace Requirements

    Ma · 2026 0 cites arXiv

    Synthesis

    Generates LTL specifications from industrial aerospace requirement documents.

    Why it matters Real requirements, with the domain vocabulary and messiness that benchmark sentences lack.

  11. Automatic Translation of Unstructured Requirements into Linear Temporal Logic through Large Language Models

    Newcomb · 2026 0 cites arXiv

    Synthesis

    Translates unstructured requirements into linear temporal logic with LLMs.

    Why it matters A current data point on the least structured input the task has to handle.

  12. Can LLMs Write Correct TLA+ Specifications? Evaluating Natural-Language-to-TLA+ Generation

    Bisharat · 2026 0 cites arXiv

    Synthesis

    First systematic evaluation of whether LLMs produce semantically correct TLA+ from natural language.

    Why it matters TLA+ carries real industrial use at Amazon and Microsoft, so the gap measured here is a gap in practice.

  13. ClarifySTL: An Interactive LLM Agent Framework for STL Transformation through Requirements Clarification

    Fang · 2026 0 cites arXiv

    Synthesis

    An agent that asks clarifying questions before committing to a signal temporal logic formula.

    Why it matters Ambiguity in the requirement, not weakness in the model, is often the real blocker.

  14. Event-B Agent: Towards LLM Agent for Formal Model Synthesis and Repair

    Wang · 2026 0 cites arXiv

    Synthesis

    An agent that synthesizes and repairs Event-B formal models.

    Why it matters Refinement-based modeling, where the specification is the primary artifact and code arrives later.

  15. SCP-NL2TL: Selective Conformal Prediction with Semantic Verification for Natural Language to Temporal Logic Specifications

    Wang · 2026 0 cites arXiv

    Synthesis

    Uses selective conformal prediction with semantic verification so the translator abstains instead of emitting an unreliable specification.

    Why it matters Abstention is the underused answer to the fidelity problem: not every requirement should be formalized automatically.

  16. TLA-Prover: Verifiable TLA+ Specification Synthesis via Preference-Optimized Low-Rank Adaptation

    Spencer · 2026 0 cites arXiv

    Synthesis

    Preference-optimized low-rank adaptation for synthesizing TLA+ specifications that check out.

    Why it matters Training rather than prompting for the same task, which is where the cheap wins have moved.

  17. SIGIL: Compiling Agent Skills into Typed Harnesses

    Dantanarayana, Jayanaka · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract Agent skills are prose procedure files loaded into a model's context and interpreted by a tool-calling loop, which means nothing in the runtime makes a mandated step happen. Measured against the procedures their own skills prescribe, a prose agent performs 56% of mandated steps on gpt-4o while still producing deliverables that pass output checks. SIGIL compiles a SKILL.md into an executable harness through a typed intermediate representation that marks each step as owned by code or by the model, raising step compliance to 86%, full-procedure completion from 28% to 65% of runs, and cutting median token cost to 0.58x.

    Motivation Skills succeeded as an authoring format because domain experts can write, review and version them, but the property that makes them accessible leaves them unenforced. The document is consulted by the same process that is supposed to obey it, so an agent can satisfy its own reading of an instruction by writing a sentence asserting the outcome. Hand-writing a harness fixes enforcement at the cost of the authoring surface, and leaves two independent representations of one procedure free to drift. The resulting defect class is invisible to artifact-level testing: a financial-compliance report can carry reasonable figures and conclusions and still be invalid if the agent never retrieved the authoritative records, recalculated the totals, or checked the result against policy. Prior runtime supervision work adds monitors and guards that can block a disallowed action, but detection does not make a required action occur.

    Methodology Compilation runs in two stages over AG-IR, a typed agentic IR whose nodes carry an owner stating whether code or the model executes the step, a modality recording how binding the source instruction was, and provenance to the mandating sentence. Extraction is the only stage containing a model and admits a rule only when a verbatim quotation supports it; six compile gates then reject an IR that points at content instead of embodying it, omits a mandated deliverable, fails to lower and type check, folds a mandatory rule into another slot's interior, or leaves a human-gated decision to model judgment. Lowering is deterministic, mapping each primitive onto an Object-Spatial Programming construct in Jac: nodes become node archetypes, edges fix walker traversal order, mandatory rules become abilities bound to node entry, model-owned nodes become typed llm() slots whose return type makes an out-of-range answer a type error, and forbidden rules lower to nothing, so the guarantee comes from the absence of a path. STRUCT-COV statically reports, per mandatory rule, whether the emitted module realizes it as a code gate, a dedicated model slot, monolithically inside another slot, or not at all, failing the last two. Evaluation covers 30 skills across document and tooling, software process, and governance and compliance families, with three process-scenario tasks per skill repeated three times per arm in isolated sandboxes, on gpt-4o and gpt-5, scored by Applicable-Mandate Compliance with a judge reading the full run and, for the harness, its node-path trace.

    Results On gpt-4o the compiled harness performs 86% of mandated steps against 56% for prose, matching or exceeding prose on all 30 skills with 28 strict wins, 2 ties and no losses, and completing the full applicable procedure in 65% of runs against 28%, a factor of 2.3. Moving to gpt-5 leaves the harness at 86% while prose rises to 68%, so the advantage narrows from 30 points to 17; the harness artifact is byte-identical across both sweeps, which is what makes the guarantee model-independent by construction. Median token cost is 0.58x prose, cheaper on 24 skills and as low as 0.02x on a nearly all-code skill, with the exceptions concentrated in skills organized around a genuine tool-using loop, reaching 7.64x on using-superpowers and 3.09x on systematic-debugging, where the prose agent was cheaper because it truncated or skipped the loop. The compiler realizes 37% of mandates as code-owned gates on average, 32% to 44% by family, and the four skills where the harness loses on gpt-5 are judgment-heavy ones with little to compile.

Verification-aware code generation

Agents that emit code and proof together and let a verifier decide. Dafny, Verus, Lean, Ada/SPARK and PLC code all appear, along with the two moves that make it work at scale: decomposition, and using verifier feedback as a training or search signal rather than as a final gate.

Key threads
  • The verifier is a genuine verifiable reward, which makes bootstrapping and reinforcement learning possible without human proof data (AlphaVerus, Re:Form).
  • Verification as a compilation stage: generate a verification-aware intermediate language, prove it, then compile out (Dafny-as-IL).
  • Repository scale needs retrieval and cross-module context, and function-level results do not transfer (RagVerus, KVerus, repo-level verification).
  • A diff-checker that stops the model editing the program it was asked to prove is a small guardrail with large consequences.
  • Industrial targets are appearing (seL4, Ada/SPARK, PLC control code), which is where the cost argument gets settled.
Open gaps
  • Proof maintenance across refactors is nearly unstudied compared to first-time proof generation.
  • Most systems assume the specification is given; the end-to-end case where the agent also writes the specification is much weaker.
  1. Clover: Closed-Loop Verifiable Code Generation

    Sun · 2023 26 cites arXiv

    Synthesis

    Closes the loop by checking code, specification and documentation against each other before accepting a generation (Clover).

    Why it matters Consistency between artifacts as an acceptance criterion, which catches the case where code and specification are both wrong together.

  2. Agents4PLC: Automating Closed-loop PLC Code Generation and Verification in Industrial Control Systems using LLM-based Agents

    Liu · 2024 21 cites arXiv

    Synthesis

    Closed-loop PLC code generation and verification for industrial control systems (Agents4PLC).

    Why it matters Safety-critical control code is a domain where verification is already mandatory, so the loop has a real customer.

  3. AlphaVerus: Bootstrapping Formally Verified Code Generation through Self-Improving Translation and Treefinement

    Aggarwal · 2024 21 cites arXiv

    Synthesis

    Bootstraps verified Verus code by translating from a source language and refining against the verifier (Treefinement), with no human proof data.

    Why it matters Self-improvement where the reward is a real verifier, the cleanest version of verifiable rewards in this space.

  4. AutoVerus: Automated Proof Generation for Rust Code

    Yang · 2024 22 cites arXiv

    Synthesis

    Generates Verus proof annotations for Rust with a pipeline modeled on how humans construct proofs.

    Why it matters The reference point for automated proof generation in the Rust ecosystem.

  5. Combining LLM Code Generation with Formal Specifications and Reactive Program Synthesis

    Murphy · 2024 10 cites arXiv

    Synthesis

    Combines LLM code generation with formal specifications and reactive program synthesis.

    Why it matters Pairs a generator with a synthesizer that is correct by construction, splitting the work by what each is good at.

  6. Towards AI-Assisted Synthesis of Verified Dafny Methods

    Rakib Hossain Misu · 2024 8 cites arXiv

    Synthesis

    Synthesizes verified Dafny methods, generating specification and code together so the pair can be proved.

    Why it matters An early, careful statement of the generate-spec-and-code-together strategy that most later systems adopt.

  7. VerMCTS: Synthesizing Multi-Step Programs using a Verifier, a Large Language Model, and Tree Search

    Brandfonbrener · 2024 18 cites arXiv

    Synthesis

    Guides Monte Carlo tree search with a Dafny or Coq verifier to synthesize multi-step verified programs (VerMCTS).

    Why it matters Uses the verifier as a partial-credit signal inside search rather than only as a final gate.

  8. dafny-annotator: AI-Assisted Verification of Dafny Programs

    Poesia · 2024 12 cites arXiv

    Synthesis

    Combines a language model with search to add the logical annotations Dafny needs to verify a program (dafny-annotator).

    Why it matters Isolates annotation from code generation, which is the part that actually costs developer time.

  9. Dafny as Verification-Aware Intermediate Language for Code Generation

    Li · 2025 7 cites arXiv

    Synthesis

    Generates Dafny as an intermediate language, verifies it, and compiles from there to the target language.

    Why it matters Verification as a compilation stage rather than a separate discipline, and one of the more transferable ideas in this section.

  10. RAG-Verus: Repository-Level Program Verification with LLMs using Retrieval Augmented Generation

    Zhong · 2025 4 cites arXiv

    Synthesis

    Uses retrieval-augmented generation and context-aware prompting for multi-module proof synthesis, with RepoVBench as the yardstick (RagVerus).

    Why it matters Retrieval as the answer to repository-scale context, plus the first repository-level Verus benchmark.

  11. Re:Form -- Reducing Human Annotations in Scalable Formal Software Verification with RL in LLMs: A Preliminary Study on Dafny

    Yan · 2025 9 cites arXiv

    Synthesis

    Reduces human annotation in formal software verification by training with reinforcement learning against Dafny's verifier.

    Why it matters Formal-language reasoning as a reliable and scalable training signal, in contrast to informal-language reward models.

  12. Specification-Guided Repair of Arithmetic Errors in Dafny Programs using LLMs

    Wu · 2025 0 cites arXiv

    Synthesis

    Repairs arithmetic errors in Dafny programs under the guidance of the existing specification.

    Why it matters Repair with a specification present is a very different problem from repair against tests, and much better posed.

  13. Towards Repository-Level Program Verification with Large Language Models

    Zhong · 2025 0 cites arXiv

    Synthesis

    Resolves cross-module dependencies and global context for repository-scale program verification.

    Why it matters Function-level results do not transfer to repositories, and this states why.

  14. Verifying LLM-Generated Code in the Context of Software Verification with Ada/SPARK

    Cramer · 2025 3 cites arXiv

    Synthesis

    Explores using SPARK for Ada to verify LLM-generated code.

    Why it matters Ada/SPARK is where high-assurance industry already lives, so it is a realistic adoption path rather than a research language.

  15. Automating Formal Verification with Agent-Guided Tree Search

    Yao · 2026 0 cites arXiv

    Synthesis

    Evaluates vericoding in Lean and develops agent-guided search methods over the space of verification attempts.

    Why it matters Verification failure is cheap to detect and expensive to fix, which makes search a natural fit for the loop.

  16. AxDafny: Agentic Verified Code Generation in Dafny

    Breen · 2026 0 cites arXiv

    Synthesis

    Agentic verified code generation in Dafny.

    Why it matters A recent read on what the agent loop adds over single-shot generation in a verification-aware language.

  17. DafnyPro: LLM-Assisted Automated Verification for Dafny Programs

    Banerjee · 2026 7 cites arXiv

    Synthesis

    Adds a diff-checker, an invariant pruner and retrieved proof strategies at inference time for Dafny verification (DafnyPro).

    Why it matters The diff-checker matters beyond Dafny, because it stops the model quietly editing the program it was asked to prove.

  18. ExVerus: Verus Proof Repair via Counterexample Reasoning

    Yang · 2026 1 cites arXiv

    Synthesis

    Turns failed proofs into concrete counterexamples so the model reasons about behavior rather than about verifier text (ExVerus).

    Why it matters Verifier error messages are weak feedback; counterexamples are the strongest signal the tool can give back.

  19. FM-Agent: Scaling Formal Methods to Large Systems via LLM-Based Hoare-Style Reasoning

    Ding · 2026 2 cites arXiv

    Synthesis

    Hoare-style decomposition that lets formal methods reach large systems (FM-Agent).

    Why it matters Decomposition is the scaling story for deductive verification, and this is a concrete instance of it.

  20. Formal-Method-Guided Vibe Coding: Closing the Verification Loop on AI-Generated Safety-Critical Software Through Model-Driven Engineering

    Wei · 2026 1 cites arXiv

    Synthesis

    Closes the verification loop on AI-generated safety-critical software through model-driven engineering.

    Why it matters One of the few papers taking the vibe-coding workflow seriously and asking what formal gate belongs inside it.

  21. KVerus: Scalable and Resilient Formal Verification Proof Generation for Rust Code

    Liu · 2026 0 cites arXiv

    Synthesis

    Scalable and resilient proof generation for Rust code across large, evolving systems (KVerus).

    Why it matters Focuses on proof maintenance under change, which is where verification effort actually accumulates.

  22. KaPilot: LLM-Assisted Generation of Kani Specifications for Unsafe Rust Verification

    Wang · 2026 0 cites arXiv

    Synthesis

    Generates Kani specifications for unsafe Rust and assesses their quality rather than assuming code-derived specs are right (KaPilot).

    Why it matters Specifications derived from an implementation inherit its bugs, and this confronts that directly.

  23. Specula: Scaling formal specifications for autonomous model checking of system code

    Cheng · 2026 0 cites arXiv

    Synthesis

    Scales specification writing so a model checker can be run autonomously over systems code (Specula).

    Why it matters Targets the real bottleneck in model checking, which is the specifications it needs rather than the checker.

  24. Teaching Code LLMs to Reason with Intermediate Formal Specifications

    Le-Anh · 2026 0 cites arXiv

    Synthesis

    Targets the intermediate executable assertions a programmer relies on mid-algorithm, after finding that prompted assertions are often invalid, trivial, or too weak to reject a behavior-changing fault.

    Why it matters Specification as a reasoning scaffold rather than a downstream deliverable, and a clean statement of how weak default generated assertions are.

  25. The Prover Is the Judge: Verified Security Software from AI Coding Agents in Ada/SPARK

    Philipp · 2026 0 cites arXiv

    Synthesis

    Coding agents producing verified security software in Ada/SPARK, with the prover as the acceptance criterion.

    Why it matters Makes the verifier the judge of agent output, which is the strongest available form of automated review.

  26. Towards Real-World Industrial-Scale Verification: LLM-Driven Theorem Proving on seL4

    Zhang · 2026 0 cites arXiv

    Synthesis

    LLM-driven theorem proving applied to the seL4 verified microkernel.

    Why it matters The most demanding real target available, with industrial scale and existing human proofs to compare against.

Proof automation and prover agents

The proof-assistant side: whole-proof generation and repair, retrieval-augmented premise selection, tree search over tactics, and the cost of running any of it. Most capability here was built on mathematics benchmarks, and the transfer to software proofs is the open question.

Key threads
  • Whole-proof generation plus error-message repair competes with step-by-step tactic prediction (Baldur, HybridProver).
  • Retrieval makes proof automation project-specific, which is what software verification demands (Rango, LeanDojo).
  • Partial proofs are worth keeping; treating verification as all-or-nothing discards most of the work (Cobblestone).
  • Search burns compute on attempts that never land, which makes cost a design parameter rather than an afterthought.
  • Auditability is emerging as its own requirement, with edit contracts and retained records around what the model changed (CAPRI).
Open gaps
  • Capability is measured on mathematics (miniF2F, ProofNet) and applied to software, with no controlled study of the drop across that boundary.
  • Proof repair after a specification changes is much less studied than proof generation from scratch.
  1. MiniF2F: a cross-system benchmark for formal Olympiad-level mathematics

    Zheng · 2021 181 cites arXiv

    Synthesis

    A cross-system benchmark of 488 Olympiad-level formal statements across Metamath, Lean, Isabelle and HOL Light (miniF2F).

    Why it matters The standard yardstick for prover capability. It is mathematics, so treat transfer to software verification as an open question rather than a given.

  2. Baldur: Whole-Proof Generation and Repair with Large Language Models

    First · 2023 38 cites arXiv

    Synthesis

    Generates whole proofs with a language model and repairs them using the proof assistant's error messages (Baldur).

    Why it matters Established whole-proof generation plus repair as an alternative to single-tactic prediction.

  3. LeanDojo: Theorem Proving with Retrieval-Augmented Language Models

    Yang · 2023 106 cites arXiv

    Synthesis

    Extracts a Lean dataset and provides retrieval-augmented premise selection with an interactive proving environment (LeanDojo).

    Why it matters The infrastructure a large share of neural proving work is built on.

  4. ProofNet: Autoformalizing and Formally Proving Undergraduate-Level Mathematics

    Azerbayev · 2023 186 cites arXiv

    Synthesis

    371 undergraduate mathematics problems with paired informal and formal statements for autoformalization and proving (ProofNet).

    Why it matters The benchmark that made autoformalization measurable, and the template later software-specification benchmarks copy.

  5. Cobblestone: A Divide-and-Conquer Approach for Automating Formal Verification

    Kasibatla · 2024 13 cites arXiv

    Synthesis

    Divide-and-conquer proof automation that accepts partial progress toward a Coq proof (Cobblestone).

    Why it matters Partial proofs are useful; treating verification as all-or-nothing throws away most of the work.

  6. DeepSeek-Prover: Advancing Theorem Proving in LLMs through Large-Scale Synthetic Data

    Xin · 2024 175 cites arXiv

    Synthesis

    Scales formal proving with large-scale synthetic data generated by autoformalizing informal problems (DeepSeek-Prover).

    Why it matters Showed that the data bottleneck in formal proving is partly solvable by generation.

  7. Enhancing Formal Theorem Proving: A Comprehensive Dataset for Training AI Models on Coq Code

    Florath · 2024 3 cites arXiv

    Synthesis

    A dataset for training models on Coq code.

    Why it matters Training data for proof assistants is scarce and idiosyncratic; this is one of the open corpora.

  8. Lean Copilot: Large Language Models as Copilots for Theorem Proving in Lean

    Song · 2024 75 cites arXiv

    Synthesis

    Runs LLM inference natively inside Lean for tactic suggestion, premise selection and proof search (Lean Copilot).

    Why it matters The interactive framing, where the model is a copilot inside the prover rather than a prover itself.

  9. Rango: Adaptive Retrieval-Augmented Proving for Automated Software Verification

    Thompson · 2024 10 cites arXiv

    Synthesis

    Retrieval-augmented proof synthesis that adapts to the project's own lemmas and proof style (Rango).

    Why it matters Proof automation is project-specific, and retrieval is what makes it so.

  10. Selene: Pioneering Automated Proof in Software Verification

    Zhang · 2024 11 cites arXiv

    Synthesis

    Automated proof for software verification in Isabelle, built on a project-scale corpus (Selene).

    Why it matters One of the first attempts at software, rather than mathematics, as the proof-automation target.

  11. A Minimalist Proof Language for Neural Theorem Proving over Isabelle/HOL

    Xu · 2025 4 cites arXiv

    Synthesis

    A minimalist proof language for neural theorem proving over Isabelle/HOL.

    Why it matters Changes the target language to fit the model rather than the other way around.

  12. DeepSeek-Prover-V2: Advancing Formal Mathematical Reasoning via Reinforcement Learning for Subgoal Decomposition

    Ren · 2025 212 cites arXiv

    Synthesis

    Reinforcement learning over subgoal decomposition for formal mathematical reasoning (DeepSeek-Prover-V2).

    Why it matters The current capability ceiling for open proving models, and the reference point when a software-verification agent claims strong results.

  13. HybridProver: Augmenting Theorem Proving with LLM-Driven Proof Synthesis and Refinement

    Hu · 2025 7 cites arXiv

    Synthesis

    Augments theorem proving by combining LLM-driven proof synthesis with refinement (HybridProver).

    Why it matters Synthesis and refinement as separate stages, mirroring the generate-then-repair pattern in verified code generation.

  14. Agentic Proof Automation: A Case Study

    Xu · 2026 3 cites arXiv

    Synthesis

    Case study of agentic proof automation, where the model explores the codebase rather than seeing one goal at a time.

    Why it matters Proof engineering is a codebase task, and this is what changes when the agent can look around.

  15. CAPRI: Contract-Aware Proof Repair for Isabelle

    Woodcock · 2026 0 cites arXiv

    Synthesis

    Contract-aware proof repair for Isabelle, with an independent checker enforcing a machine-readable edit contract and retained audit records (CAPRI).

    Why it matters A build that succeeds does not show the model changed only what it was authorized to change; this closes that hole.

  16. Can Open-Weight LLMs Produce Kernel-Verified Coq Proofs? A Pilot Study

    Ryan · 2026 0 cites arXiv

    Synthesis

    Pilot study of whether open-weight models can produce kernel-verified Coq proofs.

    Why it matters Resemblance to a proof is not a proof, and the kernel is the only judge that settles it.

  17. Optimizing the Cost-Quality Tradeoff of Agentic Theorem Provers in Lean

    Rögnvaldsson · 2026 0 cites arXiv

    Synthesis

    Measures and optimizes the cost-quality tradeoff of agentic theorem provers in Lean, where much compute is spent on attempts that never land.

    Why it matters The economics paper this area needs, since proof search is easy to make expensive and hard to make cheap.

  18. PROMISE: Proof Automation as Structural Imitation of Human Reasoning

    Ahn · 2026 0 cites arXiv

    Synthesis

    Proof automation framed as structural imitation of how humans reason (PROMISE).

    Why it matters An argument that proof structure, not token-level tactic prediction, is the transferable unit.

  19. Planning to Hammer: Difficulty-Aware Decomposition for Automating Rocq Proofs

    Zhang · 2026 1 cites arXiv

    Synthesis

    Difficulty-aware decomposition for automating Rocq proofs.

    Why it matters Spends proof-search budget where the goal is actually hard, which is most of the cost control in agentic proving.

Benchmarks for specification and proof quality

How this field grades itself. The interesting movement is away from reference matching and pass rates toward execution-grounded scoring, equivalence, completeness, mutation and live construction, because a specification can be correct, verifiable and still say nothing.

Key threads
  • Grade by what a specification excludes: proof obligations from trusted tests (Coins), mutation (MutDafny), state-space execution (TLA+-Bench).
  • Score code, specification and proof separately, because systems fail asymmetrically across the three (VERINA, VerifyThisBench).
  • Ground-truth-free evaluation through equivalence sidesteps the fact that there is rarely one right specification.
  • Scale is moving from functions to systems and repositories (OSVBench, Vero, RepoVBench).
  • Live and contamination-resistant construction is becoming standard practice (LiveFMBench).
Open gaps
  • Dafny and Verus corpora are small and heavily reused, so training and evaluation sets overlap more than reported numbers admit.
  • Almost no benchmark scores the maintenance of a specification, only its first production.
  1. How Powerful are LLMs in Generating Formal Program Specifications?

    Yang · 2026 0 cites arXiv

    Synthesis

    Coins scores a candidate specification by instantiating it on trusted test cases and generating concrete proof obligations, so a spec is graded by what it actually rules out.

    Why it matters Moves specification evaluation past 'does it typecheck' and past 'does it resemble the reference', which is the measurement missing from most generation work here.

  2. DafnyBench: A Benchmark for Formal Software Verification

    Loughridge · 2024 42 cites arXiv

    Synthesis

    Over 750 Dafny programs, about 53,000 lines, testing whether a model can supply enough hints for the verifier to succeed.

    Why it matters The largest Dafny yardstick, and the one most later Dafny systems report against.

  3. miniCodeProps: a Minimal Benchmark for Proving Code Properties

    Lohn · 2024 15 cites arXiv

    Synthesis

    A minimal benchmark for proving properties of code in Lean (miniCodeProps).

    Why it matters The smallest honest bridge between mathematical proving benchmarks and software properties.

  4. A benchmark for vericoding: formally verified program synthesis

    Bursuc · 2025 12 cites arXiv

    Synthesis

    A benchmark for vericoding: formally verified program synthesis from specifications.

    Why it matters Names the task cleanly and separates it from proof-only and code-only evaluation.

  5. CLEVER: A Curated Benchmark for Formally Verified Code Generation

    Thakur · 2025 23 cites arXiv

    Synthesis

    A curated benchmark for formally verified code generation with human-checked ground truth (CLEVER).

    Why it matters Small and hand-verified rather than large and noisy, which is what makes its numbers interpretable.

  6. Can LLMs Reason About Program Semantics? A Comprehensive Evaluation of LLMs on Formal Specification Inference

    Le-Cong · 2025 8 cites arXiv

    Synthesis

    Evaluates LLM reasoning about program semantics through formal specification inference (FormalBench).

    Why it matters Treats specification inference as a probe of semantic understanding, which reframes what a failure means.

  7. MutDafny: A Mutation-Based Approach to Assess Dafny Specifications

    Amaral · 2025 1 cites arXiv

    Synthesis

    Applies mutation testing to Dafny specifications to reveal weaknesses in the specifications themselves (MutDafny).

    Why it matters Specifications are as buggy as implementations, and mutation is the cheapest way to see it.

  8. OSVBench: Benchmarking LLMs on Specification Generation Tasks for Operating System Verification

    Li · 2025 11 cites arXiv

    Synthesis

    Specification generation for operating-system verification (OSVBench).

    Why it matters Systems code with real invariants, far away from the function-sized tasks most benchmarks use.

  9. Proving the Coding Interview: A Benchmark for Formally Verified Code Generation

    Dougherty · 2025 8 cites arXiv

    Synthesis

    Formally verified code generation over competitive-programming problems in Lean (FVAPPS).

    Why it matters Takes a familiar code benchmark and raises the bar from passing tests to carrying a proof.

  10. VERINA: Benchmarking Verifiable Code Generation

    Ye · 2025 32 cites arXiv

    Synthesis

    Benchmarks verifiable code generation on Lean tasks that require code, specification and proof together, each graded separately (VERINA).

    Why it matters Separating the three deliverables is what exposes systems that write code well and specifications badly.

  11. Validating Formal Specifications with LLM-generated Test Cases

    Cunha · 2025 2 cites arXiv

    Synthesis

    Validates formal specifications with LLM-generated test cases.

    Why it matters Tests as a validity check on the specification inverts the usual direction and is a practical review technique.

  12. VeriEquivBench: An Equivalence Score for Ground-Truth-Free Evaluation of Formally Verifiable Code

    Zeng · 2025 1 cites arXiv

    Synthesis

    Scores formally verifiable code by equivalence rather than against a reference solution (VeriEquivBench).

    Why it matters Ground-truth-free evaluation matters because there is rarely one right specification.

  13. VerifyThisBench: Generating Code, Specifications, and Proofs All at Once

    Deng · 2025 8 cites arXiv

    Synthesis

    Requires code, specification and proof to be produced at once, following the VerifyThis competition format.

    Why it matters The joint task is much harder than any of its parts, and this measures the joint task.

  14. AlgoVeri: An Aligned Benchmark for Verified Code Generation on Classical Algorithms

    Zhao · 2026 7 cites arXiv

    Synthesis

    An aligned benchmark for verified code generation on classical algorithms (AlgoVeri).

    Why it matters Algorithms with known invariants make a good controlled setting for comparing systems.

  15. Can Code Specify a System Precisely Enough to Formally Verify It?

    Dubray · 2026 1 cites arXiv

    Synthesis

    Evaluates code-derived and LLM-written specifications on a production point-of-sale payment workflow, grading them against traces captured from the running system.

    Why it matters Finds reliability governed by the structure of the specification contract rather than by the specification language, and reframes the economics of having a model at all.

  16. Can LLMs Reason Like Automated Theorem Provers for Rust Verification? VCoT-Bench: Evaluating via Verification Chain of Thought

    Xie · 2026 0 cites arXiv

    Synthesis

    Evaluates Rust verification through the chain of reasoning rather than binary pass or fail on proof hints (VCoT-Bench).

    Why it matters Pass rates hide whether the model understood the proof obligation or got lucky.

  17. ITPEval: Benchmarking Formal Translation Across Interactive Theorem Provers

    Wu · 2026 0 cites arXiv

    Synthesis

    Benchmarks formal translation across interactive theorem provers (ITPEval).

    Why it matters Cross-prover transfer is a good test of whether a model learned the mathematics or the syntax.

  18. LiveFMBench: Unveiling the Power and Limits of Agentic Workflows in Specification Generation

    Xu · 2026 1 cites arXiv

    Synthesis

    A live benchmark of agentic workflows on specification generation (LiveFMBench).

    Why it matters Live construction is the current defense against contamination, which quietly inflates every static benchmark here.

  19. POSTCONDBENCH: Benchmarking Correctness and Completeness in Formal Postcondition Inference

    Zhang · 2026 0 cites arXiv

    Synthesis

    Benchmarks formal postcondition inference on both correctness and completeness rather than correctness alone.

    Why it matters A postcondition that is true but weak passes most evaluations; completeness is what catches that.

  20. TLA+-Bench: An Execution-Grounded Benchmark and Dataset for Natural-Language to TLA Specification Generation

    Bisharat · 2026 0 cites arXiv

    Synthesis

    Grades natural-language-to-TLA+ generation by running the model checker over the full reachable state space, not by resemblance to a reference (TLA+-Bench).

    Why it matters Execution-grounded grading is the correct answer to 'does it parse' and 'does it look like the gold spec'.

  21. Vero: Can AI Agents Build Formally Verified Software Repositories?

    Ye · 2026 0 cites arXiv

    Synthesis

    Asks whether agents can build formally verified software repositories, not single functions (Vero).

    Why it matters Repository scale is where specification, proof and engineering all have to hold at once.

  22. Verus-SpecGym: An Agentic Environment for Evaluating Specification Autoformalization

    Agarwal · 2026 2 cites arXiv

    Synthesis

    An agentic environment for evaluating specification autoformalization in Verus (Verus-SpecGym).

    Why it matters Environment rather than static dataset, so agent behavior is part of what gets measured.

  23. SA-Bench: Evaluating Semantic Alignment in LLM-Based Paper Reproduction

    Hu, Xue · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract A benchmark for whether agent-generated reproduction code implements what a paper actually specifies, judged claim by claim without running anything. Thirty ICLR, ICML and NeurIPS 2025 papers are decomposed into 1,491 human-verified Semantic Alignment Units: atomic implementation claims, each traceable to a paper span and checkable by reading code. Claims are typed into four kinds of drift (numerical, method or formula, experimental protocol, step ordering) and scored on a five-level rubric by an LLM judge. Twelve generator configurations, four models by three scaffolds, are evaluated over all thirty papers.

    Motivation Paper-to-code reproduction asks an agent to produce a repository that is not merely executable but faithful to a paper's algorithmic logic, numerical details, experimental protocol and execution order. Two properties make that hard: papers are written to communicate findings rather than prescribe implementations, so the method sits in one section and the hyperparameters in an appendix table, and scientific code is intolerant of detail-level error, where one misread formula changes the implemented method while the code still runs. The authors name the resulting failure semantic drift, generated code silently diverging from the paper's specifications. Evaluating it is awkward because there is no executable ground-truth oracle: unlike SWE-bench, where a test suite states expected behavior, the only authoritative specification is the paper text, and end-to-end numbers are confounded by seeds, environments, data processing and compute budget. Existing reproduction benchmarks report pass/fail or scalar scores at document or function level, so when reproduction falls short the deviation is never classified.

    Methodology Extraction runs as a staged agent pipeline followed by mandatory human review. A code-first filter removes non-implementable content without an LLM call, then three dimension-specific specialist agents process the paper in parallel, each dispatching per-section sub-agents that read one to three sections at a time to avoid long-context attention decay; a merge stage deduplicates and derives step-ordering claims from annotations the other agents recorded rather than from a separate pass. The pipeline is tuned for recall, and human reviewers accept, revise, reject or split each candidate against contribution relevance, drift-type correctness, granularity and source precision, logging the reasoning; about 17% of candidates are rejected. Scoring is static: a GPT-5.5 judge, distinct from all generators to avoid self-evaluation bias, searches the generated repository for evidence, drops claims with no code-level support, and scores the rest on the five-level rubric with a structured explanation and file-and-line citations. The paper-level score is the mean over its SAUs. Generators are Claude-Sonnet-4.6, DeepSeek-V4-Pro, Gemini-2.5-Flash and GPT-4o under three scaffolds: a minimal ReAct loop, a dedicated three-role paper-to-code pipeline, and a software-engineering execution-feedback scaffold.

    Results Performance is uniformly low. Across 360 paper-level evaluations the mean alignment score is 0.221 with a median of 0.237; the best single configuration, Claude-Sonnet-4.6 with PaperCoder, reaches 0.301. Of 17,892 claim judgments, 7,034 score zero, and three categories cover most of them: implementation mismatch at 40.8%, where code referencing the claim's keywords implements something else; stubs, TODOs or pass statements at 16.2%; and external knowledge gaps at 8.0%, where the paper names a standard baseline or dataset without defining it. The dimension ordering numerical > algorithm > ordering > protocol holds across all twelve configurations, tracking the number of sub-decisions each claim type demands, with protocol claims the universal bottleneck. Model choice outweighs scaffold choice on average (model marginal range 0.120-0.283 against 0.193-0.249 for scaffolds), and scaffold benefit shrinks as base capability rises: the paper-to-code scaffold adds 0.116 for GPT-4o and 0.106 for Gemini-2.5-Flash but 0.029 for Claude and -0.027 for DeepSeek. Domain effects are small next to generator effects, a spread of 0.030 against a 0.219 gap between best and worst configuration. The judge agreed with human assessment on about 87% of 200 re-checked claims.

Correctness beyond proofs

What coding agents are actually judged by today, and why that is not enough. Tests as oracle, the leakage and weakness inside those tests, hallucination taxonomies, patch verbosity, uncertainty signals, and the non-functional qualities no functional benchmark measures.

Key threads
  • Tests are the working oracle, and their weakness is measurable: leakage, weak assertions, and generators that validate faulty code.
  • Self-validation is the structural flaw in agent loops, since the same model writes and checks the artifact.
  • Passing tests permits large unrelated edits, which is a frame-condition problem in disguise.
  • Uncertainty signals (internal representations, entropy, incoherence across samples) can route expensive verification where it pays.
  • Non-functional quality, maintainability and supply-chain hazards such as package hallucination sit outside every functional specification.
Open gaps
  • Very little work connects these quality signals to the formal pipelines in the other sections, despite the obvious routing use.
  • Abstention is proposed repeatedly and evaluated almost nowhere.
  1. Can Large Language Models Write Good Property-Based Tests?

    Vikram · 2023 52 cites arXiv

    Synthesis

    Studies whether LLMs can write good property-based tests, including inventing the properties.

    Why it matters Properties are lightweight specifications, and this is the honest read on the model's ability to invent them.

  2. SWE-bench: Can Language Models Resolve Real-World GitHub Issues?

    Jimenez · 2023 1236 cites arXiv

    Synthesis

    Plain-language abstract SWE-bench is a benchmark for testing whether language models can solve real software engineering problems. It presents models with 2,294 actual GitHub issues from 12 popular Python repositories and asks them to generate code patches that fix those issues, verified by running the repository's own test suite.

    Motivation Existing coding benchmarks like HumanEval consist of self-contained problems solvable in a few lines, which no longer capture what frontier language models can and cannot do. Real software engineering requires navigating large codebases, understanding interactions across many files, and reasoning about complex bugs — a much harder and more realistic challenge that prior benchmarks did not test.

    Methodology The authors scraped pull requests from 12 popular Python repositories, filtered for PRs that resolved a linked GitHub issue, included changes verified by tests that shifted from failing to passing, and excluded instances with installation or runtime errors. This pipeline reduced roughly 90,000 PRs to 2,294 curated task instances. Models are given an issue description and a codebase snapshot, and must produce a patch; evaluation uses BM25-based retrieval to provide relevant context and runs the repository's test suite to check correctness. The authors also released a training set of 19,000 instances from 37 repositories and two fine-tuned models, SWE-Llama 7b and 13b, built on CodeLlama.

    Results State-of-the-art models performed very poorly on SWE-bench. The best-performing model, Claude 2, resolved only 1.96% of the issues when using a BM25 retriever. Fine-tuned SWE-Llama 13b was competitive with Claude 2 in some settings and could handle contexts exceeding 100,000 tokens, but overall results confirm that current language models struggle with realistic, multi-file software engineering tasks.

  3. Agentless: Demystifying LLM-based Software Engineering Agents

    Xia · 2024 384 cites arXiv

    Synthesis

    Shows a simple localize-repair-validate pipeline matches or beats complex agent scaffolds on SWE-bench (Agentless).

    Why it matters A standing caution against attributing to agency what belongs to the model and the test harness.

  4. Beyond Functional Correctness: Exploring Hallucinations in LLM-Generated Code

    Liu · 2024 215 cites arXiv

    Synthesis

    Builds a taxonomy of hallucinations in LLM-generated code, past whether tests pass.

    Why it matters Names the failure modes formal specifications are supposed to catch, in the vocabulary of the code-generation literature.

  5. Design choices made by LLM-based test generators prevent them from finding bugs

    Saji Mathews · 2024 5 cites arXiv

    Synthesis

    Finds that LLM-based test generators validate faulty code rather than finding bugs, by design choice.

    Why it matters The oracle problem stated plainly. Tests written from the implementation cannot detect the implementation being wrong.

  6. Generating executable oracles to check conformance of client code to requirements of JDK Javadocs using LLMs

    Jiang · 2024 5 cites arXiv

    Synthesis

    Generates executable oracles that check client code against the requirements stated in JDK Javadocs.

    Why it matters Documentation as an existing specification source, already sitting in most codebases.

  7. SWE-Bench+: Enhanced Coding Benchmark for LLMs

    Aleithan · 2024 74 cites arXiv

    Synthesis

    Audits SWE-bench and finds solution leakage and weak tests behind a substantial share of reported passes.

    Why it matters If the oracle is weak, so is every claim measured through it, which is the case for formal specifications in miniature.

  8. SpecRover: Code Intent Extraction via LLMs

    Ruan · 2024 60 cites arXiv

    Synthesis

    Extracts developer intent from the repository to guide issue resolution and to justify the patch (SpecRover).

    Why it matters Intent recovery inside a mainstream agent, meeting the formal-specification work from the other direction.

  9. We Have a Package for You! A Comprehensive Analysis of Package Hallucinations by Code Generating LLMs

    Spracklen · 2024 25 cites arXiv

    Synthesis

    Quantifies package hallucination in code-generating models as a supply-chain threat.

    Why it matters A failure that no functional test catches and no functional specification describes.

  10. Correctness Assessment of Code Generated by Large Language Models Using Internal Representations

    Bui · 2025 12 cites arXiv

    Synthesis

    Assesses correctness of generated code from the model's internal representations rather than post-hoc checking.

    Why it matters A cheap confidence signal for when the expensive verification step is worth running.

  11. Incoherence as Oracle-less Measure of Error in LLM-Based Code Generation

    Valentin · 2025 4 cites arXiv

    Synthesis

    Estimates the probability that a generated program is correct without any oracle, using incoherence across samples.

    Why it matters The oracle-free setting is the common one, and this is a principled way to act in it.

  12. Investigating The Smells of LLM Generated Code

    Ghosh Paul · 2025 2 cites arXiv

    Synthesis

    Scenario-based evaluation of code smells in LLM-generated code.

    Why it matters Maintainability is the quality axis that survives long after the tests pass.

  13. Is Your Automated Software Engineer Trustworthy?

    Saji Mathews · 2025 5 cites arXiv

    Synthesis

    Argues automated software engineers should abstain on uncertain inputs instead of always emitting a patch.

    Why it matters Abstention as a reliability primitive, matching the conformal-prediction move in the translation section.

  14. Quality Assurance of LLM-generated Code: Addressing Non-Functional Quality Characteristics

    Sun · 2025 3 cites arXiv

    Synthesis

    Addresses non-functional quality characteristics of LLM-generated code, which functional benchmarks ignore.

    Why it matters Correctness is not the only property that ships, and specifications rarely cover the rest.

  15. Functional Entropy: Predicting Functional Correctness in LLM-Generated Code with Uncertainty Quantification

    Bouchard · 2026 0 cites arXiv

    Synthesis

    Predicts functional correctness of generated code through uncertainty quantification.

    Why it matters Routes verification effort toward the generations most likely to be wrong.

  16. On the risk of coding before testing: An empirical study on LLM-based test generation workflow

    Konstantinou · 2026 0 cites arXiv

    Synthesis

    Empirical study of test-first and agentic workflows where one model both writes and validates the code.

    Why it matters Self-validation is the structural weakness in agent loops, and formal verification is one way out of it.

  17. Refine After Generation: Toward Correct and Concise Patches in LLM-based Program Repair

    Luo · 2026 0 cites arXiv

    Synthesis

    Identifies patch verbosity in agentic program repair, where patches pass tests while doing far more than asked.

    Why it matters Passing tests permits large unintended changes, which is exactly what a frame condition would rule out.

  18. VibeContract: The Missing Quality Assurance Piece in Vibe Coding

    Wang · 2026 2 cites arXiv

    Synthesis

    Proposes contracts as the missing quality-assurance step in vibe coding.

    Why it matters The bridge between the contract literature and the way code is actually produced now.

  19. Grounding AI Agents in Contracts: An Empirical Evaluation of Spec-Driven Test Generation

    Tufano, Michele · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract Spec-Driven Test Generation has an LLM agent first write a semi-formal specification of a code component's pre-conditions, post-conditions, and undefined behaviors, then use that specification as a scaffold to generate tests, instead of generating tests directly from code.

    Motivation Agents prompted to generate tests directly from code often fail to reason about the code's underlying contracts, missing edge cases and behavioral boundaries. Design by Contract has long formalized this reasoning for humans via pre-/post-conditions and invariants, but agents generating tests have no such explicit contract to anchor exploration, so they can hallucinate logic or generate superficial tests.

    Methodology A two-phase Spec-Driven Agent first retroactively extracts and documents a component's contract as a semi-formal (natural-language-structured, not mathematically formal) specification, then generates tests grounded in that document. It is compared against a baseline agent that generates tests directly, on 90 historical production bugs from Google's issue tracker, using a 'Greenfield Test Generation' setup. A novel Contract Coverage metric scores how completely a spec covers a bug's incorrect behavior, and a pairwise LLM-as-a-Judge (Gemini 3.1 Pro judging outputs from agents using Gemini 3 Flash) rates test suite quality.

    Results The Spec-Driven Agent reaches a 63.2% bug detection rate at k=5 runs, a statistically significant 9.8-percentage-point improvement over the baseline (p=0.0352), and a 2.5-percentage-point improvement in branch coverage (p=0.0034). The LLM judge rates its test suites superior to the baseline's in 77.8% of cases and to human-authored tests in 56.7% of cases, with gains in adherence to best practices, readability, and edge-case coverage.

  20. SWE-bench Science: Can Coding Agents Resolve Engineering Tasks in Science?

    Xu, Zhipeng · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract A repository-level benchmark of 119 scientific software engineering tasks from 98 GitHub repositories across 20 scientific domains, built to ask not only whether coding agents repair scientific code but why they fail when they do not. No agent tested clears 50% exact private-test success.

    Motivation Software is part of the instrument through which scientific claims are produced: research groups use it to run simulations, process instrument output, train surrogate models and reproduce published results, so a defective patch can corrupt the evidence behind a conclusion rather than only a program output. Existing coding benchmarks measure function synthesis and repository-level repair, and existing scientific coding benchmarks cover curated problems, paper-grounded implementations, workflows and repository execution, but repository-level coverage across scientific domains and analysis of failure mechanisms remain thin. Aggregate test scores cannot distinguish an incorrect scientific abstraction from superficial symptom repair, incomplete system integration, or a fix that does not generalize, so they give limited guidance on how to improve the agents.

    Methodology Each task ships a repository snapshot at the exact pre-task state with locked dependencies and runnable entry points, stripped of git history, remotes, future changelogs, build caches and solution-linked artifacts; a problem statement frozen before test and reference-patch authors saw one another's work; a required scientific context held fixed in every condition; and public tests that support interactive debugging. Private tests, contract labels, reference and alternative-valid patches, scientific-rationale and localization blocks, expected files, difficulty and contamination metadata are evaluator-only and are mounted after submission in a separate container, reachable from neither the workspace nor environment variables nor logs. Tasks are split into Issue-driven (52), Expert-exploratory (49) and Engineering-integration (18) paradigms; hidden validators include alternative execution paths, state-reset tests and inter-module behavioral-contract tests. Metrics are public score, private score, Fail2Pass, Pass2Pass and Pass@1, the last binary and requiring every applicable private test to pass. Eight model-harness configurations were evaluated. Unsuccessful attempts were manually audited into four mutually exclusive scientific failure mechanisms, with runtime or evaluation-path failures recorded separately. A paired ablation on the 91 tasks where scientific auxiliary information can be separated removes scientific principles, equations, expected properties, domain diagnoses and repair strategies while holding the snapshot, environment, public entry points, hidden validators and required context fixed.

    Results Public scores run 93.28% to 100.00% while Pass@1 stays under 50% for every configuration. Claude-Opus-5 with Claude Code leads Pass@1 at 47.90% and on both Issue-driven (38.46%) and Expert-exploratory (65.31%) tasks; GPT-5.6-sol with Codex leads private score (78.82%), Fail2Pass (72.30%) and Pass2Pass (97.66%); DeepSeek-V4-Pro leads public score and Engineering-integration (44.44%); Qwen3.5-397B trails at 14.29% overall. No single model leads every metric, and the authors read the spread as a difference in how effectively each model-harness pair uses its context and generation budget rather than in token volume, since Claude-Opus-5 takes the top Pass@1 on a moderate budget and GPT-5.6-sol reaches a similar level with much shorter outputs. In the failure audit, Claude-Opus-5 records the lowest categorized scientific-error count at 58 plus 4 runtime or evaluation-path failures, and the fewest misguided-exploration errors at 2; DeepSeek-V4-Pro records the fewest knowledge/abstraction (15) and integration (19) errors; DeepSeek-V4-flash the fewest generalization errors (6). The ablation shows scientific knowledge is not uniformly beneficial. For GPT-5.6-sol, supplying it raised mean public and private scores slightly (96.70 to 97.80, 73.23 to 74.06) but lowered Pass@1 from 36.26% to 31.87%, with 8 tasks solved only with the information and 12 only without. For DeepSeek-V4-flash the same intervention raised Pass@1 from 16.48% to 23.08% while increasing input tokens from 4.84M to 7.40M. The authors state these are paired descriptive differences establishing neither significance nor causality, and read the GPT cases as scientific information supplying semantic constraints absent from local code symptoms while also inducing anchoring, scope spillover, or premature reliance on a supplied explanation. Stated limitations: per-domain task counts are small, and the analysis of how domain knowledge is actually used remains preliminary.

  21. SA-Bench: Evaluating Semantic Alignment in LLM-Based Paper Reproduction

    Hu, Xue · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract A benchmark for whether agent-generated reproduction code implements what a paper actually specifies, judged claim by claim without running anything. Thirty ICLR, ICML and NeurIPS 2025 papers are decomposed into 1,491 human-verified Semantic Alignment Units: atomic implementation claims, each traceable to a paper span and checkable by reading code. Claims are typed into four kinds of drift (numerical, method or formula, experimental protocol, step ordering) and scored on a five-level rubric by an LLM judge. Twelve generator configurations, four models by three scaffolds, are evaluated over all thirty papers.

    Motivation Paper-to-code reproduction asks an agent to produce a repository that is not merely executable but faithful to a paper's algorithmic logic, numerical details, experimental protocol and execution order. Two properties make that hard: papers are written to communicate findings rather than prescribe implementations, so the method sits in one section and the hyperparameters in an appendix table, and scientific code is intolerant of detail-level error, where one misread formula changes the implemented method while the code still runs. The authors name the resulting failure semantic drift, generated code silently diverging from the paper's specifications. Evaluating it is awkward because there is no executable ground-truth oracle: unlike SWE-bench, where a test suite states expected behavior, the only authoritative specification is the paper text, and end-to-end numbers are confounded by seeds, environments, data processing and compute budget. Existing reproduction benchmarks report pass/fail or scalar scores at document or function level, so when reproduction falls short the deviation is never classified.

    Methodology Extraction runs as a staged agent pipeline followed by mandatory human review. A code-first filter removes non-implementable content without an LLM call, then three dimension-specific specialist agents process the paper in parallel, each dispatching per-section sub-agents that read one to three sections at a time to avoid long-context attention decay; a merge stage deduplicates and derives step-ordering claims from annotations the other agents recorded rather than from a separate pass. The pipeline is tuned for recall, and human reviewers accept, revise, reject or split each candidate against contribution relevance, drift-type correctness, granularity and source precision, logging the reasoning; about 17% of candidates are rejected. Scoring is static: a GPT-5.5 judge, distinct from all generators to avoid self-evaluation bias, searches the generated repository for evidence, drops claims with no code-level support, and scores the rest on the five-level rubric with a structured explanation and file-and-line citations. The paper-level score is the mean over its SAUs. Generators are Claude-Sonnet-4.6, DeepSeek-V4-Pro, Gemini-2.5-Flash and GPT-4o under three scaffolds: a minimal ReAct loop, a dedicated three-role paper-to-code pipeline, and a software-engineering execution-feedback scaffold.

    Results Performance is uniformly low. Across 360 paper-level evaluations the mean alignment score is 0.221 with a median of 0.237; the best single configuration, Claude-Sonnet-4.6 with PaperCoder, reaches 0.301. Of 17,892 claim judgments, 7,034 score zero, and three categories cover most of them: implementation mismatch at 40.8%, where code referencing the claim's keywords implements something else; stubs, TODOs or pass statements at 16.2%; and external knowledge gaps at 8.0%, where the paper names a standard baseline or dataset without defining it. The dimension ordering numerical > algorithm > ordering > protocol holds across all twelve configurations, tracking the number of sub-decisions each claim type demands, with protocol claims the universal bottleneck. Model choice outweighs scaffold choice on average (model marginal range 0.120-0.283 against 0.193-0.249 for scaffolds), and scaffold benefit shrinks as base capability rises: the paper-to-code scaffold adds 0.116 for GPT-4o and 0.106 for Gemini-2.5-Flash but 0.029 for Claude and -0.027 for DeepSeek. Domain effects are small next to generator effects, a spread of 0.030 against a 0.219 gap between best and worst configuration. The judge agreed with human assessment on about 87% of 200 re-checked claims.

  22. FrontierChallenge: Evaluating Scientific Workflow Completion

    Su, Liangcai · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract FrontierChallenge grades scientific agents on whether they finished the job, not on whether they said something plausible. Each of 97 released tasks fixes the inputs and declares a contract of required deliverables, and a task-specific executable Grader checks the whole submitted bundle. Twelve frontier models across three scaffolds completed at most 20 of the 97 tasks, while their average partial scores ran as high as 87.9 out of 100.

    Motivation Existing agent benchmarks evaluate a final answer, an interaction trace, a single program, or a workflow from one discipline. Real scientific work is not shaped like that: an agent has to inspect heterogeneous inputs, choose and run an analysis, validate intermediate results, and hand back code, tables, figures, and prose that agree with each other. The authors deliberately narrow the question below autonomous science. The agent does not set the agenda or formulate the problem; it is handed a fixed objective, fixed inputs, and a stated output contract, and asked whether it can execute the workflow through to delivery.

    Methodology The team collected 300 end-to-end workflows from professional analysis, computation, simulation, and research-delivery practice, screened them for representativeness, complexity, diversity, and verifiability, and packaged each as a task description, fixed inputs, a declared execution environment, an output contract, and an executable evaluation procedure, with agent-visible material separated from evaluator-side references. Tasks with purely subjective outputs or without materials for reproducible scoring were excluded. 97 tasks were released and evaluated (74 Hard, 23 Medium) across quantum chemistry, molecular dynamics, materials characterization, analytical chemistry, life science, and electrochemistry/environment, spanning 21 workflow families and requiring tools such as ORCA, CP2K, LAMMPS, AmberTools, and PLUMED; 203 remain an internal held-out set. Twelve models were run under Codex, Claude Code, and Frontier Agent. Each task's Grader returns a 0 to 100 score by checking required files, numerical results, formats, figures, code execution, and cross-artifact consistency, with rubric-defined semantic criteria delegated to a GPT-5.6 Sol judge run three times and averaged. Pass Rate counts tasks scoring at least 99.9; Avg. Score is the mean.

    Results Pass Rate ranged from 3.1% to 20.6% against Avg. Scores of 67.5 to 87.9. GPT-5.6 Sol with Codex took the highest Avg. Score at 87.9 and shared the top Pass Rate of 20.6% with Grok 4.6 under Claude Code. Eight configurations scored above 80 on average and none passed more than 20.6% of tasks. Domain profiles diverge from the aggregate ranking: Grok 4.6 reached 60% Pass Rate in quantum chemistry, while analytical chemistry topped out at 4% against an 87.6 Avg. Score and electrochemistry/environment stayed at 0% against a 94.9 Avg. Score. Reported input tokens per task varied more than sixfold (2.183M to 13.730M) and mean execution time from 21.8 to 112.8 minutes. In the failure analysis, judge-assessed artifact shortfalls covered 97% of non-passing materials-characterization submissions and 43% of quantum-chemistry ones; 641 of 849 non-passing Claude Code trajectories (75.5%) ended with completion language against 90.1% of passing ones; and tool errors appeared in 94.2% of passing versus 80.7% of non-passing runs. The authors limit the claims to the released task set, the evaluated configurations, single runs, and provider-specific resource accounting.

  23. SIGIL: Compiling Agent Skills into Typed Harnesses

    Dantanarayana, Jayanaka · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract Agent skills are prose procedure files loaded into a model's context and interpreted by a tool-calling loop, which means nothing in the runtime makes a mandated step happen. Measured against the procedures their own skills prescribe, a prose agent performs 56% of mandated steps on gpt-4o while still producing deliverables that pass output checks. SIGIL compiles a SKILL.md into an executable harness through a typed intermediate representation that marks each step as owned by code or by the model, raising step compliance to 86%, full-procedure completion from 28% to 65% of runs, and cutting median token cost to 0.58x.

    Motivation Skills succeeded as an authoring format because domain experts can write, review and version them, but the property that makes them accessible leaves them unenforced. The document is consulted by the same process that is supposed to obey it, so an agent can satisfy its own reading of an instruction by writing a sentence asserting the outcome. Hand-writing a harness fixes enforcement at the cost of the authoring surface, and leaves two independent representations of one procedure free to drift. The resulting defect class is invisible to artifact-level testing: a financial-compliance report can carry reasonable figures and conclusions and still be invalid if the agent never retrieved the authoritative records, recalculated the totals, or checked the result against policy. Prior runtime supervision work adds monitors and guards that can block a disallowed action, but detection does not make a required action occur.

    Methodology Compilation runs in two stages over AG-IR, a typed agentic IR whose nodes carry an owner stating whether code or the model executes the step, a modality recording how binding the source instruction was, and provenance to the mandating sentence. Extraction is the only stage containing a model and admits a rule only when a verbatim quotation supports it; six compile gates then reject an IR that points at content instead of embodying it, omits a mandated deliverable, fails to lower and type check, folds a mandatory rule into another slot's interior, or leaves a human-gated decision to model judgment. Lowering is deterministic, mapping each primitive onto an Object-Spatial Programming construct in Jac: nodes become node archetypes, edges fix walker traversal order, mandatory rules become abilities bound to node entry, model-owned nodes become typed llm() slots whose return type makes an out-of-range answer a type error, and forbidden rules lower to nothing, so the guarantee comes from the absence of a path. STRUCT-COV statically reports, per mandatory rule, whether the emitted module realizes it as a code gate, a dedicated model slot, monolithically inside another slot, or not at all, failing the last two. Evaluation covers 30 skills across document and tooling, software process, and governance and compliance families, with three process-scenario tasks per skill repeated three times per arm in isolated sandboxes, on gpt-4o and gpt-5, scored by Applicable-Mandate Compliance with a judge reading the full run and, for the harness, its node-path trace.

    Results On gpt-4o the compiled harness performs 86% of mandated steps against 56% for prose, matching or exceeding prose on all 30 skills with 28 strict wins, 2 ties and no losses, and completing the full applicable procedure in 65% of runs against 28%, a factor of 2.3. Moving to gpt-5 leaves the harness at 86% while prose rises to 68%, so the advantage narrows from 30 points to 17; the harness artifact is byte-identical across both sweeps, which is what makes the guarantee model-independent by construction. Median token cost is 0.58x prose, cheaper on 24 skills and as low as 0.02x on a nearly all-code skill, with the exceptions concentrated in skills organized around a genuine tool-using loop, reaching 7.64x on using-superpowers and 3.09x on systematic-debugging, where the prose agent was cheaper because it truncated or skipped the loop. The compiler realizes 37% of mandates as code-owned gates on average, 32% to 44% by family, and the four skills where the harness loses on gpt-5 are judgment-heavy ones with little to compile.

  24. ChainSWE: Benchmarking Coding Agents on Multi-Bug Software Maintenance

    Jin, Qirui · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract Real maintenance is a stream of related fixes on a codebase you yourself just changed. Every SWE benchmark instead resets the repository, hands over one self-contained issue, and grades it in isolation. ChainSWE keeps the repository, orders real issues chronologically within a project, and asks whether an agent's earlier patches leave a usable starting point for the later ones. Performance drops by up to 70% as chains get longer, and roughly half the downstream failures are caused by the agent's own accumulated edits rather than by the bug in front of it.

    Motivation Agent performance has improved rapidly across SWE-bench, SWE-bench Live, SWE-rebench, SWE-Gym and SWE-bench Pro, but all of them share one protocol: a fresh container reset to a clean base commit, one problem statement, a fresh conversation, and grading against pre-written tests from that issue. This measures single-shot issue resolution and deliberately removes the cross-task dependencies that characterize real maintenance. It says nothing about whether an agent avoids unnecessary edits, resolves latent multi-file dependencies, or manages context across an evolving sequence of related fixes. In practice an engineer must leave the codebase both correct for the current issue and usable as the starting point for future work, reading surrounding context and adapting to the repository state they inherit. Adjacent sequential benchmarks (AgentBench, AgentBoard, WebArena, OSWorld) and long-conversation memory benchmarks are sequential but reset between tasks or track dialogue state rather than persistent changes to an external artifact.

    Methodology Instances are pooled from six repository-level SWE benchmarks, all Python with pre-built Docker images for reproducible test execution. Per repository, instances are sorted by commit date and grouped by a sliding window into chains when they overlap in the code they touch, then validated by containerized re-execution: replay the accumulated gold patches, run the bug's test commands, and require that all FAIL_TO_PASS tests pass with no PASS_TO_PASS regression. A chain is accepted only if every filter stage clears. Length-2 chains are dropped during data selection. At evaluation step k the agent receives only the k-th issue statement and works on the repository state produced by the previous steps, with the Docker image reset only to the base commit of the first bug in the chain. Scoring is both per-bug, by chain position, and full-chain, where a chain counts as successful only if every bug in it is resolved, alongside average API cost per task and per chain. Seven state-of-the-art models are evaluated on a fixed SWE-EDIT scaffold under three context-management configurations. Failures at a downstream position that are attributable to accumulated agent-generated state rather than the intrinsic difficulty of the current bug are labeled chain errors.

    Results The dataset is 100 chains, 304 instances, 54 repositories, with chain lengths from 3 to 5 after selection. Performance falls by up to 70% relative to the single-issue setting, and the decline is steepest at the deepest chain positions. Chain errors account for 318 of the 663 downstream BASELINE failures at positions 2 and 3, 48% overall, growing with depth from 43% at position 2 to 52% at position 3. On context management, conversation memory across bugs yields only a marginal gain and only for GPT-5.5, while summarization and sub-agent delegation both consistently degrade performance. The two named failure mechanisms are illustrated by concrete chains: amaranth for overshoot, where three unrelated backend files rewritten during an earlier fix cause all eight downstream tests to fail, and MONAI for undershoot, where omitting three supporting refactors from a five-file gold patch breaks a downstream test despite a correct modification to the target file. The authors read the results as pointing at dependency tracking, long-horizon reasoning and repository-state management in agent harnesses rather than at further gains in isolated issue resolution.

Open questions and limits

The arguments that are not settled: whether the specification bottleneck can be automated at all, what a probabilistic writer of deterministic specifications means for trust, who verifies the verifier, and whether any of this is cheap enough to adopt.

Key threads
  • The bottleneck moved from writing code to stating what the code should do, and the field has not agreed on whose job that is.
  • A probabilistic model producing specifications that a deterministic verifier then trusts is an epistemological problem, not only an engineering one.
  • The trusted base grows in importance as proof volume becomes machine-written.
  • Adoption evidence is thin: learnability studies, productivity claims and industrial retrofits are each one or two papers deep.
  • The tools are turning back on the agents themselves, with behavioral contracts and capability-containment proofs for agent skills.
Open gaps
  • No study measures the end-to-end cost of a verified agent workflow against the cost of the review it replaces.
  • Retrofit onto mature codebases, the situation most teams are in, is represented by a single case study here.
  1. Leveraging Large Language Models to Boost Dafny's Developers Productivity

    Silva · 2024 2 cites arXiv

    Synthesis

    Proposes using LLMs to reduce the cost that keeps verification-aware languages out of ordinary practice.

    Why it matters States the adoption thesis this whole area rests on, so it is worth reading as a claim to be tested.

  2. The Fusion of Large Language Models and Formal Methods for Trustworthy AI Agents: A Roadmap

    Zhang · 2024 20 cites arXiv

    Synthesis

    A roadmap for fusing LLMs with formal methods toward trustworthy AI agents.

    Why it matters Useful as an agenda, and useful for seeing which of its proposed steps have since been attempted.

  3. Can Large Language Models Help Students Prove Software Correctness? An Experimental Study with Dafny

    Carreira · 2025 0 cites arXiv

    Synthesis

    Experimental study of whether LLMs help students prove software correctness in Dafny.

    Why it matters Learnability data, which decides adoption more than raw capability does.

  4. Grammars of Formal Uncertainty: When to Trust LLMs in Automated Reasoning Tasks

    Ganguly · 2025 4 cites arXiv

    Synthesis

    Investigates failure modes when probabilistic models produce formal specifications that deterministic verification then trusts.

    Why it matters The epistemological problem underneath every pipeline here, studied rather than asserted.

  5. Rethinking Autonomy: Preventing Failures in AI-Driven Software Engineering

    Navneet · 2025 6 cites arXiv

    Synthesis

    Examines failure prevention in AI-driven software engineering and where autonomy should stop.

    Why it matters Argues the control question directly instead of assuming more autonomy is the goal.

  6. Agent Behavioral Contracts: Formal Specification and Runtime Enforcement for Reliable Autonomous AI Agents

    Pratap Bhardwaj · 2026 12 cites arXiv

    Synthesis

    Formal specification and runtime enforcement of behavioral contracts for autonomous agents.

    Why it matters Points the tooling at the agent itself rather than at the code it produces.

  7. Autonomous Research Agents: A Survey of AI Scientists and the Verification Gap

    Ding · 2026 0 cites arXiv

    Synthesis

    Surveys autonomous research agents and names verification as the unclosed gap.

    Why it matters The same specification gap seen from the science-automation side, which shows it is not a software-engineering quirk.

  8. Foundational VeriFast: Pragmatic Certification of Verification Tool Results through Hinted Mirroring

    Jacobs · 2026 0 cites arXiv

    Synthesis

    Certifies the results of a verification tool by mirroring them into a foundational setting (Foundational VeriFast).

    Why it matters Who verifies the verifier, answered pragmatically. The trusted base matters more once proofs are machine-written.

  9. Intent Formalization: A Grand Challenge for Reliable Coding in the Age of AI Agents

    Lahiri · 2026 4 cites arXiv

    Synthesis

    Frames the gap between informal intent and precise program behavior as the grand challenge for reliable coding with agents.

    Why it matters The best single statement of why this explorer exists. The bottleneck moved from writing code to saying what the code should do.

  10. Learning-Infused Formal Reasoning: From Contract Synthesis to Artifact Reuse and Formal Semantics

    Beg · 2026 1 cites arXiv

    Synthesis

    A research vision for the next generation of formal methods built around learning, from contract synthesis to formal semantics.

    Why it matters Sets out what a formal-methods agenda looks like when learned components are assumed rather than resisted.

  11. Methods for Formal Verification of Agent Skills: Three Layers Toward a Mechanically Checkable Capability-Containment Proof

    Metere · 2026 0 cites arXiv

    Synthesis

    Gives a mechanically checkable capability-containment argument for agent skill manifests.

    Why it matters The strongest current attempt at proving something about what an agent is allowed to do.

  12. Show Me The Money: An Exercise in Proof-Driven Software Understanding

    Tafese · 2026 0 cites arXiv

    Synthesis

    Applies formal reasoning to a mature industrial C++ codebase rather than to a designed-for-verification system.

    Why it matters Most formal methods case studies start at design time; this is the retrofit case almost everyone actually faces.

  13. WiseSpec: Requirements-Driven Agents for Code Generation

    Tian, Zhao · 2026 0 cites arXiv

    Synthesis

    Plain-language abstract Coding agents are usually improved by giving them better tools, skills and workflows. Tian's argument is that the input is the weaker link: task descriptions are ambiguous, incomplete or missing context, so even a strong model is inferring intent from an unreliable statement of it. WiseSpec builds the requirement instead of consuming the prompt, scores that requirement by generating code and tests from it and running them, and refines it until the score stops improving. On three SWE-bench variants and two models it beats Agentless, Trae-agent and Claude Code on both syntactic and functional correctness.

    Motivation Work on repository-level code generation has concentrated on how a model solves a task rather than on the quality of what it is asked to solve. Most methods consume the original problem description directly, which assumes that description faithfully specifies intended behavior. The paper's position is that this assumption does not hold in practice: descriptions are frequently ambiguous, incomplete or missing critical context, and deficient requirements propagate errors downstream into the implementation. Requirements engineering already treats specification quality as a first-class step, but its usual difficulty applies here too, since requirements written in structured natural language carry no formal semantics and cannot be evaluated directly or quantitatively.

    Methodology WiseSpec has three components. Requirement generation simulates program comprehension: starting from the task description it iteratively collects code snippets from the target codebase, expanding retrieval along program dependencies and using what it has already gathered to guide the next step, then organizes the fragments through a requirement DSL of nine primary attributes and seventeen sub-attributes covering both architectural and fine-grained implementation detail. Requirement quality assessment reformulates the scoring problem as execution-based code evaluation: generate executable code and tests from the requirement, run them, and treat execution correctness as a proxy for requirement quality, with a strict criterion that the code is accepted only if it passes all generated tests. Requirement refinement diagnoses failures into three mutually exclusive categories, Conflict, Omission and Ambiguity, applies predefined alignment rules to produce actionable feedback, re-assesses, keeps the highest-scoring candidate at each iteration under a greedy strategy, and records feedback that failed to improve the score as counterexamples for later iterations. Evaluation compares against Agentless, Trae-agent and Claude Code on 100 randomly sampled instances each from SWE-bench-Lite, SWE-bench-Verified and SWE-bench-Pro, using DeepSeek-V3.2 and Qwen-Plus-2025-12-01, scored on %Applied (the patch applies) and %Resolved (it passes the gold tests).

    Results WiseSpec was best in all six settings of three benchmarks by two models, improving %Resolved by 2 to 29 points and %Applied by 11 to 63 points over the baselines, with a Wilcoxon signed-rank test at alpha 0.05 giving p below 2.5e-4 for both metrics. The %Applied gains are the largest: WiseSpec reached 100%, 93% and 100% with DeepSeek and 100%, 98% and 99% with Qwen, against 72%, 77% and 84% for Claude Code with DeepSeek. On functional correctness the margins are narrower, for instance 39% against 36% on SWE-bench-Lite with DeepSeek, and widest on the hardest benchmark, 35% against 24% on SWE-bench-Pro. A check on a stronger model narrows it further: on SWE-bench-Pro with Claude-Opus-4.8, Claude Code scored 53% and WiseSpec 56%. The reported average improvement in %Resolved is 13.17%.

A reading path

Start here and read in order; the path moves from foundations toward the open edge.

Open problems

Where the literature is thin and the next contribution could land.

  1. Port exclusion-based grading past Rocq

    Coins scores a Rocq specification by instantiating it on trusted tests and discharging concrete proof obligations, and POSTCONDBENCH adds completeness alongside correctness. Nothing comparable exists for ACSL, VeriFast or Verus, where evaluation is still pass-the-verifier. The same instantiate-and-discharge trick should port, and it would separate the specifications that constrain behavior from the ones that merely typecheck.

  2. Frame conditions as the missing half of generated contracts

    Richter shows postconditions alone rarely let a verifier close a proof, and the patch-verbosity work shows agents change more than they were asked to. Both point at frame conditions, which almost no generation paper produces and no benchmark scores. An agent that stated what it will not modify would be checkable in a way that a test suite cannot express.

  3. Counterexamples, not error strings, as the feedback channel

    ExVerus turns failed Verus proofs into concrete counterexamples and Balestra uses model-invented counterexamples to kill overfitted invariants. Most loops still feed raw verifier text back to the model. A shared counterexample-feedback layer across Dafny, Verus and Frama-C would let those results be compared rather than re-derived per tool.

  4. Measure whether proving skill transfers from mathematics to programs

    miniF2F, ProofNet and the DeepSeek-Prover line define proving capability on mathematics, while miniCodeProps and Vero define it on code. No study holds the model fixed and measures the drop across that boundary, so it is unclear whether software verification needs different training or only different retrieval.

  5. A shared trusted base for machine-written proofs

    The verified Dafny verification-condition generator and Foundational VeriFast both react to soundness bugs in production verifiers. As proof volume becomes machine-generated, the checker becomes the only thing standing between an agent and a false guarantee, and a cross-tool statement of what is actually trusted does not exist.

  6. Abstention as a first-class output

    SCP-NL2TL abstains on unreliable temporal-logic translations and Saji Mathews argues repair agents should decline uncertain issues. Both are isolated. A specification generator with a calibrated 'I cannot state this formally' output would be more useful than one with a higher average score, and would make human review targetable.

  7. Specification maintenance under change

    KVerus and RagVerus reach repository scale, but the literature is almost entirely about producing a proof once. Nothing measures the cost of keeping specifications and proofs alive across refactors, which is where verification effort actually accumulates in practice.

  8. Contamination-resistant evaluation for verification tasks

    SWE-Bench+ found leakage and weak tests behind a large share of reported passes, and LiveFMBench answers with live construction. Verification benchmarks have the same exposure with smaller corpora, and Dafny and Verus training sets overlap heavily with the benchmarks used to score them.