Evaluating the Ability of GPT-4o to Generate Verifiable Specifications in VeriFast

Static verification is a powerful method for enhancing software quality, but it demands significant human labor and resources. This is particularly true of static verifiers that reason about heap manipulating programs using an ownership logic. LLMs have shown promise in a number of software engineering activities, including code generation, test generation, proof generation for theorem provers, and specification generation for static verifiers. However, prior work has not explored how well LLMs can perform specification generation for specifications based in an ownership logic, such as separation logic. To address this gap, this paper explores OpenAI’s GPT-4o model’s effectiveness in generating specifications on C programs that are verifiable with VeriFast, a separation logic based static verifier. Our experiment employs three different types of user inputs as well as basic and Chain-of-Thought (CoT) prompting to assess GPT-4o’s capabilities. Our results indicate that the specifications generated by GPT-4o preserve functional behavior, but struggle to be verifiable. When the specifications are verifiable, they contain redundancies. Future directions are discussed to improve the performance.

Authors

Institutions

Publication Details

Published
2025-04-27
DOI
https://doi.org/10.1109/forge66646.2025.00035
Citations
1
Primary Topic
Scientific Computing and Data Management
Type
article
Field-Weighted Citation Impact
4.17
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Evaluating the Ability of GPT-4o to Generate Verifiable Specifications in VeriFast

Jenna DiVincenzo, Danning Xie, Xin Hu, Wen Fan et al.
1 citations
Scientific Computing and Data Management
4.17
article

Evaluating the Ability of GPT-4o to Generate Verifiable Specifications in VeriFast

Jenna DiVincenzo, Danning Xie, Xin Hu, Wen Fan, Marilyn Rego, Sanya Dod, Zhaorui Ni, Lin Tan
article en
1 citations

Abstract

Static verification is a powerful method for enhancing software quality, but it demands significant human labor and resources. This is particularly true of static verifiers that reason about heap manipulating programs using an ownership logic. LLMs have shown promise in a number of software engineering activities, including code generation, test generation, proof generation for theorem provers, and specification generation for static verifiers. However, prior work has not explored how well LLMs can perform specification generation for specifications based in an ownership logic, such as separation logic. To address this gap, this paper explores OpenAI’s GPT-4o model’s effectiveness in generating specifications on C programs that are verifiable with VeriFast, a separation logic based static verifier. Our experiment employs three different types of user inputs as well as basic and Chain-of-Thought (CoT) prompting to assess GPT-4o’s capabilities. Our results indicate that the specifications generated by GPT-4o preserve functional behavior, but struggle to be verifiable. When the specifications are verifiable, they contain redundancies. Future directions are discussed to improve the performance.

Purdue University West Lafayette (US), University of Michigan (US)
Openalex Percentile: Top 6%
Scientific Computing and Data Management
4.17
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Evaluating the Ability of GPT-4o to Generate Verifiable Specifications in VeriFast — Jenna DiVincenzo, Danning Xie, et al. · (2025) | TGRS Research Map | TGRS