Skip to main content
Log in

Decidability of linearizabilities for relaxed data structures

  • Research Paper
  • Published:
Science China Information Sciences Aims and scope Submit manuscript

Abstract

Many recent implementations of concurrent data structures relaxed their linearizability requirements for better performance and scalability. Quasi-linearizability, k-linearizability and regular-relaxed linearizability are three quantitative relaxation variants of linearizability that have been proposed as correctness conditions of relaxed data structures, yet preserving the intuition of linearizability. Quasi-linearizability has been proved undecidable. In this paper, we first show that k-linearizability is undecidable for a bounded number of processes, by reducing quasi-linearizability into it. We then show that regular-relaxed linearizability is decidable for a bounded number of processes. We also find that the number of the states of a relaxed specification is exponential to the number of the states of the underlying specification automaton (representing its relaxation strategy), and polynomial to the number of the states of the underlying quantitative sequential specification and the number of operations.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Haas A, Lippautz M, Henzinger T A, et al. Distributed queues in shared memory: multicore performance and scalability through quantitative relaxation. In: Proceedings of Computing Frontiers Conference, Ischia, 2013. 1–9

    Google Scholar 

  2. Kirsch C M, Lippautz M, Payer H. Fast and scalable, lock-free k-fifo queues. In: Proceedings of the 12th International Conference on Parallel Computing Technologies, St. Petersburg, 2013. 208–223

    Google Scholar 

  3. Kirsch C M, Payer H, Röck H, et al. Performance, scalability, and semantics of concurrent FIFO queues. In: Proceedings of the 12th International Conference on Algorithms and Architectures for Parallel Processing, Fukuoka, 2012. 273–287

    Google Scholar 

  4. Wimmer M, Versaci F, Träff J L, et al. Data structures for task-based priority scheduling. In: Proceedings of ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, Orlando, 2014. 379–380

    Google Scholar 

  5. Herlihy M P, Wing J M. Linearizability: a correctness condition for concurrent objects. ACM Trans Program Lang Syst, 1990, 12: 463–492

    Article  Google Scholar 

  6. Afek Y, Korland G, Yanovsky E. Quasi-linearizability: relaxed consistency for improved concurrency. In: Proceedings of the 14th International Conference on Principles of Distributed Systems, Tozeur, 2010. 395–410

    Google Scholar 

  7. Henzinger T A, Kirsch C M, Payer H, et al. Quantitative relaxation of concurrent data structures. In: Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Rome, 2013. 317–328

    MATH  Google Scholar 

  8. Wang C, Lv Y,Wu P. Decomposable relaxation for concurrent data structures. In: Proceedings of the 43th International Conference on Current Trends in Theory and Practice of Computer Science. Berlin: Springer-Verlag, 2017. 188–202

    Google Scholar 

  9. Alur R, McMillan K, Peled D. Model-checking of correctness conditions for concurrent objects. Inf Comput, 2000, 160: 167–188

    Article  MathSciNet  MATH  Google Scholar 

  10. Bouajjani A, Emmi M, Enea C, et al. Verifying concurrent programs against sequential specifications. In: Proceedings of the 22nd European Conference on Programming Languages and Systems. Berlin: Springer, 2013. 290–309

    Chapter  Google Scholar 

  11. Wang C, Lv Y, Liu G, et al. Quasi-linearizability is undecidable. In: Proceedings of the 13th Asian Symposium on Programming Languages and Systems. Berlin: Springer, 2015. 369–386

    Chapter  Google Scholar 

  12. Adhikari K, Street J, Wang C, et al. Verifying a quantitative relaxation of linearizability via refinement. In: Proceedings of the 20th International Symposium on Model Checking Software, New York, 2013. 24–42

    Google Scholar 

  13. Zhang L, Chattopadhyay A, Wang C. Round-up: runtime checking quasi linearizability of concurrent data structures. In: Proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering, Silicon Valley, 2013. 4–14

    Google Scholar 

  14. Bouajjani A, Emmi M, Enea C, et al. Tractable refinement checking for concurrent objects. In: Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Mumbai, 2015. 651–662

    MATH  Google Scholar 

  15. Cerný P, Radhakrishna A, Zufferey D, et al. Model checking of linearizability of concurrent list implementations. In: Proceedings of the 22nd International Conference on Computer Aided Verification. Berlin: Springer, 2010. 465–479

    Chapter  Google Scholar 

  16. Wang C, Lv Y, Wu P. Bounded TSO-to-SC linearizability is decidable. In: Proceedings of the 42th International Conference on Current Trends in Theory and Practice of Computer Science. Berlin: Springer-Verlag, 2016. 404–417

    Google Scholar 

  17. Hamza J. On the complexity of linearizability. In: Proceedings of the International Conference on NETworkedked sYStems, Agadir, 2015. 308–321

    Google Scholar 

  18. Burckhardt S, Dern C, Musuvathi M, et al. Line-up: a complete and automatic linearizability checker. In: Proceedings of the 2010 ACM SIGPLAN Conference on Programming Language Design and Implementation, Toronto, 2010. 330–340

    Google Scholar 

  19. Liu Y, Chen W, Liu Y A, et al. Verifying linearizability via optimized refinement checking. IEEE Trans Softw Eng, 2013, 39: 1018–1039

    Article  Google Scholar 

  20. Amit D, Rinetzky N, Reps T, et al. Comparison under abstraction for verifying linearizability. In: Proceedings of the 19th International Conference on Computer Aided Verification, Berlin, 2007. 477–490

    MATH  Google Scholar 

  21. Berdine J, Lev-Ami T, Manevich R, et al. Thread quantification for concurrent shape analysis. In: Proceedings of the 20th International Conference on Computer Aided Verification, Princeton, 2008. 399–413

    MATH  Google Scholar 

  22. Vafeiadis V. Automatically proving linearizability. In: Proceedings of the 22nd International Conference on Computer Aided Verification. Berlin: Springer, 2010. 450–464

    Chapter  Google Scholar 

Download references

Acknowledgements

This work was partially supported by National Natural Science Foundation of China (Grants Nos. 61672504, 60721061, 60833001, 61572478, 61672503, 61100069, 61161130530) and National Basic Research Program of China (973 Program) (Grant No. 2014CB340700).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Chao Wang.

Additional information

Conflict of interest The authors declare that they have no conflict of interest.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Wang, C., Lv, Y. & Wu, P. Decidability of linearizabilities for relaxed data structures. Sci. China Inf. Sci. 61, 012103 (2018). https://doi.org/10.1007/s11432-016-9062-x

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s11432-016-9062-x

Keywords

Navigation