Multi-Threaded Software Model Checking via Parallel Trace Abstraction Refinement

📅 2025-09-17
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
To address the prohibitively long verification time for safety properties in software model checking, this paper proposes a parallel trace abstraction method—the first to parallelize the abstraction refinement process on multicore CPUs, enabling concurrent analysis of multiple candidate counterexample traces. Grounded in abstract interpretation and trace abstraction theory, the approach implements path-sensitive symbolic execution and fine-grained concurrent task scheduling within Ultimate Automizer. Compared with conventional sequential analysis and the state-of-the-art parallel framework DSS, our method significantly reduces verification time across most benchmarks, while improving throughput and scalability. The core contribution lies in the novel parallelization of the abstraction refinement phase, which overcomes the inherent sequential dependency bottleneck in trace abstraction. This work establishes a new paradigm for efficient, automated software verification.

Technology Category

Application Category

📝 Abstract
Automatic software verification is a valuable means for software quality assurance. However, automatic verification and in particular software model checking can be time-consuming, which hinders their practical applicability e.g., the use in continuous integration. One solution to address the issue is to reduce the response time of the verification procedure by leveraging today's multi-core CPUs. In this paper, we propose a solution to parallelize trace abstraction, an abstraction-based approach to software model checking. The underlying idea of our approach is to parallelize the abstraction refinement. More concretely, our approach analyzes different traces (syntactic program paths) that could violate the safety property in parallel. We realize our parallelized version of trace abstraction in the verification tool Ulti mate Automizer and perform a thorough evaluation. Our evaluation shows that our parallelization is more effective than sequential trace abstraction and can provide results significantly faster on many time-consuming tasks. Also, our approach is more effective than DSS, a recent parallel approach to abstraction-based software model checking.
Problem

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

Parallelizing trace abstraction for software model checking
Reducing verification time using multi-core CPU capabilities
Analyzing multiple safety-violating program traces concurrently
Innovation

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

Parallel trace abstraction refinement
Analyzes safety-violating traces concurrently
Leverages multi-core CPUs for speed
🔎 Similar Papers
No similar papers found.