Correctness Witnesses for Concurrent Programs: Bridging the Semantic Divide with Ghosts

Julian Erhard, Manuel Bentele, Matthias Heizmann, Dominik Klumpp, Simmo Saan, Frank Schüssele, Michael Schwarz, Helmut Seidl, Sarah Tilscher, Vesal Vojdani

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Static analyzers are typically complex tools and thus prone to contain bugs themselves. To increase the trust in the verdict of such tools, witnesses encode key reasoning steps underlying the verdict in an exchangeable format, enabling independent validation of the reasoning by other tools. For the correctness of concurrent programs, no agreed-upon witness format exists—in no small part due to the divide between the semantics considered by analyzers, ranging from interleaving to thread-modular approaches, making it challenging to exchange information. We propose a format that leverages the well-known notion of ghosts to embed the claims a tool makes about a program into a modified program with ghosts, such that the validity of a witness can be decided by analyzing this program. Thus, the validity of witnesses with respect to the interleaving and the thread-modular semantics coincides. Further, thread-modular invariants computed by an abstract interpreter can naturally be expressed in the new format using ghost statements. We evaluate the approach by generating such ghost witnesses for a subset of concurrent programs from the SV-COMP benchmark suite, and pass them to a model checker. It can confirm 75% of these witnesses—indicating that ghost witnesses can bridge the semantic divide between interleaving and thread-modular approaches.

Original languageEnglish
Title of host publicationVerification, Model Checking, and Abstract Interpretation - 26th International Conference, VMCAI 2025, Proceedings
EditorsKrishna Shankaranarayanan, Sriram Sankaranarayanan, Ashutosh Trivedi
PublisherSpringer Science and Business Media Deutschland GmbH
Pages74-100
Number of pages27
ISBN (Print)9783031826993
DOIs
StatePublished - 2025
Event26th International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI 2025 - Denver, United States
Duration: 20 Jan 202521 Jan 2025

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume15529 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference26th International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI 2025
Country/TerritoryUnited States
CityDenver
Period20/01/2521/01/25

Keywords

  • Abstract Interpretation
  • Concurrency
  • Correctness Witnesses
  • Ghost Variables
  • Model Checking
  • Software Verification

Fingerprint

Dive into the research topics of 'Correctness Witnesses for Concurrent Programs: Bridging the Semantic Divide with Ghosts'. Together they form a unique fingerprint.

Cite this