Skip to main content

The alternator


An alternator is an array of interacting processes that satisfy three conditions. First, if a process has an enabled action at some state, then no neighbor of that process has an enabled action at the same state. Second, along any concurrent execution, each action is executed infinitely often. Third, along any maximally concurrent execution, the alternator is stabilizing to states where the number of enabled actions is maximal. In this paper, we specify an alternator with arbitrary topology and verify its correctness. We also show that this alternator can be used in transforming any system that is stabilizing assuming serial execution, to one that is stabilizing assuming concurrent execution.

This is a preview of subscription content, access via your institution.


  1. Arora A., Attie P., Evangelist M., Gouda M.G. (1993). Convergence of iteration systems,. Distrib. Comput. 7: 43–53

    Article  MATH  Google Scholar 

  2. Burns, J.E., Gouda, M.G., Miller, R.E.: On relaxing interleaving assumptions. In: Proceedings of the MCC Workshop on Self-Stabilizing Systems, Austin, Texas (1989)

  3. Dolev, S., Gouda, M.G., Schneider, M.: Memory requirements for silent stabilization. In: Proceedings of the 1996 ACM Symposium on Distributed Computing Systems (PODC-96), pp. 27–34 (1996)

  4. Gouda, M.G., Haddix, F.: The linear alternator. In: Proceedings of the Third Workshop on Self-Stabilizing Systems (WSS-97), International Informatics Series 7, Carleton University Press, pp. 31–47 (1997)

  5. Haddix, F.: Alternating parallelism and the stabilization of cellular systems. Ph.D. Dissertation, Department of Computer Sciences, the University of Texas at Austin, Austin, Texas (1999)

  6. Mizuno, M., Kakugawa, H.: A timestamp based transformation of self-stabilizing programs for distributed computing environments. In: Proceedings of the International Workshop On Distributed Algorithms (WDAG). Also published in Lecture Notes on Computer Science, vol. 1151, pp. 304–321 (1996)

  7. Mizuno M., Nesterenko M. (1998). A transformation of self- stabilizing serial model programs for asynchronous parallel computing environments. Inf. Process. Lett. 66(6): 285–290

    Article  MATH  Google Scholar 

  8. Nesterenko, M., Arora, A.: Stabilization-preserving atomicity refinement. In: Proceedings of DESC (1999)

Download references

Author information

Authors and Affiliations


Corresponding author

Correspondence to Mohamed G. Gouda.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Gouda, M.G., Haddix, F.F. The alternator. Distrib. Comput. 20, 21–28 (2007).

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI:


  • Self-stabilization
  • Distributed systems
  • System transformation
  • Serial execution
  • Concurrency