Summary
We argue that the important property of self-stabilization is, in principle, unstable across system classes. In particular, we first define a very broad notion of simulation. We then define what it means for a simulation to either preserve or force self-stabilization. Given these definitions, we then show that, for a variety of system classes, there is no simulation that preserves or forces self-stabilization.
Similar content being viewed by others
References
Best, E.: Fairness and conspiracies. Inf. Process. Lett. 18, 215–220 (1984); Addendum 19, 162 (1984)
Brown, G., Gouda, M., Wu, C.: Token systems that self-stabilize. IEEE Trans. Comput. 38, 845–852 (1989)
Burns, J., Pachl, J.: Uniform self-stabilizing rings. ACM Trans. Programming Languages and Systems 11, 330–344 (1989)
Bastani, F., Yen, I., Chen, I.: A class of inherently fault tolerant distributed programs. IEEE Trans. Software Eng. 14, 1432–1442 (1988)
Brand, D., Zafiropulo, P.: On communicating finite-state machines. JACM 30, 323–342 (1983)
Carstensen, H.: Decidability questions for fairness in Petri nets. In: Proceedings of the 4th Symposium on Theoretical Aspects of Computer Science (Lect. Notes Comput. Sci., Vol. 247, pp. 396–407). Berlin Heidelberg New York: Springer 1987
Cheney, W., Kincaid, D.: Numerical Mathematics and Computing. Monterey, CA: Brooks/Cole 1980
Dijkstra, E.: EWD391 Self-stabilization in spite of distributed control. 1973. In: Dijkstra, E. (ed.). Selected writings on computing: A personal perspective, pp. 41–46. Berlin Heidelberg New York: Springer 1982
Dijkstra, E.: Self stabilizing systems in spite of distributed control. Commun. ACM 17, 643–644 (1974)
Dijkstra, E.: Guarded commands, nondeterminacy and the formal derivation of programs. Commun. ACM 18, 453–457 (1975)
Dijkstra, E.: A Discipline of Programming. Englewood Cliffs.: Prentice Hall 1976
Emerson, E., Lei, C.: Modalities for model checking: Branching time logic strikes back. Sci. Comput. Programm. 8, 275–306 (1987)
Francez, N.: Fairness. Berlin Heidelberg New York: Springer 1986
Gouda, M.: The Stabilizing Philosopher: Asymmetry by Memory and by Action. To appear in Science of Computer Programming, 1990
Hoare, C.: Communicating sequential processes. Commun. ACM 21, 666–677 (1978)
Hopcroft, J., Pansiot, J.: On the reachability problem for 5-dimensional vector addition systems. Theoret. Comp. Sci. 8, 135–159 (1979)
Howell, R., Rosier, L., Yen, H.: A taxonomy of fairness and temporal logic problems for Petri nets. In Proceedings of the 19th Symposium on Mathematical Foundations of Computer Science, pp. 351–359 (1988) (to appear in Theoret. Comp. Sci.)
Hopcroft, J., Ullman, J.: Introduction to automata theory, languages, and computation. Reading, MA: Addison-Wesley 1979
Ibarra, O., Kim, S., Moran, S.: Sequential machine characterizations of trellis and cellular automata and applications. SIAM J. Comput. 14, 426–447 (1985)
Keller, R.M.: Vector Replacement Systems: A Formalism for Modelling Asynchronous Systems. TR 117, Princeton University, CSL, 1972
Karp, R., Miller, R.: Parallel program schemata. J. Comput. System Sci. 3, 147–195 (1969)
König, D.: Theorie der Endlichen und Unendlichen Graphen. Leipzig: Akademische Verlagsgesellschaft 1936
Kosaraju, S.: On some open problems in the theory of cellular automata. IEEE Trans. Comput. C-23, 561–565 (1974)
Lamport, L.: The mutual exclusion problem: Part II — Statement and solutions. JACM 33, 327–348 (1986)
Lehman, D., Pnueli, A., Stavi, J.: Impartiality, justice, and fairness: the ethics of concurrent termination. In Proceedings of the 8th International Colloquium on Automata, Languages, and Programming. (Lect. Notes Comput. Sci., vol. 115, pp. 264–277) Berlin Heidelberg New York: Springer 1981
Lehman, D., Rabin, M.: On the advantages of free choice: A symmetric and fully distributed solution of the dining philosophers problem. In: Proceedings of the 8th Annual ACM Symposium on Principles of Programming Languages, pp. 133–138, 1981
Lynch, N., Tuttle, M.: Hierarchical correctness proofs for distributed algorithms. In: Proceedings of the 6th Annual ACM Symposium on Principles of Distributed Computing, pp. 137–151, 1987
Multari, N.: Self-stabilizing Protocols. PhD thesis, Dept. of Computer Sciences, University of Texas at Austin 1989
Owicki, S., Lamport, L.: Proving liveness properties of concurrent programs. ACM Trans. Programm. Languages Syst. 4, 455–495 (1982)
Özveren, C., Willsky, A., Antsaklis, P.: Stability and stabilizability of discrete event dynamic systems. MIT LIDS Publication, LIDS-P-1853, 1989
Peterson, J.: Petri Net Theory and the Modeling of Systems. Englewood Cliffs, NJ: Prentice Hall 1981
Queille, J., Sifakis, J.: Fairness and related properties in transition systems — a temporal logic to deal with fairness. Acta Inf. 19, 195–220 (1983)
Reisig, W.: Petri Nets: An Introduction. Berlin Heidelberg New York: Springer 1985
Smith, A.: Cellular automata complexity tradeoffs. Inform. Control 18, 466–482 (1971)
Author information
Authors and Affiliations
Additional information
This work was supported in part by U.S. Office of Naval Research Grant No. N00014-86-K-0763 and National Science Foundation Grant No. CCR-8711579. Preliminary versions of this work have appeared in the Proceedings of the MCC Workshop on Self-Stabilizing Systems, MCC Technical Report No. STP-379-89, Austin, Texas, August 1989, and under the title “System Simulation and the Sensitivity of Self-Stabilization” in the Proceedings of the 14th International Symposium on Mathematical Foundations of Computer Science, LNCS 379, pp. 249–258, Porabka-Kozubnik, Poland, August–September 1989.
Rights and permissions
About this article
Cite this article
Gouda, M.G., Howell, R.R. & Rosier, L.E. The instability of self-stabilization. Acta Informatica 27, 697–724 (1990). https://doi.org/10.1007/BF00264283
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00264283