{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,25]],"date-time":"2025-12-25T07:24:29Z","timestamp":1766647469035},"publisher-location":"Cham","reference-count":32,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030341749"},{"type":"electronic","value":"9783030341756"}],"license":[{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2019]]},"DOI":"10.1007\/978-3-030-34175-6_16","type":"book-chapter","created":{"date-parts":[[2019,11,17]],"date-time":"2019-11-17T19:01:29Z","timestamp":1574017289000},"page":"313-331","update-policy":"http:\/\/dx.doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":4,"title":["Conflict Abstractions and Shadow Speculation for Optimistic Transactional Objects"],"prefix":"10.1007","author":[{"given":"Thomas","family":"Dickerson","sequence":"first","affiliation":[]},{"given":"Eric","family":"Koskinen","sequence":"additional","affiliation":[]},{"given":"Paul","family":"Gazzillo","sequence":"additional","affiliation":[]},{"given":"Maurice","family":"Herlihy","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2019,11,18]]},"reference":[{"key":"16_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"115","DOI":"10.1007\/978-3-319-89960-2_7","volume-title":"Tools and Algorithms for the Construction and Analysis of Systems","author":"K Bansal","year":"2018","unstructured":"Bansal, K., Koskinen, E., Tripp, O.: Automatic generation of precise and useful commutativity conditions. In: Beyer, D., Huisman, M. (eds.) TACAS 2018. LNCS, vol. 10805, pp. 115\u2013132. Springer, Cham (2018). \nhttps:\/\/doi.org\/10.1007\/978-3-319-89960-2_7"},{"issue":"5","key":"16_CR2","doi-asserted-by":"publisher","first-page":"757","DOI":"10.1109\/PGEC.1966.264565","volume":"15","author":"A Bernstein","year":"1966","unstructured":"Bernstein, A.: Analysis of programs for parallel processing. IEEE Trans. Electron. Comput. 15(5), 757\u2013763 (1966)","journal-title":"IEEE Trans. Electron. Comput."},{"key":"16_CR3","doi-asserted-by":"crossref","unstructured":"Bronson, N.G., Casper, J., Chafi, H., Olukotun, K.: A practical concurrent binary search tree. In: Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2010, pp. 257\u2013268. ACM, New York (2010)","DOI":"10.1145\/1693453.1693488"},{"key":"16_CR4","doi-asserted-by":"crossref","unstructured":"Bronson, N.G., Casper, J., Chafi, H., Olukotun, K.: Transactional predication: high-performance concurrent sets and maps for STM. In: Proceedings of the 29th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, PODC 2010, pp. 6\u201315. ACM, New York (2010)","DOI":"10.1145\/1835698.1835703"},{"key":"16_CR5","unstructured":"Bronson, N.G., Chafi, H., Olukotun, K.: CCSTM: a library-based STM for scala. def 9 (2010). 10"},{"key":"16_CR6","doi-asserted-by":"crossref","unstructured":"Carlstrom, B.D., McDonald, A., Carbin, M., Kozyrakis, C., Olukotun, K.: Transactional collection classes. In: Proceedings of the 12th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2007, pp. 56\u201367. ACM, New York (2007)","DOI":"10.1145\/1229428.1229441"},{"key":"16_CR7","unstructured":"Dickerson, T.D.: Fast snapshottable concurrent braun heaps. arXiv preprint \narXiv:1705.06271\n\n (2017)"},{"key":"16_CR8","unstructured":"Dickerson, T.D., Gazzillo, P., Koskinen, E., Herlihy, M.: Proust: a design space for highly-concurrent transactional data structures. CoRR abs\/1702.04866 (2017)"},{"key":"16_CR9","doi-asserted-by":"crossref","unstructured":"Dimitrov, D., Raychev, V., Vechev, M., Koskinen, E.: Commutativity race detection. In: Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2014, pp. 305\u2013315. ACM (2014)","DOI":"10.1145\/2666356.2594322"},{"key":"16_CR10","doi-asserted-by":"crossref","unstructured":"Ellen, F., Lev, Y., Luchangco, V., Moir, M.: SNZI: scalable nonzero indicators. In: Proceedings of the Twenty-Sixth Annual ACM Symposium on Principles of Distributed Computing, PODC 2007, pp. 13\u201322. ACM (2007)","DOI":"10.1145\/1281100.1281106"},{"key":"16_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"93","DOI":"10.1007\/978-3-642-04355-0_12","volume-title":"Distributed Computing","author":"P Felber","year":"2009","unstructured":"Felber, P., Gramoli, V., Guerraoui, R.: Elastic transactions. In: Keidar, I. (ed.) DISC 2009. LNCS, vol. 5805, pp. 93\u2013107. Springer, Heidelberg (2009). \nhttps:\/\/doi.org\/10.1007\/978-3-642-04355-0_12"},{"key":"16_CR12","doi-asserted-by":"crossref","unstructured":"Fiat, A., Kaplan, H.: Making data structures confluently persistent. J. Algorithms 48, 1 (2003). 12th ACM-SIAM Symposium on Discrete Algorithms","DOI":"10.1016\/S0196-6774(03)00044-0"},{"issue":"8","key":"16_CR13","doi-asserted-by":"publisher","first-page":"385","DOI":"10.1145\/2692916.2555281","volume":"49","author":"G Golan-Gueta","year":"2014","unstructured":"Golan-Gueta, G., Ramalingam, G., Sagiv, M., Yahav, E.: Automatic semantic locking. SIGPLAN Not. 49(8), 385\u2013386 (2014)","journal-title":"SIGPLAN Not."},{"key":"16_CR14","doi-asserted-by":"crossref","unstructured":"Hassan, A., Palmieri, R., Ravindran, B.: Optimistic transactional boosting. In: Proceedings of the 19th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2014, pp. 387\u2013388. ACM (2014)","DOI":"10.1145\/2692916.2555283"},{"issue":"1","key":"16_CR15","doi-asserted-by":"publisher","first-page":"124","DOI":"10.1145\/114005.102808","volume":"13","author":"M Herlihy","year":"1991","unstructured":"Herlihy, M.: Wait-free synchronization. ACM Trans. Program. Lang. Syst. 13(1), 124\u2013149 (1991)","journal-title":"ACM Trans. Program. Lang. Syst."},{"issue":"5","key":"16_CR16","doi-asserted-by":"publisher","first-page":"745","DOI":"10.1145\/161468.161469","volume":"15","author":"M Herlihy","year":"1993","unstructured":"Herlihy, M.: A methodology for implementing highly concurrent data objects. ACM Trans. Program. Lang. Syst. (TOPLAS) 15(5), 745\u2013770 (1993)","journal-title":"ACM Trans. Program. Lang. Syst. (TOPLAS)"},{"key":"16_CR17","doi-asserted-by":"crossref","unstructured":"Herlihy, M., Koskinen, E.: Transactional boosting: a methodology for highly-concurrent transactional objects. In: Proceedings of the 13th ACM SIGPLAN Symposium Principles and Practice of parallel Programming, PPoPP 2008. ACM (2008)","DOI":"10.1145\/1345206.1345237"},{"key":"16_CR18","doi-asserted-by":"crossref","unstructured":"Herman, N., et al.: Type-aware transactions for faster concurrent code. In: Proceedings of the Eleventh European Conference on Computer Systems, EuroSys 2016, pp. 31:1\u201331:16. ACM, New York (2016)","DOI":"10.1145\/2901318.2901348"},{"key":"16_CR19","doi-asserted-by":"crossref","unstructured":"Kim, D., Rinard, M.C.: Verification of semantic commutativity conditions and inverse operations on linked data structures. In: Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2011, San Jose, CA, USA, 4\u20138 June, pp. 528\u2013541 (2011)","DOI":"10.1145\/1993498.1993561"},{"key":"16_CR20","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/322358.322363","volume":"30","author":"HF Korth","year":"1983","unstructured":"Korth, H.F.: Locking primitives in a database system. J. ACM 30, 1 (1983)","journal-title":"J. ACM"},{"key":"16_CR21","unstructured":"Koskinen, E., Parkinson, M., Herlihy, M.: Coarse-grained transactions. In: Proceedings of the 37th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (2010), POPL 2010, pp. 19\u201330. ACM (2010)"},{"key":"16_CR22","doi-asserted-by":"crossref","unstructured":"Koskinen, E., Parkinson, M.J.: The push\/pull model of transactions. In: Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2015). ACM, Portland (2015)","DOI":"10.1145\/2737924.2737995"},{"key":"16_CR23","doi-asserted-by":"crossref","unstructured":"Kulkarni, M., Pingali, K., Walter, B., Ramanarayanan, G., Bala, K., Chew, L.P.: Optimistic parallelism requires abstractions. In: Proceedings of the ACM SIGPLAN 2007 Conference on Programming Language Design and Implementation (PLDI 2007), pp. 211\u2013222 (2007)","DOI":"10.1145\/1250734.1250759"},{"issue":"9","key":"16_CR24","doi-asserted-by":"publisher","first-page":"89","DOI":"10.1145\/1562164.1562188","volume":"52","author":"M Kulkarni","year":"2009","unstructured":"Kulkarni, M., Pingali, K., Walter, B., Ramanarayanan, G., Bala, K., Chew, L.P.: Optimistic parallelism requires abstractions. Commun. ACM 52(9), 89\u201397 (2009)","journal-title":"Commun. ACM"},{"key":"16_CR25","unstructured":"Ni, Y., et al.: Open nesting in software transactional memory. In: Proceedings of the 12th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (2007), PPoPP 2007, pp. 68\u201378. ACM (2007)"},{"key":"16_CR26","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"224","DOI":"10.1007\/978-3-642-41527-2_16","volume-title":"Distributed Computing","author":"E Petrank","year":"2013","unstructured":"Petrank, E., Timnat, S.: Lock-free data-structure iterators. In: Afek, Y. (ed.) DISC 2013. LNCS, vol. 8205, pp. 224\u2013238. Springer, Heidelberg (2013). \nhttps:\/\/doi.org\/10.1007\/978-3-642-41527-2_16"},{"key":"16_CR27","doi-asserted-by":"crossref","unstructured":"Prokopec, A.: SnapQueue: lock-free queue with constant time snapshots. In: Proceedings of the 6th ACM SIGPLAN Symposium on Scala, SCALA 2015, pp. 1\u201312. ACM, New York (2015)","DOI":"10.1145\/2774975.2774976"},{"issue":"8","key":"16_CR28","doi-asserted-by":"publisher","first-page":"151","DOI":"10.1145\/2370036.2145836","volume":"47","author":"Aleksandar Prokopec","year":"2012","unstructured":"Prokopec, A., Bronson, N.G., Bagwell, P., Odersky, M.: Concurrent tries with efficient non-blocking snapshots, pp. 151\u2013160","journal-title":"ACM SIGPLAN Notices"},{"key":"16_CR29","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"386","DOI":"10.1007\/978-3-642-24550-3_29","volume-title":"Stabilization, Safety, and Security of Distributed Systems","author":"M Shapiro","year":"2011","unstructured":"Shapiro, M., Pregui\u00e7a, N., Baquero, C., Zawirski, M.: Conflict-free replicated data types. In: D\u00e9fago, X., Petit, F., Villain, V. (eds.) SSS 2011. LNCS, vol. 6976, pp. 386\u2013400. Springer, Heidelberg (2011). \nhttps:\/\/doi.org\/10.1007\/978-3-642-24550-3_29"},{"issue":"6","key":"16_CR30","doi-asserted-by":"publisher","first-page":"682","DOI":"10.1145\/2980983.2908112","volume":"51","author":"Alexander Spiegelman","year":"2016","unstructured":"Spiegelman, A., Golan-Gueta, G., Keidar, I.: Transactional data structure libraries. In: Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 682\u2013696. ACM (2016)","journal-title":"ACM SIGPLAN Notices"},{"key":"16_CR31","doi-asserted-by":"crossref","unstructured":"Steele, Jr., G.L.: Making asynchronous parallelism safe for the world. In: Proceedings of the 17th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 1990), pp. 218\u2013231. ACM Press, New York (1990)","DOI":"10.1145\/96709.96731"},{"issue":"12","key":"16_CR32","doi-asserted-by":"publisher","first-page":"1488","DOI":"10.1109\/12.9728","volume":"37","author":"W Weihl","year":"1988","unstructured":"Weihl, W.: Commutativity-based concurrency control for abstract data types. IEEE Trans. Comput. 37(12), 1488\u20131505 (1988)","journal-title":"IEEE Trans. Comput."}],"container-title":["Lecture Notes in Computer Science","Programming Languages and Systems"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-34175-6_16","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,11,17]],"date-time":"2019-11-17T19:06:24Z","timestamp":1574017584000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-34175-6_16"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019]]},"ISBN":["9783030341749","9783030341756"],"references-count":32,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-34175-6_16","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2019]]},"assertion":[{"value":"18 November 2019","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"APLAS","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Asian Symposium on Programming Languages and Systems","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Nusa Dua, Bali","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Indonesia","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2019","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"1 December 2019","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"4 December 2019","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"17","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"aplas2019","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/conf.researchr.org\/home\/aplas-2019","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}