Pith. sign in

REVIEW 3 cited by

Ranking LLM-Generated Loop Invariants for Program Verification

Not yet reviewed by Pith; the record is open.

This paper has not been read by Pith yet. Machine review is queued; the pith claim, tier, and objections will appear here once it completes.

SPECIMEN: schema-true, not a live event

T0 review · schema-true

One-sentence machine reading of the paper's core claim.

pith:XXXXXXXX · record.json · timestamp

arxiv 2310.09342 v3 pith:E4SLF3F3 submitted 2023-10-13 cs.PL cs.AIcs.CLcs.SE

classification cs.PLcs.AIcs.CLcs.SE
keywords invariantscorrectloopprogramrankercallsexperimentalgenerated
verification ladder T0 review T1 audit T2 compute T3 formal
0 comments
read the original abstract

Synthesizing inductive loop invariants is fundamental to automating program verification. In this work, we observe that Large Language Models (such as gpt-3.5 or gpt-4) are capable of synthesizing loop invariants for a class of programs in a 0-shot setting, yet require several samples to generate the correct invariants. This can lead to a large number of calls to a program verifier to establish an invariant. To address this issue, we propose a {\it re-ranking} approach for the generated results of LLMs. We have designed a ranker that can distinguish between correct inductive invariants and incorrect attempts based on the problem definition. The ranker is optimized as a contrastive ranker. Experimental results demonstrate that this re-ranking mechanism significantly improves the ranking of correct invariants among the generated candidates, leading to a notable reduction in the number of calls to a verifier. The source code and the experimental data for this paper are available in \url{https://github.com/microsoft/NeuralInvariantRanker}.

Discussion (0). Sign in to comment.

Forward citations

Cited by 3 Pith papers

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score.

  1. Diversifying to Verify: When Task-Equivalent Programs Differ in Verifiability

    cs.SE 2026-07 conditional novelty 6.0 of 10

    Diverse recursive and imperative array/list implementations of the same task, paired with frozen representation-specific contracts and bounded Why3 repair, raise task-level verification to 67.1% versus lower rates for...

  2. AutoReSpec: A Framework for Generating Specification using Large Language Models

    cs.SE 2026-04 conditional novelty 6.0 of 10

    AutoReSpec dynamically pairs LLMs by control-flow type and uses verifier-guided collaborative refinement to produce 67/72 verifiable JML specs with higher success probability and completeness than prior tools.

  3. Locus: Agentic Predicate Synthesis for Directed Fuzzing

    cs.CR 2025-08 conditional novelty 6.0 of 10

    Locus uses an LLM agent to synthesize and validate intermediate predicates that make directed fuzzing reach target bug states faster, reporting an average 41.6x speedup across eight fuzzers.

Pith tools