Atomic snapshots of shared memory, Journal of the ACM, vol.40, issue.4, pp.873-890, 1993. ,
DOI : 10.1145/153724.153741
Multi-writer composite registers, Distributed Computing, pp.175-195, 1994. ,
DOI : 10.1007/BF02280833
Renaming in an asynchronous environment, Journal of the ACM, vol.37, issue.3, pp.524-548, 1990. ,
DOI : 10.1145/79147.79158
Distributed computing: fundamentals, simulations and advanced topics, p.414, 2004. ,
DOI : 10.1002/0471478210
Immediate atomic snapshots and fast renaming, Proceedings of the twelfth annual ACM symposium on Principles of distributed computing , PODC '93, pp.41-50, 1993. ,
DOI : 10.1145/164051.164056
Generalized FLP impossibility results for tresilient asynchronous computations, Proc. 25th ACM Symposium on Theory of Computation (STOC'93), California (USA), pp.91-100, 1993. ,
A simple algorithmically reasoned characterization of wait-free computations, Proc. 16th ACM Symposium on Principles of Distributed Computing (PODC'97, pp.189-198, 1997. ,
The BG distributed simulation algorithm, Distributed Computing, vol.14, issue.3, pp.127-146, 2001. ,
DOI : 10.1007/PL00008933
Specifying Concurrent Problems: Beyond Linearizability and up to Tasks, Proc. 29th Symposium on Distributed Computing (DISC'15), Springer LNCS 9363, pp.420-435, 2015. ,
DOI : 10.1007/978-3-662-48653-5_28
The weakest failure detector for solving consensus, Journal of the ACM, vol.43, issue.4, pp.685-722, 1996. ,
DOI : 10.1145/234533.234549
More Choices Allow More Faults: Set Consensus Problems in Totally Asynchronous Systems, Information and Computation, vol.105, issue.1, pp.132-158, 1993. ,
DOI : 10.1006/inco.1993.1043
Impossibility of distributed consensus with one faulty process, Journal of the ACM, vol.32, issue.2, pp.374-382, 1985. ,
DOI : 10.1145/3149.214121
A generalized asynchronous computability theorem, Proceedings of the 2014 ACM symposium on Principles of distributed computing, PODC '14, pp.222-231, 2014. ,
DOI : 10.1145/2611462.2611477
Recursion in Distributed Computing, Proc. 12th Int'l Conference on Stabilization, Safety, and Security of Distributed Systems (SSS'10), Springer LNCS 6366, pp.362-376, 2010. ,
DOI : 10.1007/978-3-642-16023-3_30
Wait-free synchronization, ACM Transactions on Programming Languages and Systems, vol.13, issue.1, pp.124-149, 1991. ,
DOI : 10.1145/114005.102808
Distributed computing through combinatorial topology, 2014. ,
Obstruction-free synchronization: double-ended queues as an example, 23rd International Conference on Distributed Computing Systems, 2003. Proceedings., pp.522-529, 2003. ,
DOI : 10.1109/ICDCS.2003.1203503
Power and limits of distributed computing shared memory models, Theoretical Computer Science, vol.509, pp.3-24, 2013. ,
DOI : 10.1016/j.tcs.2013.03.002
A simple constructive computability theorem for wait-free computation, Proceedings of the twenty-sixth annual ACM symposium on Theory of computing , STOC '94, pp.243-252, 1994. ,
DOI : 10.1145/195058.195144
The topological structure of asynchronous computability, Journal of the ACM, vol.46, issue.6, pp.858-923, 1999. ,
DOI : 10.1145/331524.331529
Linearizability: a correctness condition for concurrent objects, ACM Transactions on Programming Languages and Systems, vol.12, issue.3, pp.463-492, 1990. ,
DOI : 10.1145/78969.78972
On interprocess communication, Distributed Computing, vol.21, issue.2, pp.77-85, 1986. ,
DOI : 10.1007/BF01786227
Using failure detectors to solve consensus in asynchronous shared-memory systems, Proc. 8th Int'l Workshop on Distributed Algorithms (WDAG'94), Springer LNCS 857, pp.280-295, 1994. ,
DOI : 10.1007/BFb0020440
Memory requirements for agreement among unreliable asynchronous processes, Advances in Computing Research, pp.163-183, 1987. ,
Iterated Shared Memory Models, Proc. 9th Latin American Symposium on Theoretical Informatics (LATIN'10), Springer LNCS 6034, pp.407-416, 2010. ,
DOI : 10.1007/978-3-642-12200-2_36
An introductory tutorial to concurrency-related distributed recursion, Bulletin of the European Association of TCS, vol.111, pp.57-75, 2013. ,
URL : https://hal.archives-ouvertes.fr/hal-00858195
The Iterated Restricted Immediate Snapshot Model, Proc. 14th Annual Int'l Conference on Computing and Combinatorics (COCOON'08), Springer LNCS 5092, pp.487-497, 2008. ,
DOI : 10.1007/978-3-540-69733-6_48
URL : https://hal.archives-ouvertes.fr/hal-00829436
An impossibility about failure detectors in the iterated immediate snapshot model, Information Processing Letters, vol.108, issue.3, pp.160-164, 2008. ,
DOI : 10.1016/j.ipl.2008.05.001
Concurrent programming: algorithms, principles and foundations, 2013. ,
DOI : 10.1007/978-3-642-32027-9
URL : https://hal.archives-ouvertes.fr/hal-00922217
Increasing the Power of the Iterated Immediate Snapshot Model with Failure Detectors, Proc. 19th Int'l Colloquium on Structural Information and Communication Complexity (SIROCCO'12), Springer LNCS 7355, pp.231-242, 2012. ,
DOI : 10.1007/978-3-642-31104-8_20
URL : https://hal.archives-ouvertes.fr/hal-00670154
-set agreement is impossible, Proceedings of the twenty-fifth annual ACM symposium on Theory of computing , STOC '93, pp.1449-1483, 2000. ,
DOI : 10.1145/167088.167122
URL : https://hal.archives-ouvertes.fr/hal-00192526
Synchronization algorithms and concurrent programming. Pearson Prentice-Hall, 423 pages, 2006. ,
which implements an (n ? 1)-IS object in the (n ? 1)-crash model This algorithm is due to Borowsky and Gafni [5]. Its explanation that follows is from [30] Algorithm 5 uses two arrays of SWMR atomic registers denoted REG[1..n] and LEVEL[1..n] (only p i can write REG[i] and LEVEL[i]). A process p i first writes its value in REG[i] (line 1) Then the core of the implementation of BG_write_snapshot() is based on the array LEVEL[1..n]. This array, initialized to [n + 1, . . . , n + 1], can be thought of as a ladder, where initially a process is at the top of the ladder, namely at level (n + 1) Then it descends the ladder, one step after the other, according to predefined rules until it stops at some level (or crashes) While descending the ladder, a process p i registers its current position in the ladder in the atomic register LEVEL[i] (line 2). The local array operation write_snapshot(v i ) is (1) REG[i] ? v i, IS Object in theN1) repeat (3) for j ? {1, . . . , n} do level i [j] ? LEVEL[j] end for ,