Skip to main content

Towards a mechanically supported and compositional calculus to design distributed algorithms

  • Invited Paper
  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 859))

Abstract

This paper presents a compositional extension of the programming calculus UNITY, which is used to design distributed programs. As the extension is compositional, we can use it to derive a program ’on the fly’. That is, we can shape a program at the same time as we manipulate and decompose its given specification, and each time we apply a compositionality theorem we basically add a detail to the shape. Safety properties are known to be compositional in UNITY, but progress in general are not. So, we define a class of progress properties which are compositional. In addition, for programs that are constructed from components that do not write each other's write variables, the compositionality of this new class of progress can be expressed elegantly.

We also have formalized and verified the resulting calculus using the theorem prover HOL. Together with the available tools in HOL this provides a mechanical support in designing distributed programs.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A. Arora and M.G. Gouda. Distributed reset. In Proceedings of the 10th Conference on Foundation of Software Technology and Theoretical Computer Science, 1990. Also in Lecture Notes on Computer Science vol. 472.

    Google Scholar 

  2. A. Arora and M.G. Gouda. Closure and convergence: A foundation for fault-tolerant computing. In Proceedings of the 22nd International Conference on Fault-Tolerant Computing Systems, 1992.

    Google Scholar 

  3. Flemming Andersen. A Theorem Prover for UNITY in Higher Order Logic. PhD thesis, Technical University of Denmark, 1992.

    Google Scholar 

  4. K.M. Chandy and J. Misra. Parallel Program Design — A Foundation. Addison-Wesley Publishing Company, Inc., 1988.

    Google Scholar 

  5. F.S. de Boer and M. van Hulst. A proof system for asynchronously communicating deterministic processes, 1994. Submitted to a conference.

    Google Scholar 

  6. Ted Herman. Adaptivity through Distributed Convergence. PhD thesis, University of Texas at Austin, 1991.

    Google Scholar 

  7. P.J.A. Lentfert. Distributed Hierarchical Algorithms. PhD thesis, Utrecht University, April 1993.

    Google Scholar 

  8. P.K. Pandya and Mathai Joseph. P-a logic-a compositional proof system for distributed programs. Distributed Computing, (5):37–54, 1991.

    Google Scholar 

  9. I.S.W.B. Prasetya. Formalization of variables access constraints to support compositionality of liveness properties. In Proceeding HUG 93, HOL User's Group Workshop, pages 326–339. University of British Columbia, 1993.

    Google Scholar 

  10. I.S.W.B. Prasetya. UU_UNITY: a Mechanical Proving Environment for UNITY Logic. University of Utrecht, 1993. Draft. Available at request.

    Google Scholar 

  11. B.A. Sanders. Eliminating the substitution axiom from UNITY logic. Formal Aspects of Computing, 3(2):189–205, 1991.

    Google Scholar 

  12. Marco Schneider. Self-stabilization. ACM Computing Surveys, 25(1), March 1993.

    Google Scholar 

  13. A.K. Singh. Leads-to and program union. Notes on UNITY, 06–89, 1989.

    Google Scholar 

  14. R. Udink, T. Herman, and J. Kok. Compositional local progress in unity. to appear in the proceeding of IFIP Working Conference on Programming Concepts, Methods and Calculi, 1994., 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Thomas F. Melham Juanito Camilleri

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Prasetya, I.S.W.B. (1994). Towards a mechanically supported and compositional calculus to design distributed algorithms. In: Melham, T.F., Camilleri, J. (eds) Higher Order Logic Theorem Proving and Its Applications. HUG 1994. Lecture Notes in Computer Science, vol 859. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58450-1_54

Download citation

  • DOI: https://doi.org/10.1007/3-540-58450-1_54

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58450-6

  • Online ISBN: 978-3-540-48803-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics