Skip to main content

Designing Old and New Distributed Algorithms by Replaying an Incremental Proof-Based Development

  • Chapter

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5115))

Abstract

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.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abrial, J.-R.: The B book - Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)

    MATH  Google Scholar 

  2. Abrial, J.-R., Cansell, D.: Click’n prove: Interactive proofs within set theory. In: Basin, D., Wolff, B. (eds.) TPHOLs 2003. LNCS, vol. 2758, pp. 1–24. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  3. Abrial, J.-R., Cansell, D., Méry, D.: A Mechanically Proved and Incremental Development of IEEE 1394 Tree Identify Protocol. Formal Aspects of Computing 14(3), 215–227 (2003)

    Article  Google Scholar 

  4. Angluin, D.: Local and global properties in networks of processors. In: Proceedings of the 12th Symposium on theory of computing, pp. 82–93 (1980)

    Google Scholar 

  5. Back, R.: On correct refinement of programs. Journal of Computer and System Sciences 23(1), 49–68 (1979)

    Article  MathSciNet  Google Scholar 

  6. Bjørner, D., Henson, M.C. (eds.): Logics of Specification Languages. EATCS Textbook in Computer Science. Springer, Heidelberg (2007)

    Google Scholar 

  7. Boldi, P., Vigna, S.: Computing anonymously with arbitrary knowledge. In: Proceedings of the 18th ACM Symposium on principles of distributed computing, pp. 181–188 (1999)

    Google Scholar 

  8. Cansell, D., Méry, D.: Formal and incremental construction of distributed algorithms: On the distributed reference counting algorithm. Theoretical Computer Science (2006)

    Google Scholar 

  9. Cansell, D., Méry, D.: The event-B Modelling Method: Concepts and Case Studies, pp. 33–140. Springer, Heidelberg (2007); See [6]

    Google Scholar 

  10. Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. The MIT Press, Cambridge (2000)

    Google Scholar 

  11. Kameda, T., Yamashita, M.: Computing on anonymous networks: Part i - characterizing the solvable cases. IEEE Transactions on parallel and distributed systems 7(1), 69–89 (1996)

    Article  Google Scholar 

  12. Lamport, L.: Specifying Systems: The TLA +  Language and Tools for Hardware and Software Engineers. Addison-Wesley, Reading (2002)

    Google Scholar 

  13. Lynch, N.: Distributed Algorithms. Morgan Kaufmann Publishers, Inc., San Francisco (1996)

    MATH  Google Scholar 

  14. Moreau, L., Duprat, J.: A Construction of Distributed Reference Counting. Acta Informatica 37, 563–595 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  15. Rosenstiehl, P., Fiksel, J.-R., Holliger, A.: Intelligent graphs. In: Read, R. (ed.) Graph theory and computing, pp. 219–265. Academic Press, New York (1972)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Cansell, D., Méry, D. (2009). Designing Old and New Distributed Algorithms by Replaying an Incremental Proof-Based Development. In: Abrial, JR., Glässer, U. (eds) Rigorous Methods for Software Construction and Analysis. Lecture Notes in Computer Science, vol 5115. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11447-2_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11447-2_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11446-5

  • Online ISBN: 978-3-642-11447-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics