Satisfiability Modulo Ordering Consistency Theory for SC, TSO, and PSO Memory Models.

Hongyu Fan,Zhihang Sun,Fei He
DOI: https://doi.org/10.1145/3579835
IF: 1.714
2023-01-01
ACM Transactions on Programming Languages and Systems
Abstract:Automatically verifying multi-threaded programs is difficult because of the vast number of thread interleavings, a problem aggravated by weak memory consistency. Partial orders can help with verification because they can represent many thread interleavings concisely. However, there is no dedicated decision procedure for solving partial-order constraints. In this article, we propose a novel ordering consistency theory for concurrent program verification that is applicable not only under sequential consistency, but also under the TSO and PSO weak memory models. We further develop an efficient theory solver, which checks consistency incrementally, generates minimal conflict clauses, and includes a custom propagation procedure. We have implemented our approach in a tool, called Zord , and have conducted extensive experiments on the SV-COMP 2020 ConcurrencySafety benchmarks. Our experimental results show a significant improvement over the state-of-the-art.
What problem does this paper attempt to address?