High-level executable specifications of distributed algorithms

8Citations
Citations of this article
10Readers
Mendeley users who have this article in their library.
Get full text

Abstract

This paper describes a method for specifying complex distributed algorithms at a very high yet executable level, focusing in particular on general principles for making properties and invariants explicit while keeping the control flow clear. This is critical for understanding the algorithms and proving their correctness. It is also critical for generating efficient implementations using invariant-preserving transformations, ensuring the correctness of the optimizations. We have studied and experimented with a variety of important distributed algorithms, including well-known difficult variants of Paxos, by specifying them in a very high-level language with an operational semantics. In the specifications that resulted from following our method, critical properties and invariants are explicit, making the algorithms easier to understand and verify. Indeed, this helped us discover improvements to some of the algorithms, for correctness and for optimizations. © 2012 Springer-Verlag.

Cite

CITATION STYLE

APA

Liu, Y. A., Stoller, S. D., & Lin, B. (2012). High-level executable specifications of distributed algorithms. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 7596 LNCS, pp. 95–110). https://doi.org/10.1007/978-3-642-33536-5_11

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free