Specification-Based Synthesis of Distributed Self-Stabilizing Protocols

  • Fathiyeh Faghih
  • Borzoo BonakdarpourEmail author
  • Sébastien Tixeuil
  • Sandeep Kulkarni
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9688)


In this paper, we introduce an SMT-based method that automatically synthesizes a distributed self-stabilizing protocol from a given high-level specification and the network topology. Unlike existing approaches, where synthesis algorithms require the explicit description of the set of legitimate states, our technique only needs the temporal behavior of the protocol. We also extend our approach to synthesize ideal-stabilizing protocols, where every state is legitimate. Our proposed methods are implemented and we report successful synthesis of Dijkstra’s token ring and a self-stabilizing version of Raymond’s mutual exclusion algorithm, as well as ideal-stabilizing leader election and local mutual exclusion.



This research was supported in part by Canada NSERC Discovery Grant 418396-2012 and NSERC Strategic Grant 430575-2012.


  1. 1.
    Abujarad, F., Kulkarni, S.S.: Multicore constraint-based automated stabilization. In: Guerraoui, R., Petit, F. (eds.) SSS 2009. LNCS, vol. 5873, pp. 47–61. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  2. 2.
    Bonakdarpour, B., Kulkarni, S.S., Abujarad, F.: Symbolic synthesis of masking fault-tolerant programs. Springer J. Distrib. Comput. 25(1), 83–108 (2012)CrossRefzbMATHGoogle Scholar
  3. 3.
    Demirbas, M., Arora, A.: Specification-based design of self-stabilization. IEEE Trans. Parallel Distrib. Syst. 27(1), 263–270 (2016)CrossRefGoogle Scholar
  4. 4.
    Dijkstra, E.W.: Self-stabilizing systems in spite of distributed control. Commun. ACM 17(11), 643–644 (1974)CrossRefzbMATHGoogle Scholar
  5. 5.
    Dijkstra, E.W.: A belated proof of self-stabilization. Distrib. Comput. 1(1), 5–6 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Ebnenasir, A., Farahat, A.: A lightweight method for automated design of convergence. In: International Parallel and Distributed Processing Symposium (IPDPS), pp. 219–230 (2011)Google Scholar
  7. 7.
    Faghih, F., Bonakdarpour, B.: SMT-based synthesis of distributed self-stabilizing systems. ACM Trans. Auton. Adapt. Syst. (TAAS) 10(3), 21 (2015)Google Scholar
  8. 8.
    Finkbeiner, B., Schewe, S.: Bounded synthesis. Int. J. Softw. Tools Technol. Transfer (STTT) 15(5–6), 519–539 (2013)CrossRefzbMATHGoogle Scholar
  9. 9.
    Gouda, M.G.: The theory of weak stabilization. In: Datta, A.K., Herman, T. (eds.) WSS 2001. LNCS, vol. 2194, pp. 114–123. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  10. 10.
    Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2012)Google Scholar
  11. 11.
    Jacobs, S., Bloem, R.: Parameterized synthesis. Logical Meth. Comput. Sci. 10(1), 1–29 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Klinkhamer, A., Ebnenasir, A.: On the complexity of adding convergence. In: Arbab, F., Sirjani, M. (eds.) FSEN 2013. LNCS, vol. 8161, pp. 17–33. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  13. 13.
    Klinkhamer, A., Ebnenasir, A.: Synthesizing self-stabilization through superposition and backtracking. In: Felber, P., Garg, V. (eds.) SSS 2014. LNCS, vol. 8756, pp. 252–267. Springer, Heidelberg (2014)Google Scholar
  14. 14.
    Nesterenko, M., Tixeuil, S.: Ideal stabilisation. IJGUC 4(4), 219–230 (2013)CrossRefGoogle Scholar
  15. 15.
    Pnueli, A.: The temporal logic of programs. In: Symposium on Foundations of Computer Science (FOCS), pp. 46–57 (1977)Google Scholar
  16. 16.
    Raymond, K.: A tree-based algorithm for distributed mutual exclusion. ACM Trans. Comput. Syst. 7(1), 61–77 (1989)MathSciNetCrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2016

Authors and Affiliations

  • Fathiyeh Faghih
    • 1
  • Borzoo Bonakdarpour
    • 1
    Email author
  • Sébastien Tixeuil
    • 2
  • Sandeep Kulkarni
    • 3
  1. 1.McMaster UniversityHamiltonCanada
  2. 2.UPMC Sorbonne UniversitésParisFrance
  3. 3.Michigan State UniversityEast LansingUSA

Personalised recommendations