Just Verification of Mutual Exclusion Algorithms
Rob van Glabbeek, Bas Luttik, Myrthe Spronck

TL;DR
This paper employs model checking to verify the correctness of various mutual exclusion algorithms, considering different assumptions about shared register communication and using justness as a completeness criterion.
Contribution
It introduces a verification approach for mutual exclusion algorithms that accounts for atomic and non-atomic shared registers using justness, and suggests improvements based on counterexamples.
Findings
Several algorithms violate correctness properties under certain assumptions.
Using justness helps eliminate spurious counterexamples in verification.
Proposed improvements enhance algorithm correctness.
Abstract
We verify the correctness of a variety of mutual exclusion algorithms through model checking. We look at algorithms where communication is via shared read/write registers, where those registers can be atomic or non-atomic. For the verification of liveness properties, it is necessary to assume a completeness criterion to eliminate spurious counterexamples. We use justness as completeness criterion. Justness depends on a concurrency relation; we consider several such relations, modelling different assumptions on the working of the shared registers. We present executions demonstrating the violation of correctness properties by several algorithms, and in some cases suggest improvements.
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.
Taxonomy
TopicsDistributed systems and fault tolerance · DNA and Biological Computing · Formal Methods in Verification
