Abstract
Tasks and objects are two predominant ways of specifying distributed problems. A task specifies for each set of processes (which may run concurrently) the valid outputs of the processes. An object specifies the outputs the object may produce when it is accessed sequentially. Each one requires its own implementation notion, to tell when an execution satisfies the specification. For objects linearizability is commonly used, while for tasks implementation notions are less explored.
Sequential specifications are very convenient, especially important is the locality property of linearizability, which states that linearizable objects compose for free into a linearizable object. However, most well-known tasks have no sequential specification. Also, tasks have no clear locality property.
The paper introduces the notion of interval-sequential object. The corresponding implementation notion of interval-linearizability generalizes linearizability. Interval-linearizability allows to specify any task. However, there are sequential one-shot objects that cannot be expressed as tasks, under the simplest interpretation of a task. The paper also shows that a natural extension of the notion of a task is expressive enough to specify any interval-sequential object.
Full version in http://arxiv.org/abs/1507.00073.
A. Castañeda—Partially supported by UNAM-PAPIIT.
S. Rajsbaum—Partially supported by LAISLA-CONACYT and UNAM-PAPIIT.
R. Raynal—Partially supported by the French ANR project DISPLEXITY, and the Franco-German ANR project DISCMAT
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: Atomic snapshots of shared memory. Journal of the ACM 40(4), 873–890 (1993)
Afek, Y., Gafni, E., Lieber, O.: Tight group renaming on groups of size g is equivalent to g-consensus. In: Keidar, I. (ed.) DISC 2009. LNCS, vol. 5805, pp. 111–126. Springer, Heidelberg (2009)
Aspnes, J., Ellen, F.: Tight bounds for adopt-commit objects. Theory Computing Systems 55(3), 451–474 (2014)
Borowsky, E., Gafni, E.: Immediate atomic snapshots and fast renaming. In: Proc. 12th ACM Symposium on Principles of Distributed Computing (PODC 1993). ACM Press, pp. 41–51 (1993)
Borowsky, E., Gafni, E., Lynch, N., Rajsbaum, S.: The BG distributed simulation algorithm. Distributed Computing 14(3), 127–146 (2001)
Chandra, T.D., Hadzilacos, V., Jayanti, P., Toueg, S.: Generalized irreducibility of consensus and the equivalence of \(t\)-resilient and wait-free implementations of consensus. SIAM Journal of Computing 34(2), 333–357 (2004)
Castañeda, A., Rajsbaum, S., Raynal, M.: Specifying Concurrent Problems: Beyond Linearizability. http://arxiv.org/abs/1507.00073
Chaudhuri, S.: More choices allow more faults: set consensus problems in totally asynchronous systems. Information and Computation 105(1), 132–158 (1993)
Conde, R., Rajsbaum, S.: The complexity gap between consensus and safe-consensus. In: Halldórsson, M.M. (ed.) SIROCCO 2014. LNCS, vol. 8576, pp. 68–82. Springer, Heidelberg (2014)
Filipović, I., O’Hearn, P., Rinetky, N., Yang, H.: Abstraction for concurrent objects. Theoretical Computer Science 411(51–52), 4379–4398 (2010)
Friedman, R., Vitenberg, R., Chokler, G.: On the composability of consistency conditions. Information Processing Letters 86(4), 169–176 (2003)
Gafni, E.: Round-by-round fault detectors: unifying synchrony and asynchrony. In: Proc. 17th ACM Symposium on Principles of Distributed Computing (PODC 1998). ACM Press, pp. 143–152 (1998)
Gafni, E., Snapshot for time: the one-shot case. arXiv:1408.3432v1, p. 10 (2014)
van Glabbeek, R.J.: On the expressiveness of higher dimensional automata. Theoretical Computer Science 356(3), 265–290 (2006)
Gotsman, A., Musuvathi, M., Yang, H.: Show no weakness: sequentially consistent specifications of TSO libraries. In: Aguilera, M.K. (ed.) DISC 2012. LNCS, vol. 7611, pp. 31–45. Springer, Heidelberg (2012)
Hemed, N., Rinetzky, N.: Brief announcement: concurrency-aware linearizability. In: Proc. 33th ACM Symposium on Principles of Distributed Computing (PODC 2014), pp. 209–211. ACM Press (2014). Full version to appear in these proceedings
Herlihy, M., Kozlov, D., Rajsbaum, S.: Distributed computing through ombinatorial topology. Morgan Kaufmann (2014)
Herlihy, M., Rajsbaum, S., Raynal, M.: Power and limits of distributed computing shared memory models. Theoretical Computer Science 509, 3–24 (2013)
Herlihy, M., Shavit, N.: The art of multiprocessor programming. Morgan Kaufmann (2008)
Herlihy, M., Wing, J.: Linearizability: a correctness condition for concurrent objects. ACM Transactions on Progr. Lang. and Systems 12(3), 463–492 (1990)
Neiger, G.: Set-linearizability. brief announcement. In: Proc. 13th ACM Symposium on Principles of Distributed Computing (PODC 1994). ACM Press, p. 396 (1994)
Raynal, M.: Concurrent programming: algorithms, principles, and foundations. Springer (2013)
Scherer III, W.N., Scott, M.L.: Nonblocking concurrent data structures with condition synchronization. In: Guerraoui, R. (ed.) DISC 2004. LNCS, vol. 3274, pp. 174–187. Springer, Heidelberg (2004)
Shavit, N.: Data structures in the multicore age. Comm. ACM 54(3), 76–84 (2011)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Castañeda, A., Rajsbaum, S., Raynal, M. (2015). Specifying Concurrent Problems: Beyond Linearizability and up to Tasks. In: Moses, Y. (eds) Distributed Computing. DISC 2015. Lecture Notes in Computer Science(), vol 9363. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-48653-5_28
Download citation
DOI: https://doi.org/10.1007/978-3-662-48653-5_28
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-48652-8
Online ISBN: 978-3-662-48653-5
eBook Packages: Computer ScienceComputer Science (R0)