{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,12]],"date-time":"2026-02-12T11:36:30Z","timestamp":1770896190057,"version":"3.50.1"},"publisher-location":"Cham","reference-count":77,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783319756318","type":"print"},{"value":"9783319756325","type":"electronic"}],"license":[{"start":{"date-parts":[[2018,1,1]],"date-time":"2018-01-01T00:00:00Z","timestamp":1514764800000},"content-version":"unspecified","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":[[2018]]},"DOI":"10.1007\/978-3-319-75632-5_2","type":"book-chapter","created":{"date-parts":[[2018,2,9]],"date-time":"2018-02-09T20:09:21Z","timestamp":1518206961000},"page":"34-60","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":11,"title":["Discovering Concurrency Errors"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8495-6442","authenticated-orcid":false,"given":"Jo\u00e3o M.","family":"Louren\u00e7o","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jan","family":"Fiedor","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9572-1799","authenticated-orcid":false,"given":"Bohuslav","family":"K\u0159ena","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2746-8792","authenticated-orcid":false,"given":"Tom\u00e1\u0161","family":"Vojnar","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2018,2,11]]},"reference":[{"key":"2_CR1","unstructured":"Power Framework Delay Fuzzing, April 2013. http:\/\/msdn.microsoft.com\/en-us\/library\/hh454184(v=vs.85).aspx"},{"key":"2_CR2","doi-asserted-by":"crossref","unstructured":"Agarwal, R., Stoller, S.D.: Run-time detection of potential deadlocks for programs with locks, semaphores, and condition variables. In: Proceedings of PADTAD 2006, pp. 51\u201360. ACM, New York (2006)","DOI":"10.1145\/1147403.1147413"},{"key":"2_CR3","doi-asserted-by":"crossref","unstructured":"Agrawal, R., Imieli\u0144ski, T., Swami, A.: Mining association rules between sets of items in large databases. In: Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data, SIGMOD 1993, pp. 207\u2013216. ACM, New York (1993)","DOI":"10.1145\/170035.170072"},{"key":"2_CR4","doi-asserted-by":"crossref","unstructured":"Artho, C., Havelund, K., Biere, A.: High-level data races. In: The First International Workshop on Verification and Validation of Enterprise Information Systems, VVEIS 2003, Angers, France (2003)","DOI":"10.1002\/stvr.281"},{"key":"2_CR5","first-page":"8","volume":"27","author":"E Ayguade","year":"2007","unstructured":"Ayguade, E., Cristal, A., Unsal, O.S., Gagliardi, F., Smith, B., Valero, M., Harris, T.: Transactional memory: An overview. IEEE Micro 27, 8\u201329 (2007)","journal-title":"IEEE Micro"},{"key":"2_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"208","DOI":"10.1007\/11678779_15","volume-title":"Hardware and Software, Verification and Testing","author":"S Bensalem","year":"2006","unstructured":"Bensalem, S., Havelund, K.: Dynamic deadlock analysis of multi-threaded programs. In: Ur, S., Bin, E., Wolfsthal, Y. (eds.) HVC 2005. LNCS, vol. 3875, pp. 208\u2013223. Springer, Heidelberg (2006). https:\/\/doi.org\/10.1007\/11678779_15"},{"key":"2_CR7","doi-asserted-by":"crossref","unstructured":"Bodden, E., Havelund, K.: Racer: Effective race detection using aspectj. In: Proceedings of the 2008 International Symposium on Software Testing and Analysis, ISSTA 2008, pp. 155\u2013166. ACM, New York (2008)","DOI":"10.1145\/1390630.1390650"},{"key":"2_CR8","doi-asserted-by":"crossref","unstructured":"Choi, J.D., Lee, K., Loginov, A., O\u2019Callahan, R., Sarkar, V., Sridharan, M.: Efficient and precise datarace detection for multithreaded object-oriented programs. In: Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation, PLDI 2002, pp. 258\u2013269. ACM, New York (2002)","DOI":"10.1145\/512529.512560"},{"key":"2_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"761","DOI":"10.1007\/3-540-45718-6_81","volume-title":"Computational Science - ICCS 2001","author":"M Christiaens","year":"2001","unstructured":"Christiaens, M., De Bosschere, K.: TRaDe: Data race detection for java. In: Alexandrov, V.N., Dongarra, J.J., Juliano, B.A., Renner, R.S., Tan, C.J.K. (eds.) ICCS 2001. LNCS, vol. 2074, pp. 761\u2013770. Springer, Heidelberg (2001). https:\/\/doi.org\/10.1007\/3-540-45718-6_81"},{"key":"2_CR10","doi-asserted-by":"crossref","first-page":"67","DOI":"10.1145\/356586.356588","volume":"3","author":"EG Coffman","year":"1971","unstructured":"Coffman, E.G., Elphick, M., Shoshani, A.: System deadlocks. ACM Comput. Surv. 3, 67\u201378 (1971)","journal-title":"ACM Comput. Surv."},{"key":"2_CR11","doi-asserted-by":"crossref","unstructured":"Deshmukh, J., Emerson, E.A., Sankaranarayanan, S.: Symbolic deadlock analysis in concurrent libraries and their clients. In: Proceedings of the 2009 IEEE\/ACM International Conference on Automated Software Engineering, ASE 2009, pp. 480\u2013491. IEEE, Washington, DC (2009)","DOI":"10.1109\/ASE.2009.14"},{"key":"2_CR12","doi-asserted-by":"crossref","unstructured":"Dias, R.F., Ferreira, C., Fiedor, J., Louren\u00e7o, J.M., Smr\u010dka, A., Sousa, D.G., Vojnar, T.: Verifying concurrent programs using contracts. In: Proceedings of ICST 2017. IEEE Computer Society, Washington, DC (2017)","DOI":"10.1109\/ICST.2017.25"},{"key":"2_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"8","DOI":"10.1007\/978-3-642-39611-3_8","volume-title":"Hardware and Software: Verification and Testing","author":"RJ Dias","year":"2013","unstructured":"Dias, R.J., Pessanha, V., Louren\u00e7o, J.M.: Precise detection of atomicity violations. In: Biere, A., Nahir, A., Vos, T. (eds.) HVC 2012. LNCS, vol. 7857, pp. 8\u201323. Springer, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-39611-3_8"},{"issue":"3\u20135","key":"2_CR14","doi-asserted-by":"crossref","first-page":"485","DOI":"10.1002\/cpe.654","volume":"15","author":"O Edelstein","year":"2003","unstructured":"Edelstein, O., Farchi, E., Goldin, E., Nir, Y., Ratsaby, G., Ur, S.: Framework for testing multi-threaded java programs. Concurrency Comput. Pract. Experience 15(3\u20135), 485\u2013499 (2003)","journal-title":"Concurrency Comput. Pract. Experience"},{"key":"2_CR15","doi-asserted-by":"crossref","unstructured":"Elmas, T., Qadeer, S., Tasiran, S.: Goldilocks: a race and transaction-aware java runtime. In: Proceedings of PLDI 2007, pp. 245\u2013255. ACM, New York (2007)","DOI":"10.1145\/1250734.1250762"},{"issue":"5","key":"2_CR16","doi-asserted-by":"crossref","first-page":"237","DOI":"10.1145\/1165389.945468","volume":"37","author":"D Engler","year":"2003","unstructured":"Engler, D., Ashcraft, K.: RacerX: Effective, static detection of race conditions and deadlocks. SIGOPS Oper. Syst. Rev. 37(5), 237\u2013252 (2003)","journal-title":"SIGOPS Oper. Syst. Rev."},{"key":"2_CR17","doi-asserted-by":"crossref","first-page":"624","DOI":"10.1145\/360363.360369","volume":"19","author":"KP Eswaran","year":"1976","unstructured":"Eswaran, K.P., Gray, J.N., Lorie, R.A., Traiger, I.L.: The notions of consistency and predicate locks in a database system. Commun. ACM 19, 624\u2013633 (1976). http:\/\/doi.acm.org\/10.1145\/360363.360369","journal-title":"Commun. ACM"},{"key":"2_CR18","doi-asserted-by":"crossref","unstructured":"Farchi, E., Nir, Y., Ur, S.: Concurrent bug patterns and how to test them. In: Proceedings of the 17th International Symposium on Parallel and Distributed Processing, IPDPS 2003, p. 286.2. IEEE Computer Society, Washington, DC (2003)","DOI":"10.1109\/IPDPS.2003.1213511"},{"key":"2_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"519","DOI":"10.1007\/978-3-642-27549-4_67","volume-title":"Computer Aided Systems Theory \u2013 EUROCAST 2011","author":"J Fiedor","year":"2012","unstructured":"Fiedor, J., K\u0159ena, B., Letko, Z., Vojnar, T.: A uniform classification of common concurrency errors. In: Moreno-D\u00edaz, R., Pichler, F., Quesada-Arencibia, A. (eds.) EUROCAST 2011. LNCS, vol. 6927, pp. 519\u2013526. Springer, Heidelberg (2012). https:\/\/doi.org\/10.1007\/978-3-642-27549-4_67"},{"key":"2_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"555","DOI":"10.1007\/978-3-319-27340-2_69","volume-title":"Computer Aided Systems Theory \u2013 EUROCAST 2015","author":"J Fiedor","year":"2015","unstructured":"Fiedor, J., Letko, Z., Louren\u00e7o, J., Vojnar, T.: Dynamic validation of contracts in concurrent code. In: Moreno-D\u00edaz, R., Pichler, F., Quesada-Arencibia, A. (eds.) EUROCAST 2015. LNCS, vol. 9520, pp. 555\u2013564. Springer, Cham (2015). https:\/\/doi.org\/10.1007\/978-3-319-27340-2_69"},{"key":"2_CR21","doi-asserted-by":"crossref","unstructured":"Fiedor, J., Vojnar, T.: Noise-based testing and analysis of multi-threaded C\/C++ programs on the binary level. In: PADTAD 2012, pp. 36\u201346. ACM (2012)","DOI":"10.1145\/2338967.2336813"},{"key":"2_CR22","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"35","DOI":"10.1007\/978-3-642-35632-2_5","volume-title":"Runtime Verification","author":"J Fiedor","year":"2013","unstructured":"Fiedor, J., Vojnar, T.: ANaConDA: A framework for analysing multi-threaded C\/C++ programs on the binary level. In: Qadeer, S., Tasiran, S. (eds.) RV 2012. LNCS, vol. 7687, pp. 35\u201341. Springer, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-35632-2_5"},{"key":"2_CR23","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Freund, S.N.: Type-based race detection for java. In: Proceedings of the ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation, PLDI 2000, pp. 219\u2013232. ACM, New York (2000)","DOI":"10.1145\/349299.349328"},{"issue":"1","key":"2_CR24","doi-asserted-by":"crossref","first-page":"256","DOI":"10.1145\/982962.964023","volume":"39","author":"C Flanagan","year":"2004","unstructured":"Flanagan, C., Freund, S.N.: Atomizer: A dynamic atomicity checker for multithreaded programs. SIGPLAN Not. 39(1), 256\u2013267 (2004)","journal-title":"SIGPLAN Not."},{"issue":"1","key":"2_CR25","doi-asserted-by":"crossref","first-page":"140","DOI":"10.1016\/j.scico.2006.03.006","volume":"64","author":"C Flanagan","year":"2007","unstructured":"Flanagan, C., Freund, S.N.: Type inference against races. Sci. Comput. Program. 64(1), 140\u2013165 (2007)","journal-title":"Sci. Comput. Program."},{"key":"2_CR26","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Freund, S.N.: FastTrack: efficient and precise dynamic race detection. In: Proceedings of the 2009 ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2009, pp. 121\u2013133. ACM, New York (2009)","DOI":"10.1145\/1542476.1542490"},{"key":"2_CR27","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Freund, S.N.: The roadrunner dynamic analysis framework for concurrent programs. In: Proceedings of the 9th ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering, PASTE 2010, pp. 1\u20138. ACM, New York (2010). http:\/\/doi.acm.org\/10.1145\/1806672.1806674","DOI":"10.1145\/1806672.1806674"},{"issue":"4","key":"2_CR28","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/1377492.1377495","volume":"30","author":"C Flanagan","year":"2008","unstructured":"Flanagan, C., Freund, S.N., Lifshin, M., Qadeer, S.: Types for atomicity: static checking and inference for java. ACM Trans. Program. Lang. Syst. 30(4), 1\u201353 (2008)","journal-title":"ACM Trans. Program. Lang. Syst."},{"issue":"6","key":"2_CR29","doi-asserted-by":"crossref","first-page":"293","DOI":"10.1145\/1379022.1375618","volume":"43","author":"C Flanagan","year":"2008","unstructured":"Flanagan, C., Freund, S.N., Yi, J.: Velodrome: A sound and complete dynamic atomicity checker for multithreaded programs. SIGPLAN Not. 43(6), 293\u2013303 (2008)","journal-title":"SIGPLAN Not."},{"issue":"2","key":"2_CR30","doi-asserted-by":"crossref","first-page":"77","DOI":"10.1007\/s10703-005-1489-x","volume":"26","author":"P Godefroid","year":"2005","unstructured":"Godefroid, P.: Software model checking: The verisoft approach. Form. Methods Syst. Des. 26(2), 77\u2013101 (2005)","journal-title":"Form. Methods Syst. Des."},{"issue":"4","key":"2_CR31","doi-asserted-by":"crossref","first-page":"411","DOI":"10.1017\/S0960129500003133","volume":"10","author":"E Goubault","year":"2000","unstructured":"Goubault, E.: Geometry and concurrency: a user\u2019s guide. Math. Struct. Comput. Sci. 10(4), 411\u2013425 (2000)","journal-title":"Math. Struct. Comput. Sci."},{"key":"2_CR32","doi-asserted-by":"crossref","unstructured":"Hammer, C., Dolby, J., Vaziri, M., Tip, F.: Dynamic detection of atomic-set-serializability violations. In: Proceedings of the 30th International Conference on Software Engineering, ICSE 2008, pp. 231\u2013240. ACM, New York (2008)","DOI":"10.1145\/1368088.1368120"},{"key":"2_CR33","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"245","DOI":"10.1007\/10722468_15","volume-title":"SPIN Model Checking and Software Verification","author":"K Havelund","year":"2000","unstructured":"Havelund, K.: Using runtime analysis to guide model checking of java programs. In: Havelund, K., Penix, J., Visser, W. (eds.) SPIN 2000. LNCS, vol. 1885, pp. 245\u2013264. Springer, Heidelberg (2000). https:\/\/doi.org\/10.1007\/10722468_15"},{"key":"2_CR34","unstructured":"Ho, A., Smith, S., Hand, S.: On deadlock, livelock, and forward progress. University of Cambridge, Technical report (2005)"},{"key":"2_CR35","volume-title":"Spin Model Checker, The: Primer and Reference Manual","author":"G Holzmann","year":"2003","unstructured":"Holzmann, G.: Spin Model Checker, The: Primer and Reference Manual. Addison-Wesley Professional, Reading (2003)"},{"key":"2_CR36","doi-asserted-by":"crossref","unstructured":"Hong, S., Ahn, J., Park, S., Kim, M., Harrold, M.J.: Testing concurrent programs to achieve high synchronization coverage. In: Proceedings of ISSTA 2012, pp. 210\u2013220. ACM, New York (2012)","DOI":"10.1145\/2338965.2336779"},{"key":"2_CR37","unstructured":"Hovemeyer, D., Pugh, W.: Finding concurrency bugs in java. In: 23rd Annual ACM SIGACTSIGOPS Symposium on Principles of Distributed Computing (PODC 2004) Workshop on Concurrency and Programs, July 2004"},{"key":"2_CR38","doi-asserted-by":"crossref","unstructured":"Joshi, P., Park, C.S., Sen, K., Naik, M.: A randomized dynamic program analysis technique for detecting real deadlocks. In: Proceedings of the 2009 ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2009, pp. 110\u2013120. ACM, New York (2009)","DOI":"10.1145\/1542476.1542489"},{"key":"2_CR39","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"226","DOI":"10.1007\/978-3-540-73368-3_26","volume-title":"Computer Aided Verification","author":"V Kahlon","year":"2007","unstructured":"Kahlon, V., Yang, Y., Sankaranarayanan, S., Gupta, A.: Fast and accurate static data-race detection for concurrent programs. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 226\u2013239. Springer, Heidelberg (2007). https:\/\/doi.org\/10.1007\/978-3-540-73368-3_26"},{"key":"2_CR40","doi-asserted-by":"crossref","unstructured":"Kim, K., Yavuz-Kahveci, T., Sanders, B.A.: Precise data race detection in a relaxed memory model using heuristic-based model checking. In: ASE, pp. 495\u2013499. IEEE (2009)","DOI":"10.1109\/ASE.2009.82"},{"key":"2_CR41","doi-asserted-by":"crossref","unstructured":"K\u0159ena, B., Letko, Z., Tzoref, R., Ur, S., Vojnar, T.: Healing data races on-the-fly. In: Proceedings of PADTAD 2007, pp. 54\u201364. ACM, New York (2007)","DOI":"10.1145\/1273647.1273658"},{"issue":"9","key":"2_CR42","doi-asserted-by":"publisher","first-page":"690","DOI":"10.1109\/TC.1979.1675439","volume":"28","author":"L Lamport","year":"1979","unstructured":"Lamport, L.: How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Comput. 28(9), 690\u2013691 (1979). https:\/\/doi.org\/10.1109\/TC.1979.1675439","journal-title":"IEEE Trans. Comput."},{"issue":"7","key":"2_CR43","doi-asserted-by":"crossref","first-page":"558","DOI":"10.1145\/359545.359563","volume":"21","author":"L Lamport","year":"1978","unstructured":"Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558\u2013565 (1978)","journal-title":"Commun. ACM"},{"key":"2_CR44","doi-asserted-by":"crossref","unstructured":"Laurenzano, M., Tikir, M., Carrington, L., Snavely, A.: PEBIL: Efficient static binary instrumentation for linux. In: ISPASS 2010, pp. 175\u2013183 (2010)","DOI":"10.1109\/ISPASS.2010.5452024"},{"key":"2_CR45","unstructured":"Letko, Z., Vojnar, T., K\u0159ena, B.: Atomrace: Data race and atomicity violation detector and healer. In: Proceedings of the 6th Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging, PADTAD 2008, pp. 7:1\u20137:10. ACM, New York (2008). http:\/\/doi.acm.org\/10.1145\/1390841.1390848"},{"issue":"12","key":"2_CR46","doi-asserted-by":"crossref","first-page":"717","DOI":"10.1145\/361227.361234","volume":"18","author":"RJ Lipton","year":"1975","unstructured":"Lipton, R.J.: Reduction: A method of proving properties of parallel programs. Commun. ACM 18(12), 717\u2013721 (1975)","journal-title":"Commun. ACM"},{"issue":"6","key":"2_CR47","doi-asserted-by":"crossref","first-page":"103","DOI":"10.1145\/1323293.1294272","volume":"41","author":"S Lu","year":"2007","unstructured":"Lu, S., Park, S., Hu, C., Ma, X., Jiang, W., Li, Z., Popa, R.A., Zhou, Y.: MUVI: Automatically inferring multi-variable access correlations and detecting related semantic and concurrency bugs. SIGOPS Oper. Syst. Rev. 41(6), 103\u2013116 (2007)","journal-title":"SIGOPS Oper. Syst. Rev."},{"key":"2_CR48","doi-asserted-by":"crossref","unstructured":"Lu, S., Tucek, J., Qin, F., Zhou, Y.: AVIO: Detecting atomicity violations via access interleaving invariants. In: Proceedings of ASPLOS 2006, pp. 37\u201348. ACM, New York (2006)","DOI":"10.1145\/1168857.1168864"},{"key":"2_CR49","doi-asserted-by":"crossref","unstructured":"Luk, C.K., Cohn, R., Muth, R., Patil, H., Klauser, A., Lowney, G., Wallace, S., Reddi, V.J., Hazelwood, K.: Pin: building customized program analysis tools with dynamic instrumentation. In: Proceedings of PLDI 2005. ACM (2005)","DOI":"10.1145\/1065010.1065034"},{"key":"2_CR50","doi-asserted-by":"crossref","unstructured":"Masticola, S.P., Ryder, B.G.: Non-concurrency analysis. In: Proceedings of the Fourth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP 1993, pp. 129\u2013138. ACM, New York (1993)","DOI":"10.1145\/155332.155346"},{"key":"2_CR51","unstructured":"Mattern, F.: Virtual time and global states of distributed systems. In: Proceedings of the International Workshop on Parallel and Distributed Algorithms. Elsevier Science Publishers (1988). http:\/\/citeseer.ist.psu.edu\/mattern89virtual.html"},{"key":"2_CR52","unstructured":"Musuvathi, M., Qadeer, S., Ball, T.: CHESS: A Systematic Testing Tool for Concurrent Software. Technical report MSR-TR-2007-149, Microsoft Research (2007)"},{"key":"2_CR53","unstructured":"Musuvathi, M., Qadeer, S., Ball, T., Basler, G., Nainar, P.A., Neamtiu, I.: Finding and reproducing heisenbugs in concurrent programs. In: OSDI 2008, pp. 267\u2013280. USENIX Association, Berkeley (2008). http:\/\/dl.acm.org\/citation.cfm?id=1855741.1855760"},{"issue":"6","key":"2_CR54","doi-asserted-by":"crossref","first-page":"308","DOI":"10.1145\/1133255.1134018","volume":"41","author":"M Naik","year":"2006","unstructured":"Naik, M., Aiken, A., Whaley, J.: Effective static race detection for java. SIGPLAN Not. 41(6), 308\u2013319 (2006)","journal-title":"SIGPLAN Not."},{"key":"2_CR55","doi-asserted-by":"crossref","unstructured":"Nethercote, N., Seward, J.: Valgrind: a framework for heavyweight dynamic binary instrumentation. In: PLDI 2007, pp. 89\u2013100. ACM, New York (2007). http:\/\/doi.acm.org\/10.1145\/1250734.1250746","DOI":"10.1145\/1250734.1250746"},{"key":"2_CR56","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"104","DOI":"10.1007\/978-3-540-89247-2_7","volume-title":"Runtime Verification","author":"Y Nir-Buchbinder","year":"2008","unstructured":"Nir-Buchbinder, Y., Tzoref, R., Ur, S.: Deadlocks: from exhibiting to healing. In: Leucker, M. (ed.) RV 2008. LNCS, vol. 5289, pp. 104\u2013118. Springer, Heidelberg (2008). https:\/\/doi.org\/10.1007\/978-3-540-89247-2_7"},{"key":"2_CR57","doi-asserted-by":"crossref","unstructured":"Nonaka, Y., Ushijima, K., Serizawa, H., Murata, S., Cheng, J.: A run-time deadlock detector for concurrent java programs. In: Proceedings of the Eighth Asia-Pacific on Software Engineering Conference, APSEC 2001, p. 45. IEEE, Washington, DC (2001)","DOI":"10.1109\/APSEC.2001.991458"},{"key":"2_CR58","doi-asserted-by":"crossref","unstructured":"O\u2019Callahan, R., Choi, J.D.: Hybrid dynamic data race detection. In: Proceedings of the Ninth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2003, pp. 167\u2013178. ACM, New York (2003)","DOI":"10.1145\/781498.781528"},{"key":"2_CR59","unstructured":"Park, S., Vuduc, R.W., Harrold, M.J.: Falcon: Fault localization in concurrent programs. In: Proceedings of the 32nd ACM\/IEEE International Conference on Software Engineering - Volume 1, ICSE 2010, pp. 245\u2013254. ACM, New York (2010). http:\/\/doi.acm.org\/10.1145\/1806799.1806838"},{"key":"2_CR60","unstructured":"Poulsen, K.: Tracking the blackout bug (2004). http:\/\/www.securityfocus.com\/news\/8412"},{"key":"2_CR61","doi-asserted-by":"crossref","unstructured":"Pozniansky, E., Schuster, A.: Efficient on-the-fly data race detection in multithreaded C++ programs. In: Proceedings of PPoPP 2003, pp. 179\u2013190. ACM, New York (2003)","DOI":"10.1145\/966049.781529"},{"issue":"3","key":"2_CR62","doi-asserted-by":"crossref","first-page":"327","DOI":"10.1002\/cpe.1064","volume":"19","author":"E Pozniansky","year":"2007","unstructured":"Pozniansky, E., Schuster, A.: MultiRace: efficient on-the-fly data race detection in multithreaded C++ programs: research articles. Concurr. Comput. Pract. Exper. 19(3), 327\u2013340 (2007)","journal-title":"Concurr. Comput. Pract. Exper."},{"key":"2_CR63","doi-asserted-by":"crossref","unstructured":"von Praun, C., Gross, T.R.: Object race detection. In: Proceedings of OOPSLA 2001, pp. 70\u201382. ACM, New York (2001)","DOI":"10.1145\/504282.504288"},{"key":"2_CR64","doi-asserted-by":"crossref","unstructured":"Savage, S., Burrows, M., Nelson, G., Sobalvarro, P., Anderson, T.: Eraser: a dynamic data race detector for multi-threaded programs. In: Proceedings of SOSP 1997, pp. 27\u201337. ACM, New York (1997)","DOI":"10.1145\/268998.266641"},{"key":"2_CR65","unstructured":"Sousa, D.G., Dias, R.J., Ferreira, C., Louren\u00e7o, J.M.: Preventing atomicity violations with contracts, May 2015. arXiv preprint arXiv:1505.02951"},{"key":"2_CR66","doi-asserted-by":"crossref","unstructured":"Vaziri, M., Tip, F., Dolby, J.: Associating synchronization constraints with data in an object-oriented language. In: Conference Record of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, pp. 334\u2013345. ACM, New York (2006)","DOI":"10.1145\/1111037.1111067"},{"key":"2_CR67","doi-asserted-by":"crossref","unstructured":"Visser, W., Havelund, K., Brat, G., Park, S.: Model checking programs. In: Proceedings of ASE 2000, p. 3. IEEE Computer Society, Washington, DC (2000)","DOI":"10.1109\/ASE.2000.873645"},{"key":"2_CR68","doi-asserted-by":"crossref","unstructured":"Wang, L., Stoller, S.D.: Static analysis of atomicity for programs with non-blocking synchronization. In: Proceedings of the Tenth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2005, pp. 61\u201371. ACM, New York (2005)","DOI":"10.1145\/1065944.1065953"},{"issue":"2","key":"2_CR69","doi-asserted-by":"crossref","first-page":"93","DOI":"10.1109\/TSE.2006.1599419","volume":"32","author":"L Wang","year":"2006","unstructured":"Wang, L., Stoller, S.D.: Runtime analysis of atomicity for multithreaded programs. IEEE Trans. Softw. Eng. 32(2), 93\u2013110 (2006)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"2_CR70","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"602","DOI":"10.1007\/11531142_26","volume-title":"ECOOP 2005 - Object-Oriented Programming","author":"A Williams","year":"2005","unstructured":"Williams, A., Thies, W., Ernst, M.D.: Static deadlock detection for java libraries. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, pp. 602\u2013629. Springer, Heidelberg (2005). https:\/\/doi.org\/10.1007\/11531142_26"},{"key":"2_CR71","doi-asserted-by":"crossref","unstructured":"Wu, J., Tang, Y., Hu, G., Cui, H., Yang, J.: Sound and precise analysis of parallel programs through schedule specialization. In: Proceedings of PLDI 2012, pp. 205\u2013216. ACM, New York (2012)","DOI":"10.1145\/2254064.2254090"},{"issue":"6","key":"2_CR72","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/1064978.1065013","volume":"40","author":"M Xu","year":"2005","unstructured":"Xu, M., Bod\u00edk, R., Hill, M.D.: A serializability violation detector for shared-memory server programs. SIGPLAN Not. 40(6), 1\u201314 (2005)","journal-title":"SIGPLAN Not."},{"key":"2_CR73","unstructured":"Yang, Y., Gringauze, A., Wu, D., Rohde, H.: Detecting Data Race and Atomicity Violation via Typestate-Guided Static Analysis. Technical report MSR-TR-2008-108, Microsoft Research (2008)"},{"issue":"3","key":"2_CR74","doi-asserted-by":"crossref","first-page":"325","DOI":"10.1145\/1555815.1555796","volume":"37","author":"J Yu","year":"2009","unstructured":"Yu, J., Narayanasamy, S.: A case for an interleaving constrained shared-memory multi-processor. SIGARCH Comput. Archit. News 37(3), 325\u2013336 (2009)","journal-title":"SIGARCH Comput. Archit. News"},{"key":"2_CR75","doi-asserted-by":"crossref","unstructured":"Yu, J., Narayanasamy, S., Pereira, C., Pokam, G.: Maple: A coverage-driven testing tool for multithreaded programs. In: Proceedings of OOPSLA 2012, pp. 485\u2013502. ACM, New York (2012)","DOI":"10.1145\/2384616.2384651"},{"issue":"5","key":"2_CR76","doi-asserted-by":"crossref","first-page":"221","DOI":"10.1145\/1095809.1095832","volume":"39","author":"Y Yu","year":"2005","unstructured":"Yu, Y., Rodeheffer, T., Chen, W.: RaceTrack: efficient detection of data race conditions via adaptive tracking. SIGOPS Oper. Syst. Rev. 39(5), 221\u2013234 (2005)","journal-title":"SIGOPS Oper. Syst. Rev."},{"key":"2_CR77","doi-asserted-by":"crossref","unstructured":"Zhang, W., Sun, C., Lu, S.: ConMem: detecting severe concurrency bugs through an effect-oriented approach. In: Proceedings of the Fifteenth Edition of ASPLOS on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2010, pp. 179\u2013192. ACM, New York (2010)","DOI":"10.1145\/1736020.1736041"}],"container-title":["Lecture Notes in Computer Science","Lectures on Runtime Verification"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-75632-5_2","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,10,10]],"date-time":"2019-10-10T15:12:40Z","timestamp":1570720360000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-75632-5_2"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018]]},"ISBN":["9783319756318","9783319756325"],"references-count":77,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-75632-5_2","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018]]}}}