SandTable

Rui-Ze Tang,Xudong Sun,Yu Huang,Y. Wei,Lingzhi Ouyang,Xiaoxing Ma
DOI: https://doi.org/10.1145/3627703.3650077
2024-01-01
Abstract:Implementation-level distributed system model checkers (DMCKs) have proven valuable in verifying the correctness of real distributed systems. However, they primarily focus on state space reduction, and often have a bottleneck on another crucial dimension: exploration speed. To scale DMCK, we introduce SandTable, a technique for lifting state-space exploration from the implementation level to the specification level, and confirming bugs at the implementation level. We made SandTable practical through a methodology consisting of four essential parts: (1) writing specifications that adhere to the implementation, (2) checking conformance to enhance specification quality and reduce false positives and false negatives, (3) exploring the state space with heuristics for effectiveness and efficiency, and (4) confirming bugs and verifying their fixes in the implementation.
What problem does this paper attempt to address?