Abstract
We consider parameterized verification of concurrent programs under the Total Store Order (TSO) semantics. A program consists of a set of processes that share a set of variables on which they can perform read and write operations. We show that the reachability problem for a system consisting of an arbitrary number of identical processes is PSPACE-complete. We prove that the complexity is reduced to polynomial time if the processes are not allowed to read the initial values of the variables in the memory. When the processes are allowed to perform atomic read-modify-write operations, the reachability problem has a non-primitive recursive complexity.
- Parosh Aziz Abdulla. 2012. Regular model checking. STTT 14, 2 (2012), 109–118. Google Scholar
Cross Ref
- Parosh Aziz Abdulla, Jatin Arora, Mohamed Faouzi Atig, and Shankara Narayanan Krishna. 2019. Verification of programs under the release-acquire semantics. In Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2019, Phoenix, AZ, USA, June 22-26, 2019. , Kathryn S. McKinley and Kathleen Fisher (Eds.). ACM, 1117–1132. Google Scholar
Digital Library
- Parosh Aziz Abdulla, Mohamed Faouzi Atig, Ahmed Bouajjani, and Tuan Phong Ngo. 2018a. A Load-Buffer Semantics for Total Store Ordering. Logical Methods in Computer Science 14, 1 (2018). Google Scholar
Cross Ref
- Parosh Aziz Abdulla, Mohamed Faouzi Atig, Radu Ciobanu, Richard Mayr, and Patrick Totzke. 2018b. Universal Safety for Timed Petri Nets is PSPACE-complete. In 29th International Conference on Concurrency Theory, CONCUR 2018, September 4-7, 2018, Beijing, China (LIPIcs) , Sven Schewe and Lijun Zhang (Eds.), Vol. 118. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 6:1–6:15. Google Scholar
Cross Ref
- Parosh Aziz Abdulla, Yu-Fang Chen, Giorgio Delzanno, Frédéric Haziza, Chih-Duo Hong, and Ahmed Rezine. 2010. Constrained Monotonic Abstraction: A CEGAR for Parameterized Verification, See [ Gastin and Laroussinie 2010 ], 86–101. Google Scholar
Cross Ref
- Parosh Aziz Abdulla and Giorgio Delzanno. 2016. Parameterized verification. STTT 18, 5 (2016), 469–473. Google Scholar
Digital Library
- Parosh Aziz Abdulla, Johann Deneux, and Pritha Mahata. 2004. Multi-Clock Timed Networks. In 19th IEEE Symposium on Logic in Computer Science (LICS 2004), 14-17 July 2004, Turku, Finland, Proceedings . IEEE Computer Society, 345–354. Google Scholar
Cross Ref
- Parosh Aziz Abdulla, Frédéric Haziza, and Lukás Holík. 2016. Parameterized verification through view abstraction. STTT 18, 5 (2016), 495–516. Google Scholar
Digital Library
- Parosh Aziz Abdulla and Bengt Jonsson. 2003. Model checking of systems with many identical timed processes. Theor. Comput. Sci. 290, 1 (2003), 241–264. Google Scholar
Digital Library
- Parosh Aziz Abdulla, A. Prasad Sistla, and Muralidhar Talupur. 2018c. Model Checking Parameterized Systems. In Handbook of Model Checking. , Edmund M. Clarke, Thomas A. Henzinger, Helmut Veith, and Roderick Bloem (Eds.). Springer, 685–725. Google Scholar
Cross Ref
- Krzysztof R. Apt and Dexter Kozen. 1986. Limits for Automatic Verification of Finite-State Concurrent Systems. Inf. Process. Lett. 22, 6 (1986), 307–309. Google Scholar
Digital Library
- Mohamed Faouzi Atig, Ahmed Bouajjani, Sebastian Burckhardt, and Madanlal Musuvathi. 2010. On the verification problem for weak memory models. In Proceedings of the 37th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2010, Madrid, Spain, January 17-23, 2010 , Manuel V. Hermenegildo and Jens Palsberg (Eds.). ACM, 7–18. Google Scholar
Digital Library
- Roderick Bloem, Swen Jacobs, Ayrat Khalimov, Igor Konnov, Sasha Rubin, Helmut Veith, and Josef Widder. 2016. Decidability in Parameterized Verification. SIGACT News 47, 2 (2016), 53–64. Google Scholar
Digital Library
- Bernard Boigelot, Axel Legay, and Pierre Wolper. 2003. Iterating Transducers in the Large (Extended Abstract). In Computer Aided Verification, 15th International Conference, CAV 2003, Boulder, CO, USA, July 8-12, 2003, Proceedings (Lecture Notes in Computer Science) , Warren A. Hunt Jr. and Fabio Somenzi (Eds.), Vol. 2725. Springer, 223–235. Google Scholar
Cross Ref
- Ahmed Bouajjani, Egor Derevenetc, and Roland Meyer. 2013. Checking and Enforcing Robustness against TSO. In Programming Languages and Systems - 22nd European Symposium on Programming, ESOP 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, Italy, March 16-24, 2013. Proceedings (Lecture Notes in Computer Science) , Matthias Felleisen and Philippa Gardner (Eds.), Vol. 7792. Springer, 533–553. Google Scholar
Digital Library
- Ahmed Bouajjani, Peter Habermehl, Adam Rogalewicz, and Tomás Vojnar. 2012. Abstract regular (tree) model checking. STTT 14, 2 (2012), 167–191. Google Scholar
Cross Ref
- Sebastian Burckhardt. 2014. Principles of Eventual Consistency. Foundations and Trends in Programming Languages 1, 1-2 (2014), 1–150.Google Scholar
Digital Library
- Allan Cheng, Javier Esparza, and Jens Palsberg. 1995. Complexity Results for 1-Safe Nets. Theor. Comput. Sci. 147, 1&2 (1995), 117–136. Google Scholar
Digital Library
- Giorgio Delzanno, Arnaud Sangnier, and Gianluigi Zavattaro. 2010. Parameterized Verification of Ad Hoc Networks, See [ Gastin and Laroussinie 2010 ], 313–327. Google Scholar
Cross Ref
- Egor Derevenetc. 2015. Robustness against Relaxed Memory Models. Ph.D. Dissertation. University of Kaiserslautern. http://kluedo.ub.uni-kl.de/frontdoor/index/index/docId/4074Google Scholar
- Marco Elver and Vijay Nagarajan. 2014. TSO-CC: Consistency directed cache coherence for TSO. In HPCA 2014. IEEE, 165–176.Google Scholar
Cross Ref
- E. Allen Emerson, John Havlicek, and Richard J. Trefler. 2000. Virtual Symmetry Reduction. In 15th Annual IEEE Symposium on Logic in Computer Science, Santa Barbara, California, USA, June 26-29, 2000 . IEEE Computer Society, 121–131. Google Scholar
Cross Ref
- E. Allen Emerson and Vineet Kahlon. 2003. Exact and Efficient Verification of Parameterized Cache Coherence Protocols. In Correct Hardware Design and Verification Methods, 12th IFIP WG 10.5 Advanced Research Working Conference, CHARME 2003, L’Aquila, Italy, October 21-24, 2003, Proceedings (Lecture Notes in Computer Science) , Daniel Geist and Enrico Tronci (Eds.), Vol. 2860. Springer, 247–262. Google Scholar
Cross Ref
- E. Allen Emerson and Vineet Kahlon. 2004. Parameterized Model Checking of Ring-Based Message Passing Systems. In Computer Science Logic, 18th International Workshop, CSL 2004, 13th Annual Conference of the EACSL, Karpacz, Poland, September 20-24, 2004, Proceedings (Lecture Notes in Computer Science) , Jerzy Marcinkowski and Andrzej Tarlecki (Eds.), Vol. 3210. Springer, 325–339. Google Scholar
Cross Ref
- Javier Esparza, Alain Finkel, and Richard Mayr. 1999. On the Verification of Broadcast Protocols. In 14th Annual IEEE Symposium on Logic in Computer Science, Trento, Italy, July 2-5, 1999 . IEEE Computer Society, 352–359. Google Scholar
- Javier Esparza, Pierre Ganty, and Rupak Majumdar. 2016. Parameterized Verification of Asynchronous Shared-Memory Systems. J. ACM 63, 1 (2016), 10:1–10:48. Google Scholar
Digital Library
- Marie Fortin, Anca Muscholl, and Igor Walukiewicz. 2017. Model-Checking Linear-Time Properties of Parametrized Asynchronous Shared-Memory Pushdown Systems. In Computer Aided Verification - 29th International Conference, CAV 2017, Heidelberg, Germany, July 24-28, 2017, Proceedings, Part II (Lecture Notes in Computer Science) , Rupak Majumdar and Viktor Kuncak (Eds.), Vol. 10427. Springer, 155–175. Google Scholar
Cross Ref
- Pierre Ganty and Rupak Majumdar. 2012. Algorithmic verification of asynchronous programs. ACM Trans. Program. Lang. Syst. 34, 1 (2012), 6:1–6:48. Google Scholar
Digital Library
- Paul Gastin and François Laroussinie (Eds.). 2010. CONCUR 2010 - Concurrency Theory, 21th International Conference, CONCUR 2010, Paris, France, August 31-September 3, 2010. Proceedings . Lecture Notes in Computer Science, Vol. 6269. Springer. Google Scholar
Cross Ref
- Steven M. German and A. Prasad Sistla. 1992. Reasoning about Systems with Many Processes. J. ACM 39, 3 (1992), 675–735. Google Scholar
Digital Library
- Matthew Hague. 2011. Parameterised Pushdown Systems with Non-Atomic Writes. In IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science, FSTTCS 2011, December 12-14, 2011, Mumbai, India (LIPIcs) , Supratik Chakraborty and Amit Kumar (Eds.), Vol. 13. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 457–468. Google Scholar
Cross Ref
- Vineet Kahlon. 2008. Parameterization as Abstraction: A Tractable Approach to the Dataflow Analysis of Concurrent Programs. In Proceedings of the Twenty-Third Annual IEEE Symposium on Logic in Computer Science, LICS 2008, 24-27 June 2008, Pittsburgh, PA, USA . IEEE Computer Society, 181–192. Google Scholar
Digital Library
- Alexander Kaiser, Daniel Kroening, and Thomas Wahl. 2010. Dynamic Cutoff Detection in Parameterized Concurrent Programs. In Computer Aided Verification, 22nd International Conference, CAV 2010, Edinburgh, UK, July 15-19, 2010. Proceedings (Lecture Notes in Computer Science) , Tayssir Touili, Byron Cook, and Paul B. Jackson (Eds.), Vol. 6174. Springer, 645–659. Google Scholar
Digital Library
- Yonit Kesten, Oded Maler, Monica Marcus, Amir Pnueli, and Elad Shahar. 2001. Symbolic model checking with rich assertional languages. Theor. Comput. Sci. 256, 1-2 (2001), 93–112. Google Scholar
Digital Library
- Salvatore La Torre, Anca Muscholl, and Igor Walukiewicz. 2015. Safety of Parametrized Asynchronous Shared-Memory Systems is Almost Always Decidable. In 26th International Conference on Concurrency Theory, CONCUR 2015, Madrid, Spain, September 1.4, 2015 (LIPIcs) , Luca Aceto and David de Frutos-Escrig (Eds.), Vol. 42. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 72–84. Google Scholar
Cross Ref
- Ori Lahav, Nick Giannarakis, and Viktor Vafeiadis. 2016. Taming release-acquire consistency. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersburg, FL, USA, January 20 - 22, 2016 , Rastislav Bodík and Rupak Majumdar (Eds.). ACM, 649–662.Google Scholar
Digital Library
- Anca Muscholl, Helmut Seidl, and Igor Walukiewicz. 2017. Reachability for Dynamic Parametric Processes. In Verification, Model Checking, and Abstract Interpretation - 18th International Conference, VMCAI 2017, Paris, France, January 15-17, 2017, Proceedings (Lecture Notes in Computer Science) , Ahmed Bouajjani and David Monniaux (Eds.), Vol. 10145. Springer, 424–441. Google Scholar
Cross Ref
- Kedar S. Namjoshi and Richard J. Trefler. 2016. Parameterized Compositional Model Checking. In Tools and Algorithms for the Construction and Analysis of Systems - 22nd International Conference, TACAS 2016, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2016, Eindhoven, The Netherlands, April 2-8, 2016, Proceedings (Lecture Notes in Computer Science) , Marsha Chechik and Jean-François Raskin (Eds.), Vol. 9636. Springer, 589–606. Google Scholar
Digital Library
- Scott Owens, Susmit Sarkar, and Peter Sewell. 2009. A Better x86 Memory Model: x86-TSO. In Theorem Proving in Higher Order Logics, 22nd International Conference, TPHOLs 2009, Munich, Germany, August 17-20, 2009. Proceedings (Lecture Notes in Computer Science) , Stefan Berghofer, Tobias Nipkow, Christian Urban, and Makarius Wenzel (Eds.), Vol. 5674. Springer, 391–407.Google Scholar
Digital Library
- Alberto Ros and Stefanos Kaxiras. 2016. Racer: TSO consistency via race detection. In 49th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2016, Taipei, Taiwan, October 15-19, 2016 . IEEE Computer Society, 33:1–33:13.Google Scholar
Cross Ref
- Susmit Sarkar, Peter Sewell, Jade Alglave, Luc Maranget, and Derek Williams. 2011. Understanding POWER multiprocessors. In Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2011, San Jose, CA, USA, June 4-8, 2011 , Mary W. Hall and David A. Padua (Eds.). ACM, 175–186.Google Scholar
Digital Library
- Walter J. Savitch. 1970. Relationships Between Nondeterministic and Deterministic Tape Complexities. J. Comput. Syst. Sci. 4, 2 (1970), 177–192.Google Scholar
Digital Library
- Peter Sewell, Susmit Sarkar, Scott Owens, Francesco Zappa Nardelli, and Magnus O. Myreen. 2010. x86-TSO: a rigorous and usable programmer’s model for x86 multiprocessors. Commun. ACM 53, 7 (2010), 89–97.Google Scholar
Digital Library
- D. Weaver and T. Germond (Eds.). 1994. The SPARC Architecture Manual Version 9. PTR Prentice Hall.Google Scholar
Index Terms
Parameterized verification under TSO is PSPACE-complete
Recommendations
Verification of programs under the release-acquire semantics
PLDI 2019: Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and ImplementationWe address the verification of concurrent programs running under the release-acquire (RA) semantics. We show that the reachability problem is undecidable even in the case where the input program is finite-state. Given this undecidability, we follow the ...
Parameterized Verification under Release Acquire is PSPACE-complete
PODC'22: Proceedings of the 2022 ACM Symposium on Principles of Distributed ComputingWe study the safety verification problem for parameterized systems under the release-acquire (RA) semantics. In the non-parameterized setting, access to atomic compare-and-swap (CAS) instructions renders the safety verification problem undecidable. In ...
Parameterized verification of transactional memories
PLDI '10We describe an automatic verification method to check whether transactional memories ensure strict serializability a key property assumed of the transactional interface. Our main contribution is a technique for effectively verifying parameterized ...






Comments