Computing on Anonymous Networks: Part I-Characterizing the Solvable Cases
IEEE Transactions on Parallel and Distributed Systems
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Computing anonymously with arbitrary knowledge
Proceedings of the eighteenth annual ACM symposium on Principles of distributed computing
A construction of distributed reference counting
Acta Informatica
Distributed Algorithms
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Local and global properties in networks of processors (Extended Abstract)
STOC '80 Proceedings of the twelfth annual ACM symposium on Theory of computing
Theoretical Computer Science - Applied semantics
Logics of Specification Languages (Monographs in Theoretical Computer Science. An EATCS Series)
Logics of Specification Languages (Monographs in Theoretical Computer Science. An EATCS Series)
Hi-index | 0.00 |
The paper reports on practical experience with the event B method, when developing case studies, especially distributed algorithms, which are very complex to verify in practice. Using the event B method, we develop a famous distributed algorithm, namely the leader election protocol for an acyclic network, generally known as the IEEE 1394. The algorithm exists and the refinement helps us to model it entirely in an elegant way. The final model is very close to the real algorithm. Only the termination proof is missing, since it is a probabilistic algorithm, as well as the contention resolution, which is solved at a global abstract level. Modelling is clearly fundamental and complex; it should be carried out by persons able to use refinement and to manage abstractions or more precisely abstract models and proofs. Advantages of such an incremental development are multiple what we quote here and that will be explained in detail. We replay the development to improve the proof process and we obtain new distributed algorithms solving the leader election protocol problem. Two strategies are used to build the new algorithms; a first strategy is called the contention resolution; a second strategy is called the contention prevention and is based on a priority among possible nodes of the network. The two resulting algorithms are cheaper than the original IEEE 1394 protocol and neither acknowledgement, nor confirmation is required. We show how the techniques of localisation help in deriving the final distributed algorithm. The paper is an extended version of the complete development of the two new algorithms and it aims to emphasize methodological aspects related to the event B development.