{"abstract":[{"lang":"eng","text":"In this work we solve the algorithmic problem of consistency verification for the TSO and PSO memory models given a reads-from map, denoted VTSO-rf and VPSO-rf, respectively. For an execution of n events over k threads and d variables, we establish novel bounds that scale as nk+1 for TSO and as nk+1· min(nk2, 2k· d) for PSO. Moreover, based on our solution to these problems, we develop an SMC algorithm under TSO and PSO that uses the RF equivalence. The algorithm is exploration-optimal, in the sense that it is guaranteed to explore each class of the RF partitioning exactly once, and spends polynomial time per class when k is bounded. Finally, we implement all our algorithms in the SMC tool Nidhugg, and perform a large number of experiments over benchmarks from existing literature. Our experimental results show that our algorithms for VTSO-rf and VPSO-rf provide significant scalability improvements over standard alternatives. Moreover, when used for SMC, the RF partitioning is often much coarser than the standard Shasha-Snir partitioning for TSO/PSO, which yields a significant speedup in the model checking task.\r\n\r\n"}],"has_accepted_license":"1","keyword":["safety","risk","reliability and quality","software"],"day":"15","publisher":"Association for Computing Machinery","type":"journal_article","related_material":{"record":[{"status":"public","relation":"dissertation_contains","id":"10199"}]},"user_id":"8b945eb4-e2f2-11eb-945a-df72226e66a9","file_date_updated":"2021-11-04T07:24:48Z","intvolume":" 5","oa":1,"title":"The reads-from equivalence for the TSO and PSO memory models","ddc":["000"],"tmp":{"legal_code_url":"https://creativecommons.org/licenses/by/4.0/legalcode","short":"CC BY (4.0)","image":"/images/cc_by.png","name":"Creative Commons Attribution 4.0 International Public License (CC-BY 4.0)"},"article_type":"original","quality_controlled":"1","external_id":{"arxiv":["2011.11763"]},"date_published":"2021-10-15T00:00:00Z","doi":"10.1145/3485541","ec_funded":1,"citation":{"apa":"Bui, T. L., Chatterjee, K., Gautam, T., Pavlogiannis, A., & Toman, V. (2021). The reads-from equivalence for the TSO and PSO memory models. Proceedings of the ACM on Programming Languages. Association for Computing Machinery. https://doi.org/10.1145/3485541","ista":"Bui TL, Chatterjee K, Gautam T, Pavlogiannis A, Toman V. 2021. The reads-from equivalence for the TSO and PSO memory models. Proceedings of the ACM on Programming Languages. 5(OOPSLA), 164.","short":"T.L. Bui, K. Chatterjee, T. Gautam, A. Pavlogiannis, V. Toman, Proceedings of the ACM on Programming Languages 5 (2021).","mla":"Bui, Truc Lam, et al. “The Reads-from Equivalence for the TSO and PSO Memory Models.” Proceedings of the ACM on Programming Languages, vol. 5, no. OOPSLA, 164, Association for Computing Machinery, 2021, doi:10.1145/3485541.","ieee":"T. L. Bui, K. Chatterjee, T. Gautam, A. Pavlogiannis, and V. Toman, “The reads-from equivalence for the TSO and PSO memory models,” Proceedings of the ACM on Programming Languages, vol. 5, no. OOPSLA. Association for Computing Machinery, 2021.","ama":"Bui TL, Chatterjee K, Gautam T, Pavlogiannis A, Toman V. The reads-from equivalence for the TSO and PSO memory models. Proceedings of the ACM on Programming Languages. 2021;5(OOPSLA). doi:10.1145/3485541","chicago":"Bui, Truc Lam, Krishnendu Chatterjee, Tushar Gautam, Andreas Pavlogiannis, and Viktor Toman. “The Reads-from Equivalence for the TSO and PSO Memory Models.” Proceedings of the ACM on Programming Languages. Association for Computing Machinery, 2021. https://doi.org/10.1145/3485541."},"article_processing_charge":"No","status":"public","_id":"10191","acknowledgement":"The research was partially funded by the ERC CoG 863818 (ForM-SMArt) and the Vienna Science\r\nand Technology Fund (WWTF) through project ICT15-003.","author":[{"first_name":"Truc Lam","last_name":"Bui","full_name":"Bui, Truc Lam"},{"id":"2E5DCA20-F248-11E8-B48F-1D18A9856A87","orcid":"0000-0002-4561-241X","first_name":"Krishnendu","full_name":"Chatterjee, Krishnendu","last_name":"Chatterjee"},{"first_name":"Tushar","last_name":"Gautam","full_name":"Gautam, Tushar"},{"orcid":"0000-0002-8943-0722","id":"49704004-F248-11E8-B48F-1D18A9856A87","full_name":"Pavlogiannis, Andreas","last_name":"Pavlogiannis","first_name":"Andreas"},{"first_name":"Viktor","full_name":"Toman, Viktor","last_name":"Toman","id":"3AF3DA7C-F248-11E8-B48F-1D18A9856A87","orcid":"0000-0001-9036-063X"}],"publication":"Proceedings of the ACM on Programming Languages","department":[{"_id":"GradSch"},{"_id":"KrCh"}],"date_created":"2021-10-27T15:05:34Z","date_updated":"2023-09-07T13:30:27Z","year":"2021","volume":5,"publication_identifier":{"eissn":["2475-1421"]},"language":[{"iso":"eng"}],"issue":"OOPSLA","scopus_import":"1","oa_version":"Published Version","article_number":"164","project":[{"_id":"0599E47C-7A3F-11EA-A408-12923DDC885E","call_identifier":"H2020","name":"Formal Methods for Stochastic Models: Algorithms and Applications","grant_number":"863818"},{"grant_number":"ICT15-003","_id":"25892FC0-B435-11E9-9278-68D0E5697425","name":"Efficient Algorithms for Computer Aided Verification"}],"publication_status":"published","month":"10","file":[{"date_updated":"2021-11-04T07:24:48Z","date_created":"2021-11-04T07:24:48Z","access_level":"open_access","creator":"cchlebak","file_size":2903485,"relation":"main_file","file_name":"2021_ProcACMPL_Bui.pdf","content_type":"application/pdf","checksum":"9d6dce7b611853c529bb7b1915ac579e","file_id":"10215","success":1}]}