Abstract
Recently the action systems formalism for parallel and distributed systems has been extended with the procedure mechanism. This gives us a very general framework for describing different communication paradigms for action systems, e.g. remote procedure calls. Action systems come with a design methodology based on the refinement calculus. Data refinement is a powerful technique for refining action systems. In this paper we will develop a theory and proof rules for the refinement of action systems that communicate via remote procedures based on the data refinement approach. The proof rules we develop are compositional so that modular refinement of action systems is supported. As an .example we will especially study the atomicity refinement of actions. This is an important refinement strategy, as it potentially increases the degree of parallelism in an action system.
Preview
Unable to display preview. Download preview PDF.
References
M. Abadi and L. Lamport. The existence of refinement mappings. In Proc. of the 3rd Annual IEEE Symp. on Logic In Computer Science, Edinburgh, pp. 165–175, 1988.
R. J. R. Back. On the Correctness of Refinement Steps in Program Development. PhD thesis, Department of Computer Science, University of Helsinki, Helsinki, Finland, 1978. Report A-1978-4.
R. J. R. Back. Procedural abstraction in the refinement calculus. Department of Computer Science, Åbo Akademi University, Turku, Finland, 1987. Report A-55.
R. J. R. Back. Refinement calculus, part II: Parallel and reactive programs. In J. W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Stepwise Refinement of Distributed Systems: Models, Formalisms, Correctness. Proceedings. 1989, volume 430 of Lecture Notes in Computer Science, pp. 67–93. Springer-Verlag, 1990.
R. J. R. Back and R. Kurki-Suonio. Decentralization of process nets with centralized control. In Proc. of the 2nd ACM SIGACT-SIGOPS Symp. on Principles of Distributed Computing, pp. 131–142, 1983.
R. J. R. Back, A. J. Martin and K. Sere. Specifying the Caltech asynchronous microprocessor. Science of Computer Programming 26 (1996), pp. 79–97, Elsevier.
R. J. R. Back and K. Sere. Stepwise refinement of parallel algorithms. Science of Computer Programming 13, pp. 133–180, 1989.
R. J. R. Back and K. Sere. Action systems with synchronous communication. In E.-R. Olderog, editor, Programming Concepts, Methods and Calculi (PROCOMET'94), IFIP Transactions A-56, pp. 107–126, North-Holland I994.
R. J. R. Back and J. von Wright. Refinement calculus, part I: Sequential nondeterministic programs. In J. W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Stepwise Refinement of Distributed Systems: Models, Formalisms, Correctness. Proceedings. 1989, volume 430 of Lecture Notes in Computer Science, pp. 42–66. Springer-Verlag, 1990.
R. J. R. Back and J. von Wright. Trace refinement of action systems. In Proc. of CONCUR'94. LNCS 836, pages 367–384, Uppsala, Sweden, August 1994. Springer-Verlag.
M. Broy, S. Merz and K. Spies, editors. Formal Systems Specification: The RPC-Memory Specification Case Study. Proceedings, volume 1169 of Lecture Notes in Computer Science. Springer-Verlag, 1996.
K. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison-Wesley, 1988.
E. W. Dijkstra. A Discipline of Programming. Prentice-Hall International, 1976.
N. Francez. Cooperating proofs for distributed programs with multiparty interactions. Information Processing Letters, 32:235–242, 1989.
R. Kurki-Suonio. Incremental specification with joint actions: The RPC-memory specification problem. In [11].
C. Morgan. Procedures, parameters, and abstraction: Separate concerns. Science of Computer Programming, 11(1):17–28, 1988.
C. C. Morgan. The specification statement. ACM Transactions on Programming Languages and Systems, 10(3):403–419, July 1988.
J. M. Morris. A theoretical basis for stepwise refinement and the programming calculus. Science of Computer Programming, 9:287–306, 1987.
A. S. Tanenbaum. Modern Operating Systems. Prentice-Hall International, 1992.
R. Udink Program Refinement in UNITY-like Environments. PhD thesis, Department of Computer Science, University of Utrecht, Utrecht, The Netherlands, 1995.
M. Waldén Formal derivation of a distributed load balancing algorithm. Series A-172, Reports on Computer Science and Mathematics, Åbo Akademi University, Finland, 1995.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sere, K., Waldén, M. (1997). Data refinement of remote procedures. In: Abadi, M., Ito, T. (eds) Theoretical Aspects of Computer Software. TACS 1997. Lecture Notes in Computer Science, vol 1281. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014556
Download citation
DOI: https://doi.org/10.1007/BFb0014556
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63388-4
Online ISBN: 978-3-540-69530-1
eBook Packages: Springer Book Archive