Towards General Loop Invariant Generation: A Benchmark of Programs with Memory Manipulation
Not on the map. Why?
Abstract (arXiv)
Program verification is vital for ensuring software reliability, especially in the context of increasingly complex systems. Loop invariants, remaining true before and after each iteration of loops, are crucial for this verification process. Traditional provers and machine learning based methods for generating loop invariants often require expert intervention or extensive labeled data, and typically only handle numerical property verification. These methods struggle with programs involving complex data structures and memory manipulations, limiting their applicability and automation capabilities. In this paper, we introduce a new benchmark named LIG-MM, specifically for programs with complex data structures and memory manipulations. We collect 312 programs from various sources, including daily programs from college homework, the international competition (SV-COMP), benchmarks from previous papers (SLING), and programs from real-world software systems (Linux Kernel, GlibC, LiteOS, and Zephyr). Based on LIG-MM, our findings indicate that previous methods, including GPT-4, fail to automate verification for these programs. Consequently, we propose a novel LLM-SE framework that coordinates LLM with symbolic execution, fine-tuned using self-supervised learning, to generate loop invariants. Experimental results on LIG-MM demonstrate that our LLM-SE outperforms state-of-the-art methods, offering a new direction toward automated program verification in real-world scenarios.
Key facts. Cited by 7 papers in the map (data through 14 Oct 2026). First posted on arXiv 17 Nov 2023.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2024: 1; 2025: 3; 2026: 3.
7 papers.
- 2024Enhancing Automated Loop Invariant Generation for Complex Programs with Large Language Modelscited by 7
- 2025HoarePrompt: Structural Reasoning About Program Correctness in Natural Languagecited by 7
- 2025Quokka: Accelerating Program Verification with LLMs via Invariant Synthesiscited by 4
- 2025INPROVF: Leveraging Large Language Models to Repair High-level Robot Controllers from Assumption Violationscited by 0
- 2026Agentic Separation Logic Specification Synthesiscited by 0
- 2026Privilege and confidentiality in generative AI workflowscited by 0
- 2026SkillForge: Compositional Skill Synthesis with Verification-in-the-Loop for Generating Formally Verified Dafny Programscited by 0
- 2026SkillForge: Compositional Skill Synthesis with Verification-in-the-Loop for Generating Formally Verified Dafny Programs30 Aug 2026
- 2026Privilege and confidentiality in generative AI workflows6 Jul 2026
- 2026Agentic Separation Logic Specification Synthesis26 May 2026
- 2025Quokka: Accelerating Program Verification with LLMs via Invariant Synthesis25 Sep 2025
- 2025HoarePrompt: Structural Reasoning About Program Correctness in Natural Language25 Mar 2025
- 2025INPROVF: Leveraging Large Language Models to Repair High-level Robot Controllers from Assumption Violations17 Mar 2025
- 2024Enhancing Automated Loop Invariant Generation for Complex Programs with Large Language Models13 Dec 2024