Data Race Detection by Digest-Driven Abstract Interpretation (Extended Version)

📅 2025-11-14
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
This paper addresses the static verification of data races in concurrent programs. We propose an abstraction-interpreter-based, summary-driven analysis method. Our core innovation is a thread-modularized local trace semantics that abstracts program execution histories into multidimensional summaries—comprising lock sets, thread identifiers, and join relations—and formally encodes conflict exclusion conditions to achieve high-precision race detection. Compared to conventional lock-set analysis, our approach significantly improves concurrency sensitivity and reasoning capability. Experimental evaluation on the SV-COMP benchmark demonstrates that integrating these multidimensional summaries increases the number of correctly solved verification tasks by over fivefold, thereby validating both the effectiveness and practicality of the method.

Technology Category

Application Category

📝 Abstract
Sound static analysis can prove the absence of data races by establishing that no two conflicting memory accesses can occur at the same time. We repurpose the concept of digests -- summaries of computational histories originally introduced to bring tunable concurrency-sensitivity to thread-modular value analysis by abstract interpretation, extending this idea to race detection: We use digests to capture the conditions under which conflicting accesses may not happen in parallel. To formalize this, we give a definition of data races in the thread-modular local trace semantics and show how exclusion criteria for potential conflicts can be expressed as digests. We report on our implementation of digest-driven data race detection in the static analyzer Goblint, and evaluate it on the SV-COMP benchmark suite. Combining the lockset digest with digests reasoning on thread ids and thread joins increases the number of correctly solved tasks by more than a factor of five compared to lockset reasoning alone.
Problem

Research questions and friction points this paper is trying to address.

Detects data races using digest-driven abstract interpretation methods
Formalizes race conditions in thread-modular local trace semantics
Improves analysis precision by combining multiple digest reasoning techniques
Innovation

Methods, ideas, or system contributions that make the work stand out.

Digest-driven abstract interpretation for race detection
Combining lockset, thread id, and join digests
Formalizing race conditions in thread-modular semantics
🔎 Similar Papers
No similar papers found.