{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,23]],"date-time":"2026-08-23T22:36:40Z","timestamp":1787524600794,"version":"build-2736575974"},"publisher-location":"New York, NY, USA","reference-count":47,"publisher":"ACM","license":[{"start":{"date-parts":[[2024,4,12]],"date-time":"2024-04-12T00:00:00Z","timestamp":1712880000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2024,4,12]]},"DOI":"10.1145\/3597503.3639204","type":"proceedings-article","created":{"date-parts":[[2024,4,12]],"date-time":"2024-04-12T16:43:26Z","timestamp":1712940206000},"page":"1-12","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":5,"title":["Constraint Based Program Repair for Persistent Memory Bugs"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-5837-9960","authenticated-orcid":false,"given":"Zunchen","family":"Huang","sequence":"first","affiliation":[{"name":"Department of Computer Science, University of Southern California, Los Angeles, California, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0009-0003-4684-3943","authenticated-orcid":false,"given":"Chao","family":"Wang","sequence":"additional","affiliation":[{"name":"Department of Computer Science, University of Southern California, Los Angeles, California, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2024,4,12]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/2994593"},{"key":"e_1_3_2_1_2_1","volume-title":"FMCAD 2013","author":"Alur Rajeev","year":"2013","unstructured":"Rajeev Alur, Rastislav Bodik, Garvit Juniwal, Milo M. K. Martin, Mukund Raghothaman, Sanjit A. Seshia, Rishabh Singh, Armando Solar-Lezama, Emina Torlak, and Abhishek Udupa. 2013. Syntax-guided synthesis. In Formal Methods in Computer-Aided Design, FMCAD 2013, Portland, OR, USA, October 20--23, 2013. 1--8."},{"key":"e_1_3_2_1_3_1","unstructured":"Brad Fitzpatrick et al. 2021. https:\/\/github.com\/pmem\/pmem-redis"},{"key":"e_1_3_2_1_4_1","unstructured":"Brad Fitzpatrick et al. 2022. https:\/\/www.memcached.org"},{"key":"e_1_3_2_1_5_1","volume-title":"CAV 2013, Saint Petersburg, Russia, July 13--19, 2013. Proceedings (Lecture Notes in Computer Science","volume":"967","author":"Cern\u00fd Pavol","year":"2013","unstructured":"Pavol Cern\u00fd, Thomas A. Henzinger, Arjun Radhakrishna, Leonid Ryzhyk, and Thorsten Tarrach. 2013. Efficient Synthesis for Concurrency by Semantics-Preserving Transformations. In Computer Aided Verification - 25th International Conference, CAV 2013, Saint Petersburg, Russia, July 13--19, 2013. Proceedings (Lecture Notes in Computer Science, Vol. 8044). Springer, 951--967."},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/3503222.3507755"},{"key":"e_1_3_2_1_7_1","volume-title":"Bj\u00f8rner","author":"de Moura Leonardo Mendon\u00e7a","year":"2008","unstructured":"Leonardo Mendon\u00e7a de Moura and Nikolaj S. Bj\u00f8rner. 2008. Z3: An Efficient SMT Solver. In Tools and Algorithms for the Construction and Analysis of Systems, 14th International Conference, TACAS 2008, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2008, Budapest, Hungary, March 29-April 6, 2008. Proceedings (Lecture Notes in Computer Science, Vol. 4963). Springer, 337--340."},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/3445814.3446744"},{"key":"e_1_3_2_1_9_1","volume-title":"Mohannad Ismail, Sunny Wadkar, Dongyoon Lee, and Changwoo Min.","author":"Fu Xinwei","year":"2021","unstructured":"Xinwei Fu, Wook-Hee Kim, Ajay Paddayuru Shreepathi, Mohannad Ismail, Sunny Wadkar, Dongyoon Lee, and Changwoo Min. 2021. Witcher: Systematic Crash Consistency Testing for Non-Volatile Memory Key-Value Stores. In SOSP '21: ACM SIGOPS 28th Symposium on Operating Systems Principles, Virtual Event \/ Koblenz, Germany, October 26--29, 2021. ACM, 100--115."},{"key":"e_1_3_2_1_10_1","volume-title":"DURINN: Adversarial Memory and Thread Interleaving for Detecting Durable Linearizability Bugs. In 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI 22)","author":"Fu Xinwei","year":"2022","unstructured":"Xinwei Fu, Dongyoon Lee, and Changwoo Min. 2022. DURINN: Adversarial Memory and Thread Interleaving for Detecting Durable Linearizability Bugs. In 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI 22). Carlsbad, CA, 195--211."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/3418461"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/3519939.3523723"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/3445814.3446735"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/3503222.3507766"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/3236024.3236028"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462167"},{"key":"e_1_3_2_1_17_1","volume-title":"FASE 2022, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022, Munich, Germany, April 2--7, 2022, Proceedings (Lecture Notes in Computer Science","volume":"183","author":"Huang Zunchen","year":"2022","unstructured":"Zunchen Huang and Chao Wang. 2022. Symbolic Predictive Cache Analysis for Out-of-Order Execution. In Fundamental Approaches to Software Engineering - 25th International Conference, FASE 2022, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022, Munich, Germany, April 2--7, 2022, Proceedings (Lecture Notes in Computer Science, Vol. 13241). Springer, 163--183."},{"key":"e_1_3_2_1_18_1","unstructured":"Intel. 2022. Discover Persistent Memory Programming Errors with Pmem-check. https:\/\/www.intel.com\/content\/www\/us\/en\/developer\/articles\/technical\/discover-persistent-memory-programming-errors-with-pmemcheck.html"},{"key":"e_1_3_2_1_19_1","unstructured":"Intel. 2022. How to detect persistent memory programming errors using Intel Inspector. https:\/\/www.intel.com\/content\/www\/us\/en\/developer\/articles\/technical\/detect-persistent-memory-programming-errors-with-intel-inspector-persistence-inspector.html"},{"key":"e_1_3_2_1_20_1","unstructured":"Intel. 2022. Intel Optane Memory. https:\/\/www.intel.com\/content\/www\/us\/en\/products\/docs\/memory-storage\/optane-persistent-memory\/overview.html"},{"key":"e_1_3_2_1_21_1","unstructured":"Intel. 2022. Persistent Memory Development Kit (PMDK). https:\/\/https:\/\/pmem.io\/pmdk\/"},{"key":"e_1_3_2_1_22_1","unstructured":"Intel. 2022. pmreorder - performs a persistent consistency check using a store reordering mechanism. https:\/\/pmem.io\/pmdk\/manpages\/linux\/master\/pmreorder\/pmreorder.1\/"},{"key":"e_1_3_2_1_23_1","volume-title":"CAV 2011, Snowbird, UT, USA, July 14--20, 2011. Proceedings. 504--509","author":"Jose Manu","year":"2011","unstructured":"Manu Jose and Rupak Majumdar. 2011. Bug-Assist: Assisting Fault Localization in ANSI-C Programs. In Computer Aided Verification - 23rd International Conference, CAV 2011, Snowbird, UT, USA, July 14--20, 2011. Proceedings. 504--509."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1993498.1993550"},{"key":"e_1_3_2_1_25_1","volume-title":"CAV 2012, Berkeley, CA, USA, July 7--13, 2012 Proceedings (Lecture Notes in Computer Science","volume":"242","author":"Kahlon Vineet","year":"2012","unstructured":"Vineet Kahlon and Chao Wang. 2012. Lock Removal for Concurrent Trace Programs. In Computer Aided Verification - 24th International Conference, CAV 2012, Berkeley, CA, USA, July 7--13, 2012 Proceedings (Lecture Notes in Computer Science, Vol. 7358). Springer, 227--242."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/2771783.2771798"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/3434324"},{"key":"e_1_3_2_1_28_1","volume-title":"Yat: A Validation Framework for Persistent Memory Software. In 2014 USENIX Annual Technical Conference, USENIX ATC '14","author":"Lantz Philip","year":"2014","unstructured":"Philip Lantz, Dulloor Subramanya Rao, Sanjay Kumar, Rajesh Sankaran, and Jeff Jackson. 2014. Yat: A Validation Framework for Persistent Memory Software. In 2014 USENIX Annual Technical Conference, USENIX ATC '14, Philadelphia, PA, USA, June 19--20, 2014. 433--438."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3552326.3567498"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341301.3359635"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/3445814.3446691"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/3373376.3378452"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304015"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2009.92"},{"key":"e_1_3_2_1_35_1","volume-title":"DirectFix: Looking for Simple Program Repairs. In 37th IEEE\/ACM International Conference on Software Engineering, ICSE 2015","volume":"1","author":"Mechtaev Sergey","year":"2015","unstructured":"Sergey Mechtaev, Jooyong Yi, and Abhik Roychoudhury. 2015. DirectFix: Looking for Simple Program Repairs. In 37th IEEE\/ACM International Conference on Software Engineering, ICSE 2015, Florence, Italy, May 16--24, 2015, Volume 1. IEEE Computer Society, 448--458."},{"key":"e_1_3_2_1_36_1","volume-title":"FMCAD 2015","author":"Meshman Yuri","year":"2015","unstructured":"Yuri Meshman, Noam Rinetzky, and Eran Yahav. 2015. Pattern-based Synthesis of Synchronization for the C++ Memory Model. In Formal Methods in Computer-Aided Design, FMCAD 2015, Austin, Texas, USA, September 27--30, 2015. IEEE, 120--127."},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/3445814.3446694"},{"key":"e_1_3_2_1_38_1","volume-title":"14th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2020","author":"Neal Ian","year":"2020","unstructured":"Ian Neal, Ben Reeves, Ben Stoler, Andrew Quinn, Youngjin Kwon, Simon Peter, and Baris Kasikci. 2020. AGAMOTTO: How Persistent is your Persistent Memory Application?. In 14th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2020, Virtual Event, November 4--6, 2020. USENIX Association, 1047--1064."},{"key":"e_1_3_2_1_39_1","volume-title":"35th International Conference on Software Engineering, ICSE '13","author":"Thien Nguyen Hoang Duong","year":"2013","unstructured":"Hoang Duong Thien Nguyen, Dawei Qi, Abhik Roychoudhury, and Satish Chandra. 2013. SemFix: program repair via semantic analysis. In 35th International Conference on Software Engineering, ICSE '13, San Francisco, CA, USA, May 18--26, 2013. IEEE Computer Society, 772--781."},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/3428219"},{"key":"e_1_3_2_1_41_1","volume-title":"Ninth Eurosys Conference 2014","author":"Rao Dulloor Subramanya","year":"2014","unstructured":"Dulloor Subramanya Rao, Sanjay Kumar, Anil S. Keshavamurthy, Philip Lantz, Dheeraj Reddy, Rajesh Sankaran, and Jeff Jackson. 2014. System software for persistent memory. In Ninth Eurosys Conference 2014, EuroSys 2014, Amsterdam, The Netherlands, April 13--16, 2014. ACM, 15:1--15:15."},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/3503221.3508427"},{"key":"e_1_3_2_1_43_1","volume-title":"NASA Formal Methods - Third International Symposium, NFM 2011, Pasadena, CA, USA, April 18--20, 2011. Proceedings (Lecture Notes in Computer Science","volume":"327","author":"Said Mahmoud","unstructured":"Mahmoud Said, Chao Wang, Zijiang Yang, and Karem A. Sakallah. 2011. Generating Data Race Witnesses by an SMT-Based Analysis. In NASA Formal Methods - Third International Symposium, NFM 2011, Pasadena, CA, USA, April 18--20, 2011. Proceedings (Lecture Notes in Computer Science, Vol. 6617). Springer, 313--327."},{"key":"e_1_3_2_1_44_1","volume-title":"Programming Persistent Memory A Comprehensive Guide for Developers","author":"Scargall Steve","unstructured":"Steve Scargall. 2020. Programming Persistent Memory A Comprehensive Guide for Developers. Apress, Berkeley, CA."},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1109\/MEMCOD.2011.5970516"},{"key":"e_1_3_2_1_46_1","volume-title":"Symbolic Predictive Analysis for Concurrent Programs. In FM 2009: Formal Methods, Second World Congress, Eindhoven, The Netherlands, November 2--6, 2009. Proceedings (Lecture Notes in Computer Science","volume":"272","author":"Wang Chao","year":"2009","unstructured":"Chao Wang, Sudipta Kundu, Malay K. Ganai, and Aarti Gupta. 2009. Symbolic Predictive Analysis for Concurrent Programs. In FM 2009: Formal Methods, Second World Congress, Eindhoven, The Netherlands, November 2--6, 2009. Proceedings (Lecture Notes in Computer Science, Vol. 5850). Springer, 256--272."},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-12002-2_27"}],"event":{"name":"ICSE '24: IEEE\/ACM 46th International Conference on Software Engineering","location":"Lisbon Portugal","acronym":"ICSE '24","sponsor":["SIGSOFT ACM Special Interest Group on Software Engineering","IEEE CS","Faculty of Engineering of University of Porto"]},"container-title":["Proceedings of the IEEE\/ACM 46th International Conference on Software Engineering"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3597503.3639204","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3597503.3639204","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T22:49:13Z","timestamp":1750286953000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3597503.3639204"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,4,12]]},"references-count":47,"alternative-id":["10.1145\/3597503.3639204","10.1145\/3597503"],"URL":"https:\/\/doi.org\/10.1145\/3597503.3639204","relation":{},"subject":[],"published":{"date-parts":[[2024,4,12]]},"assertion":[{"value":"2024-04-12","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}