Skip to main content

Advertisement

SpringerLink
Log in
Menu
Find a journal Publish with us Track your research
Search
Cart
Book cover

European Symposium on Programming

ESOP 2007: Programming Languages and Systems pp 395–410Cite as

  1. Home
  2. Programming Languages and Systems
  3. Conference paper
A Fault Tolerance Bisimulation Proof for Consensus (Extended Abstract)

A Fault Tolerance Bisimulation Proof for Consensus (Extended Abstract)

  • Adrian Francalanza1 &
  • Matthew Hennessy2 
  • Conference paper
  • 1051 Accesses

  • 9 Citations

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 4421)

Abstract

The possibility of partial failure occuring at any stage of computation complicates rigorous formal treatment of distributed algorithms. We propose a methodology for formalising and proving the correctness of distributed algorithms which alleviates this complexity. The methodology uses fault-tolerance bisimulation proof techniques to split the analysis into two phases, that is a failure-free phase and a failure phase, permitting separation of concerns. We design a minimal partial-failure calculus, develop a corresponding bisimulation theory for it and express a consensus algorithm in the calculus. We then use the consensus example and the calculus theory to demonstrate the benefits of our methodology.

Keywords

  • Failure Detector
  • Consensus Algorithm
  • Partial Failure
  • Dynamic Failure
  • Basic Correctness

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Chapter PDF

Download to read the full chapter text

References

  1. Berger, M., Honda, K.: The two-phase commitment protocol in an extended pi-calculus. Electr. Notes Theor. Comput. Sci. 39(1) (2000)

    Google Scholar 

  2. Chandra, T.D., Toueg, S.: Unreliable failure detectors for reliable distributed systems. Journal of the ACM 43(2), 225–267 (1996)

    CrossRef  MATH  MathSciNet  Google Scholar 

  3. Deng, Y., Sangiorgi, D.: Ensuring termination by typability. In: IFIP TCS, pp. 619–632 (2004)

    Google Scholar 

  4. Fischer, M.J.: The consensus problem in unreliable distributed systems (a brief survey). In: Karpinski, M. (ed.) FCT 1983. LNCS, vol. 158, pp. 127–140. Springer, Heidelberg (1983)

    Google Scholar 

  5. Fournet, C., et al.: A calculus of mobile agents. In: Sassone, V., Montanari, U. (eds.) CONCUR 1996. LNCS, vol. 1119, pp. 406–421. Springer, Heidelberg (1996)

    Google Scholar 

  6. Francalanza, A., Hennessy, M.: A theory of system behaviour in the presence of node and link failures. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 368–382. Springer, Heidelberg (2005)

    CrossRef  Google Scholar 

  7. Francalanza, A., Hennessy, M.: A theory of system fault tolerance. In: Aceto, L., Ingólfsdóttir, A. (eds.) FOSSACS 2006 and ETAPS 2006. LNCS, vol. 3921, Springer, Heidelberg (2006)

    CrossRef  Google Scholar 

  8. Groote, J.F., Sellink, M.P.A.: Confluence for process verification. Theor. Comput. Sci. 170(1-2), 47–81 (1996)

    MATH  MathSciNet  Google Scholar 

  9. Groote, J.F., van de Pol, J.: State space reduction using partial tau-confluence. In: Mathematical Foundations of Computer Science, pp. 383–393 (2000)

    Google Scholar 

  10. Honda, K., Yoshida, N.: On reduction-based process semantics. Theoretical Computer Science 152(2), 437–486 (1995)

    CrossRef  MathSciNet  Google Scholar 

  11. Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann, San Francisco (1996)

    MATH  Google Scholar 

  12. Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)

    MATH  Google Scholar 

  13. Nestmann, U., Fuzzati, R.: Unreliable Failure Detectors via Operational Semantics. In: Saraswat, V.A. (ed.) ASIAN 2003. LNCS, vol. 2896, pp. 54–71. Springer, Heidelberg (2003)

    Google Scholar 

  14. Nestmann, U., Fuzzati, R., Merro, M.: Modeling consensus in a process calculus. In: Amadio, R.M., Lugiez, D. (eds.) CONCUR 2003. LNCS, vol. 2761, Springer, Heidelberg (2003)

    Google Scholar 

  15. Riely, J., Hennessy, M.: Distributed processes and location failures. Theoretical Computer Science 226, 693–735 (2001)

    CrossRef  MathSciNet  Google Scholar 

  16. Tel, G.: Introduction to distributed algorithms. Cambridge University Press, New York (1994)

    CrossRef  MATH  Google Scholar 

  17. Yoshida, N., Berger, M., Honda, K.: Strong normalisation in the pi-calculus. Inf. Comput. 191(2), 145–202 (2004)

    CrossRef  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

  1. Imperial College, London SW7 2BZ, England

    Adrian Francalanza

  2. University of Sussex, Brighton BN1 9RH, England

    Matthew Hennessy

Authors
  1. Adrian Francalanza
    View author publications

    You can also search for this author in PubMed Google Scholar

  2. Matthew Hennessy
    View author publications

    You can also search for this author in PubMed Google Scholar

Editor information

Rocco De Nicola

Rights and permissions

Reprints and Permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Francalanza, A., Hennessy, M. (2007). A Fault Tolerance Bisimulation Proof for Consensus (Extended Abstract). In: De Nicola, R. (eds) Programming Languages and Systems. ESOP 2007. Lecture Notes in Computer Science, vol 4421. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-71316-6_27

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-540-71316-6_27

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-71314-2

  • Online ISBN: 978-3-540-71316-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Publish with us

Policies and ethics

search

Navigation

  • Find a journal
  • Publish with us
  • Track your research

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support
  • Cancel contracts here

167.114.118.210

Not affiliated

Springer Nature

© 2023 Springer Nature