# On the Smallest Grain of Salt to Get a Unique Identity

## Abstract

We study the fundamental *enumeration* problem in asynchronous message-passing networks. Anonymous processes have to eventually decide on pairwise distinct identifiers, despite all starting in the same initial state. It is known since Angluin’s seminal result [2] that some *grain of salt* is required for distributed algorithms to solve the problem, e.g., the system needs to have a non-symmetrical topology or unbiased independent random bits.

The starting point of this paper is the observation that these approaches demand too strong assumptions. In short, by adding *time* to the picture, we show that the enumeration problem can be solved with far less. The idea is to consider a schedule of events in a distributed system as a *space-time structure* that is *gradually learnt* by the processes. We introduce the notion of *divergence time* which essentially measures the time by which the causal order induced by the system schedule has differentiated all the processes.

We prove lower bounds on the running time of any algorithm solving enumeration in terms of divergence time. In particular, we show that any adversary scheduler against which the enumeration problem can be solved *necessarily* selects schedules with *finite divergence time*.

We prove that this last condition is *sufficient*: we present the Torche algorithm which solves enumeration for all schedules with finite divergence time. In this sense, having finite divergence time is the smallest grain of salt required to solve the enumeration problem.

## Notes

### Acknowledgment

This work has been supported in part by the European ERC Grant 339539 - AOC.

## References

- 1.Afek, Y., Matias, Y.: Elections in anonymous networks. Inf. Comput.
**113**(2), 312–330 (1994)MathSciNetCrossRefzbMATHGoogle Scholar - 2.Angluin, D.: Local and global properties in networks of processors. In: 12th Symposium on the Theory of Computing, pp. 82–93. ACM (1980)Google Scholar
- 3.Awerbuch, B., Goldberg, A.V., Luby, M., Plotkin, S.A.: Network decomposition and locality in distributed computation. In: 30th Annual Symposium on Foundations of Computer Science, Research Triangle Park, North Carolina, USA, 30 October–1 November 1989, pp. 364–369 (1989)Google Scholar
- 4.Babai, L.: Graph isomorphism in quasipolynomial time [extended abstract]. In: Proceedings of the 48th Annual ACM SIGACT Symposium on Theory of Computing, STOC 2016, Cambridge, MA, USA, 18–21 June 2016, pp. 684–697 (2016)Google Scholar
- 5.Barenboim, L., Elkin, M., Kuhn, F.: Distributed \((\Delta +1)\)-coloring in linear (in \(\Delta \)) time. SIAM J. Comput.
**43**(1), 72–95 (2014)MathSciNetCrossRefzbMATHGoogle Scholar - 6.Boldi, P., Shammah, S., Vigna, S., Codenotti, B., Gemmell, P., Simon, J.: Symmetry breaking in anonymous networks: characterizations. In: Israel Symposium on Theory of Computing and Systems, pp. 16–26 (1996)Google Scholar
- 7.Boldi, P., Vigna, S.: Fibrations of graphs. Discrete Math.
**243**(1–3), 21–66 (2002)MathSciNetCrossRefzbMATHGoogle Scholar - 8.Chalopin, J., Métivier, Y.: An efficient message passing election algorithm based on Mazurkiewicz’s algorithm. Fundamenta Informaticae
**80**(1–3), 221–246 (2007)MathSciNetzbMATHGoogle Scholar - 9.Chalopin, J., Métivier, Y., Morsellino, T.: Enumeration and leader election in partially anonymous and multi-hop broadcast networks. Fundamenta Informaticae
**120**(1), 1–27 (2012)MathSciNetzbMATHGoogle Scholar - 10.Hanckowiak, M., Karonski, M., Panconesi, A.: On the distributed complexity of computing maximal matchings. SIAM J. Discrete Math.
**15**(1), 41–57 (2001)MathSciNetCrossRefzbMATHGoogle Scholar - 11.Itai, A., Rodeh, M.: Symmetry breaking in distributed networks. In: 22nd Annual Symposium on Foundations of Computer Science, Nashville, Tennessee, USA, 28–30 October 1981, pp. 150–158 (1981)Google Scholar
- 12.Johnson, R.E., Schneider, F.B.: Symmetry and similarity in distributed systems. In: Proceedings of the Fourth Annual ACM Symposium on Principles of Distributed Computing, PODC 1985, pp. 13–22. ACM, New York (1985)Google Scholar
- 13.Linial, N.: Locality in distributed graph algorithms. SIAM J. Comput.
**21**(1), 193–201 (1992)MathSciNetCrossRefzbMATHGoogle Scholar - 14.Lynch, N.: Distributed Algorithms. Morgan Kaufmann Publishers Inc., Burlington (1997)Google Scholar
- 15.Massey, W.S.: A Basic Course in Algebraic Topology. Springer, New York (1991)zbMATHGoogle Scholar
- 16.Mazurkiewicz, A.: Distributed enumeration. Inf. Process. Lett.
**61**(5), 233–239 (1997)MathSciNetCrossRefzbMATHGoogle Scholar - 17.Panconesi, A., Srinivasan, A.: On the complexity of distributed network decomposition. J. Algorithms
**20**(2), 356–374 (1996)MathSciNetCrossRefzbMATHGoogle Scholar - 18.Schneider, J., Wattenhofer, R.: An optimal maximal independent set algorithm for bounded-independence graphs. Distrib. Comput.
**22**(5–6), 349–361 (2010)CrossRefzbMATHGoogle Scholar - 19.Szegedy, M., Vishwanathan, S.: Locality based graph coloring. In: Proceedings of the Twenty-Fifth Annual ACM Symposium on Theory of Computing, San Diego, CA, USA, 16–18 May 1993, pp. 201–207 (1993)Google Scholar
- 20.Tani, S.: Compression of view on anonymous networks - folded view -. IEEE Trans. Parallel Distrib. Syst.
**23**(2), 255–262 (2012)CrossRefGoogle Scholar - 21.Yamashita, M., Kameda, T.: Computing on anonymous networks: part I - characterizing the solvable cases. IEEE Trans. Parallel Distrib. Syst.
**7**(1), 69–89 (1996)CrossRefGoogle Scholar - 22.Yamashita, M., Kameda, T.: Computing on anonymous networks: part II - decision and membership problems. IEEE Trans. Parallel Distrib. Syst.
**7**(1), 90–96 (1996)CrossRefGoogle Scholar - 23.Yamashita, M., Kameda, T.: Leader election problem on networks in which processor identity numbers are not distinct. IEEE Trans. Parallel Distrib. Syst.
**10**(9), 878–887 (1999)CrossRefGoogle Scholar