Assurance of Distributed Algorithms and Systems: Runtime Checking of Safety and Liveness
arXiv:2008.09735 · doi:10.1007/978-3-030-60508-7_3
Abstract
This paper presents a general framework and methods for complete programming and checking of distributed algorithms at a high-level, as in pseudocode languages, but precisely specified and directly executable, as in formal specification languages and practical programming languages, respectively. The checking framework, as well as the writing of distributed algorithms and specification of their safety and liveness properties, use DistAlgo, a high-level language for distributed algorithms. We give a complete executable specification of the checking framework, with a complete example algorithm and example safety and liveness properties.
Small fixes to improve property specifications, including improvements not in the RV 2020 final version