Constraint-Based Deadlock Checking of High-Level Specifications
Stefan Hallerstede, Michael Leuschel

TL;DR
This paper introduces a constraint-based deadlock detection method using the ProB solver, demonstrating its effectiveness in industrial case studies and outperforming SAT/SMT approaches in large models.
Contribution
It presents a novel constraint-based deadlock checking technique with specific improvements to ProB, validated through industrial case studies and comparative experiments.
Findings
ProB efficiently finds deadlocks in large, complex models.
The approach outperforms SAT and SMT solvers in this context.
Industrial case study confirms practical applicability.
Abstract
Establishing the absence of deadlocks is important in many applications of formal methods. The use of model checking for finding deadlocks in formal models is often limited. In this paper we propose a constraint-based approach to finding deadlocks employing the ProB constraint solver. We present the general technique, as well as various improvements that had to be performed on ProB's Prolog kernel, such as reification of membership and arithmetic constraints. This work was guided by an industrial case study, where a team from Bosch was modeling a cruise control system. Within this case study, ProB was able to quickly find counter examples to very large deadlock-freedom constraints. In the paper, we also present other successful applications of this new technique. Experiments using SAT and SMT solvers on these constraints were thus far unsuccessful.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
