Abstract
A value-passing, asynchronous process calculus and its associated theory of confluence are considered as a basis for establishing the correctness of distributed algorithms. In particular, we present an asynchronous version of value-passing CCS and we develop its theory of confluence. We show techniques for demonstrating confluence of complex processes in a compositional manner and we study properties of confluent systems that can prove useful for their verification. These results give rise to a methodology for system verification which we illustrate by proving the correctness of two distributed leader-election algorithms.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Boudol, G.: Asynchrony and the π-calculus. Technical Report RR-1702, INRIA-Sophia Antipolis (1992)
Groote, J.F., Sellink, M.P.A.: Confluence for process verification. In: Lee, I., Smolka, S.A. (eds.) CONCUR 1995. LNCS, vol. 962, pp. 204–218. Springer, Heidelberg (1995)
Hirschberg, D.S., Sinclair, J.B.: Decentralized extrema-finding in circular configurations. Communications of the ACM 23(11), 627–628 (1980)
Honda, K., Tokoro, M.: An object calculus for asynchronous communication. In: America, P. (ed.) ECOOP 1991. LNCS, vol. 512, pp. 133–147. Springer, Heidelberg (1991)
Liu, X., Walker, D.: Confluence of processes and systems of objects. In: Mosses, P.D., Schwartzbach, M.I., Nielsen, M. (eds.) CAAP 1995, FASE 1995, and TAPSOFT 1995. LNCS, vol. 915, pp. 217–231. Springer, Heidelberg (1995)
Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann, San Francisco (1997)
Lynch, N.A., Tuttle, M.R.: An introduction to Input/Output Automata. CWI-Quarterly 2(3), 219–246 (1989)
Milner, R.: A Calculus of Communicating Systems. Springer, Heidelberg (1980)
Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)
Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, parts 1 and 2. Information and Computation 100, 1–77 (1992)
Nestmann, U.: On Determinacy and Non-determinacy in Concurrent Programming. PhD thesis, University of Erlangen (1996)
Park, D.: Concurrency and automata on infinite sequences. In: Deussen, P. (ed.) GI-TCS 1981. LNCS, vol. 104, pp. 167–183. Springer, Heidelberg (1981)
Philippou, A., Walker, D.: On transformations of concurrent object programs. In: Sassone, V., Montanari, U. (eds.) CONCUR 1996. LNCS, vol. 1119, pp. 131–146. Springer, Heidelberg (1996)
Philippou, A., Walker, D.: On confluence in the π-calculus. In: Degano, P., Gorrieri, R., Marchetti-Spaccamela, A. (eds.) ICALP 1997. LNCS, vol. 1256, pp. 314–324. Springer, Heidelberg (1997)
Pierce, B.C., Turner, D.N.: Pict: A programming language based on the pi-calculus. In: Proof, Language and Interaction: Essays in Honour of Robin Milner, pp. 455–494. MIT Press, Cambridge (2000)
Sanderson, M.: Proof Techniques for CCS. PhD thesis, University of Edinburgh (1982)
Sangiorgi, D.: A theory of bisimulation for the π-calculus. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 127–142. Springer, Heidelberg (1993)
Tofts, C.: Proof Methods and Pragmatics for Parallel Programming. PhD thesis, University of Edinburgh (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Philippou, A., Michael, G. (2006). Verification Techniques for Distributed Algorithms. In: Shvartsman, M.M.A.A. (eds) Principles of Distributed Systems. OPODIS 2006. Lecture Notes in Computer Science, vol 4305. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11945529_13
Download citation
DOI: https://doi.org/10.1007/11945529_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-49990-9
Online ISBN: 978-3-540-49991-6
eBook Packages: Computer ScienceComputer Science (R0)