Skip to main content

Formal Verification of Liveness Properties in Causal Order Broadcast Systems Using Event-B

  • Conference paper
  • First Online:
Proceedings of Second Doctoral Symposium on Computational Intelligence

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 1374))

Abstract

Distributed systems have complex designs which are difficult to understand and verify. A rigorous specification of such systems using mathematical techniques such as formal methods is required to understand their precise behavior. Safety property implies that the system is free from deadlocks and safe with respect to the invariants, while the liveness property ensures that the system eventually makes progress. Various group communication protocols are one of the building blocks of reliable distributed systems applications. One of the message ordering protocols is the causal order broadcast in which message delivery at various processes takes places as per causal order. This paper presents how the liveness properties are preserved by message passing in causal order using Event-B. An incremental model for causal order-based message passing is constructed using Event-B specification. The properties of causal order broadcast are first specified using an abstract model, and then, details are added with each refinement step. Liveness property is ascertained by ensuring enabledness preservation and non-divergence among various refinements and is expressed as invariants in the model of causal order broadcast system.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 189.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 249.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

Institutional subscriptions

Similar content being viewed by others

References

  1. Kindler, E. (1994). Safety and liveness properties: A survey. Bulletin of the European Association for Theoretical Computer Science, 53, 268–272.

    Google Scholar 

  2. Lamport, L. (1977). Proving the correctness of multiprocess programs. IEEE Transactions on Software Engineering, 3(2), 125–143.

    Article  MathSciNet  Google Scholar 

  3. Abrial, J. R. (1996) The B Book. Assigning programs to meanings. Cambridge University Press, Cambridge.

    Google Scholar 

  4. Butler, M., & Yadav, D. (2008). An incremental development of mondex system in Event-B. Formal Aspects of Computing, 20(1), 61–77.

    Article  Google Scholar 

  5. Bodeveix, J. P., Dieumegard, A., & Filali, M. (2020). Event-B formalization of a variability-aware component model patterns framework. Science of Computer Programing, 199, 102511.

    Article  Google Scholar 

  6. Lahbib, A., et al. (2020). An event-B based approach for formal modelling and verification of smart contracts. In International Conference on Advanced Information Networking and Applications. Springer.

    Google Scholar 

  7. Metayer, C., Abrial, J. R., & Voison, L. (2005). Event-B language. RODIN deliverables 3.2, http://rodin.cs.ncl.ac.uk/deliverables/D7.pdf.

  8. Suryavanshi, R., & Yadav, D. (2012). Rigorous design of lazy replication system using Event-B. In International Conference on Contemporary Computing. Springer.

    Google Scholar 

  9. Girish C., & Yadav, D. (2010). Analyzing data flow in trustworthy electronic payment systems using event-B. In International Conference on Data Engineering and Management. Springer.

    Google Scholar 

  10. Yadav, D., & Butler, M. (2009). Formal development of a total order broadcast for distributed transactions using Event-B. Method, Models and Tool for Fault-Tolerance Lecture Notes in Computer Science (LNCS), 5454, 152–176.

    Article  Google Scholar 

  11. Lahouij, A., et al. (2020). An Event-B based approach for cloud composite services verification. Formal Aspects of Computing, 32(4), 361–393.

    Article  Google Scholar 

  12. Yadav, D., & Butler, M. (2006). Rigorous design of fault-tolerant transactions for replicated database systems using Event-B. LNCSIn M. Butler, C. B. Jones, A. Romanovsky, & E. Troubitsyna (Eds.), Fault-Tolerant Systems (Vol. 4157, pp. 343–363). Springer.

    Google Scholar 

  13. B Core UK Ltd. B-Toolkit Manuals (1999)

    Google Scholar 

  14. Steria, Atelier-B User and Reference Manuals (1997)

    Google Scholar 

  15. Abrial, J. R., & Cansell, D. (2003) Click’n’Prove—Interactive Proofs within Set Theory.

    Google Scholar 

  16. Abrial, J.-R., Butler, M., Hallerstede, S., Hoang, T. S., Mehta, F., & Voisin Rodin, L. (2010). an open toolset for modelling and reasoning in Event-B. International Journal on Software Tools for Technology Transfer (STTT), 12(6), 447466.

    Google Scholar 

  17. Lamport, L. (1978). Time, clocks, and the ordering of events in a distributed system. Communication, ACM, 21(7), 558–565.

    Article  Google Scholar 

  18. Yadav, D., & Butler, M. (2007). Formal specifications and verification of message ordering properties in a broadcast system using Event-B. In Technical Report. School of Electronics and Computer Science, University of Southampton.

    Google Scholar 

  19. Birman, K., Schiper, A., & Stephenson, P. (1991). Lightweight causal and atomic group multicast. ACM Transactions Computer System, 9(3), 272–314.

    Article  Google Scholar 

  20. Pooja, Y., Suryavanshi, R., Singh, A. K., & Yadav, D. (2019). Formal verification of causal order-based load distribution mechanism using Event-B. Data engineering and applications (pp. 229–241). Springer.

    Google Scholar 

  21. Abrial, J.-R. (1996). Extending B without changing it (for developing distributed systems). In H. Habrias (Ed.), First B Conference.

    Google Scholar 

  22. Yadav, D., & Butler, M. Formal development of broadcast systems and verification of ordering properties using Event-B.

    Google Scholar 

  23. Yadav, D., & Butler, M. (2009). Verification of liveness properties in distributed systems. In International Conference on Contemporary Computing (pp. 625–636). Springer.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pooja Yadav .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Yadav, P., Suryavanshi, R., Yadav, D. (2022). Formal Verification of Liveness Properties in Causal Order Broadcast Systems Using Event-B. In: Gupta, D., Khanna, A., Kansal, V., Fortino, G., Hassanien, A.E. (eds) Proceedings of Second Doctoral Symposium on Computational Intelligence . Advances in Intelligent Systems and Computing, vol 1374. Springer, Singapore. https://doi.org/10.1007/978-981-16-3346-1_16

Download citation

Publish with us

Policies and ethics