Abstract
Given the non-determinism and race conditions in distributed programs, the ability to provide assurance about them is crucial. Our work focuses on incremental synthesis where we modify a distributed programs to add self-stabilization. We concentrate on reducing the time complexity of such synthesis using parallelism. We apply these techniques in the context of constraint satisfaction. In particular, incremental synthesis of self-stabilizing programs requires adding recovery actions to satisfy the constraint that are true in the legitimate states. We consider two approaches to speedup the synthesis algorithm: first, the use of the multiple constraints that have to be satisfied during synthesis; second, the use of the distributed nature of the programs being synthesized. We show that our approaches provide significant reductions in the synthesis time.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Abadi, M., Lamport, L.: Conjoining specifications. ACM Transactions on Programming Languages and Systems (TOPLAS) 17(3), 507–535 (1995)
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)
Aminof, B., Ball, T., Kupferman, O.: Reasoning about systems with transition fairness. In: Baader, F., Voronkov, A. (eds.) LPAR 2004. LNCS (LNAI), vol. 3452, pp. 194–208. Springer, Heidelberg (2005)
Arora, A., Attie, P.C., Emerson, E.A.: Synthesis of fault-tolerant concurrent programs. In: Principles of Distributed Computing (PODC), pp. 173–182 (1998)
Arora, A., Gouda, M.G.: Closure and convergence: A foundation of fault-tolerant computing. IEEE Transactions on Software Engineering 19(11), 1015–1027 (1993)
Arora, A., Gouda, M.G., Varghese, G.: Constraint satisfaction as a basis for designing nonmasking fault-tolerant systems. Journal of High Speed Networks 5(3), 293–306 (1996)
Arora, A., Kulkarni, S.S.: Designing masking fault-tolerance via nonmasking fault-tolerance. In: Proceedings of the Fourteenth Symposium on Reliable Distributed Systems, Bad Neuenahr, vol. 14, pp. 174–185 (1995)
Bonakdarpour, B., Kulkarni, S.S.: Sycraft: A tool for automated synthesis of fault-tolerant distributed programs. In: International Conference on Concurrency Theory (2008)
Chandy, K.M., Misra, J.: Parallel program design: a foundation. Addison-Wesley Longman Publishing Co., Inc., Boston (1988)
Emerson, E.A., Lei, C.L.: Temporal model checking under generalized fairness constraints. In: Proc. 18th Hawaii International Conference on System Sciences, pp. 277–288 (1985)
Ezekiel, J., Lüttgen, G.: Measuring and evaluating parallel state-space exploration algorithms. In: International Workshop on Parallel and Distributed Methods in Verification, PDMC (2007)
Ezekiel, J., Lüttgen, G., Ciardo, G.: Parallelising symbolic state-space generators. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 268–280. Springer, Heidelberg (2007)
Ezekiel, J., Lüttgen, G., Siminiceanu, R.I.: Can Saturation be parallelised? on the parallelisation of a symbolic state-space generator. In: Brim, L., Haverkort, B.R., Leucker, M., van de Pol, J. (eds.) FMICS 2006 and PDMC 2006. LNCS, vol. 4346, pp. 331–346. Springer, Heidelberg (2007)
Grumberg, O., Heyman, T., Ifergan, N., Schuster, A.: Achieving speedups in distributed symbolic reachability analysis through asynchronous computation. In: Borrione, D., Paul, W. (eds.) CHARME 2005. LNCS, vol. 3725, pp. 129–145. Springer, Heidelberg (2005)
Grumberg, O., Heyman, T., Schuster, A.: A work-efficient distributed algorithm for reachability analysis. Formal Methods in System Design (FMSD) 29(2), 157–175 (2006)
Katz, S., Perry, K.: Self-stabilizing extensions for message passing systems. Distributed Computing 7, 17–26 (1993)
Kulkarni, S.S., Arumugam, M.: Infuse: A TDMA based data dissemination protocol for sensor networks. International Journal of Distributed Sensor Networks 2(1), 55–78 (2006)
Milvang-Jensen, K., Hu, A.J.: BDDNOW: A parallel BDD package. In: Gopalakrishnan, G.C., Windley, P. (eds.) FMCAD 1998. LNCS, vol. 1522, pp. 501–507. Springer, Heidelberg (1998)
Raymond, K.: A tree based algorithm for mutual exclusion. ACM Transactions on Computer Systems 7, 61–77 (1989)
Somenzi, F.: CUDD: Colorado University Decision Diagram Package, http://vlsi.colorado.edu/~fabio/CUDD/cuddIntro.html
Stornetta, T., Brewer, F.: Implementation of an efficient parallel BDD package. In: Design automation (DAC), pp. 641–644 (1996)
Theel, O., Gartner, F.C.: An exercise in proving convergence through transfer functions. In: Proc. 4th Workshop on Self-stabilizing Systems, Austin, Texas, pp. 41–47 (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Abujarad, F., Kulkarni, S.S. (2009). Multicore Constraint-Based Automated Stabilization. In: Guerraoui, R., Petit, F. (eds) Stabilization, Safety, and Security of Distributed Systems. SSS 2009. Lecture Notes in Computer Science, vol 5873. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-05118-0_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-05118-0_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-05117-3
Online ISBN: 978-3-642-05118-0
eBook Packages: Computer ScienceComputer Science (R0)