skip to main content
10.1145/3328905.3329500acmconferencesArticle/Chapter ViewAbstractPublication PagesdebsConference Proceedingsconference-collections
research-article

Static Termination Analysis for Event-driven Distributed Algorithms

Published: 24 June 2019 Publication History

Abstract

Termination is an important non-functional property of distributed algorithms. In an event-driven setting, the interesting aspect of termination is the possibility of control flow loops through communication, which this paper aims to investigate.
In practice, it is often difficult to spot the possible communication behaviour of an algorithm at a glance. With a static analysis, the design process can be supported by visualizing possible flow of messages and give hints on possible sources of non-termination.
We propose a termination analysis for distributed algorithms formulated in an event-driven specification language. The idea is to construct a message flow graph describing the possible communication between components (input-action pairs). We show that acyclicity of that graph implies termination. While many interesting algorithms indeed contain cycles, we also suggest ways of detecting cycles which cannot lead to non-termination.
As a practical evaluation, we describe a concrete programming language together with a tool for automated termination analysis.

References

[1]
Valmir C. Barbosa. 1996. An introduction to distributed algorithms. MIT Press, Cambridge, Massachusetts.
[2]
Ernest Chang and Rosemary Roberts. 1979. An improved algorithm for decentralized extrema-finding in circular configurations of processes. Commun. ACM, 22, 5, (May 1979), 281--283.
[3]
Edsger W. Dijkstra. 1975. Guarded commands, nondeterminacy and formal derivation of programs. Communications of the ACM, Volume 18, Issue 8, (August 1975), 453--457.
[4]
R. Bayer, R. M. Graham, and G. Seegmüller, editors. 1978. Notes on data base operating systems. Operating Systems: An Advanced Course. Springer Berlin Heidelberg, Berlin, Heidelberg, 393--481.
[5]
G. J. Holzmann. 1997. The model checker spin. IEEE Transactions on Software Engineering, 23, 5, (May 1997), 279--295.
[6]
Leslie Lamport. 1999. Specifying concurrent systems with tla+. Calculational System Design, (April 1999), 183--247.
[7]
Nancy A. Lynch. 1996. Distributed Algorithms. (1st edition). Morgan Kaufmann.
[8]
Flemming Nielson, Chris Hankin, and Hanne R. Nielson. 2005. Principles of program analysis. (Corrected edition). Springer, (December 2005).
[9]
John H. Reif and Scott A. Smolka. 1990. Data flow analysis of distributed communicating processes. International Journal of Parallel Programming, 19, 1, (February 1990), 1--30.
[10]
Felix Wiemuth. 2018. A specification language for distributed algorithms. Master's Thesis, Technische Universität Ilmenau. (December 2018).

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
DEBS '19: Proceedings of the 13th ACM International Conference on Distributed and Event-based Systems
June 2019
291 pages
ISBN:9781450367943
DOI:10.1145/3328905
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 June 2019

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. algorithm specification
  2. distributed algorithms
  3. event-driven
  4. message flow
  5. programming languages
  6. static analysis
  7. termination

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

DEBS '19

Acceptance Rates

DEBS '19 Paper Acceptance Rate 13 of 47 submissions, 28%;
Overall Acceptance Rate 145 of 583 submissions, 25%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 95
    Total Downloads
  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)1
Reflects downloads up to 15 Feb 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media