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.
References
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.
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.
Flemming Andersen. A Theorem Prover for UNITY in Higher Order Logic. PhD thesis, Technical University of Denmark, 1992.
K.M. Chandy and J. Misra. Parallel Program Design — A Foundation. Addison-Wesley Publishing Company, Inc., 1988.
F.S. de Boer and M. van Hulst. A proof system for asynchronously communicating deterministic processes, 1994. Submitted to a conference.
Ted Herman. Adaptivity through Distributed Convergence. PhD thesis, University of Texas at Austin, 1991.
P.J.A. Lentfert. Distributed Hierarchical Algorithms. PhD thesis, Utrecht University, April 1993.
P.K. Pandya and Mathai Joseph. P-a logic-a compositional proof system for distributed programs. Distributed Computing, (5):37–54, 1991.
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.
I.S.W.B. Prasetya. UU_UNITY: a Mechanical Proving Environment for UNITY Logic. University of Utrecht, 1993. Draft. Available at request.
B.A. Sanders. Eliminating the substitution axiom from UNITY logic. Formal Aspects of Computing, 3(2):189–205, 1991.
Marco Schneider. Self-stabilization. ACM Computing Surveys, 25(1), March 1993.
A.K. Singh. Leads-to and program union. Notes on UNITY, 06–89, 1989.
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.
Author information
Authors and Affiliations
Editor information
Rights 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