mlsanityData to 7 Oct 2026

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

arXiv 2606.20969 ↗First posted 18 Jun 2026cs.AI cs.SEcited by 0

Not on the map. Why?

Abstract (arXiv)

Generating formal specifications for C programs remains a challenge in formal verification due to the manual effort, expertise, and semantic precision required. While recent advancements in large language models (LLMs) offer promise in automating specification synthesis, current approaches often lack semantic depth and produce unverifiable or incomplete contracts. To address these limitations, we introduce AutoACSL, a novel framework that integrates LLM prompting with semantic features extracted from Code Property Graphs (CPGs). AutoACSL performs static analyses to extract key semantic elements, including arithmetic operations, loop and recursion structures, and return value propagation, which are encoded into structured prompts. These prompts enable the LLM not only to generate normal behavioral specifications but also to include constraints that prevent inputs leading to runtime errors. AutoACSL employs a feedback-driven synthesis loop, where candidate specifications are verified using Frama-C/WP and refined iteratively until verification succeeds or a termination condition is met. Evaluated on 604 programs drawn from diverse datasets, AutoACSL achieves a 98% specification generation success ratio and a 96% full proof ratio when paired with Gemini-3. Compared to a code-only baseline, AutoACSL improves the full proof ratio by 24.7% to 51.7% across four LLMs (GPT-o4 Mini, GPT-5.2, Grok-4.1, and Gemini-3), demonstrating that integrating large language models with CPG-based static analysis substantially enhances both generation robustness and verification effectiveness for automated ACSL specification synthesis.

Key facts. No citing papers in the map yet (data through 7 Oct 2026). Builds on 13 of its 26 references that are in the map. First posted on arXiv 18 Jun 2026.

Builds on

13 of 26 references.

References · 13

  1. 2024Enchanting Program Specification Synthesis by Large Language Models using Static Analysis and Program Verificationcited by 55
  2. 2024SpecGen: Automated Generation of Formal Program Specifications via Large Language Modelscited by 51
  3. 2024PropertyGPT: LLM-driven Formal Verification of Smart Contracts through Retrieval-Augmented Property Generationcited by 36
  4. 2024Automated Proof Generation for Rust Code via Self-Evolutioncited by 31
  5. 2023Can ChatGPT support software verification?cited by 14
  6. 2025ClassInvGen: Class Invariant Synthesis using Large Language Modelscited by 11
  7. 2024Specify What? Enhancing Neural Specification Synthesis by Symbolic Methodscited by 6
  8. 2025A Tale of 1001 LoC: Potential Runtime Error-Guided Specification Synthesis for Verifying Large-Scale Programscited by 6
  9. 2015An experimental Study using ACSL and Frama-C to formulate and verify Low-Level Requirements from a DO-178C compliant Avionics Projectcited by 4
  10. 2025Next Steps in LLM-Supported Java Verificationcited by 3
  11. 2025AutoDeduct: A Tool for Automated Deductive Verification of C Codecited by 2
  12. 2025Seeking Specifications: The Case for Neuro-Symbolic Specification Synthesiscited by 2
1 more
  1. 2014SPEEDY: An Eclipse-based IDE for invariant inferencecited by 1

Built on by

Not cited yet.