{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,1]],"date-time":"2026-03-01T00:05:10Z","timestamp":1772323510518,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":38,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642226540","type":"print"},{"value":"9783642226557","type":"electronic"}],"license":[{"start":{"date-parts":[[2011,1,1]],"date-time":"2011-01-01T00:00:00Z","timestamp":1293840000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2011]]},"DOI":"10.1007\/978-3-642-22655-7_28","type":"book-chapter","created":{"date-parts":[[2011,7,18]],"date-time":"2011-07-18T13:37:43Z","timestamp":1310996263000},"page":"609-633","source":"Crossref","is-referenced-by-count":21,"title":["Detecting and Escaping Infinite Loops with Jolt"],"prefix":"10.1007","author":[{"given":"Michael","family":"Carbin","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sasa","family":"Misailovic","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael","family":"Kling","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Martin C.","family":"Rinard","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"28_CR1","unstructured":"Exuberant ctags, http:\/\/ctags.sourceforge.net"},{"key":"28_CR2","unstructured":"GNU grep, http:\/\/www.gnu.org\/software\/grep"},{"key":"28_CR3","unstructured":"GNU indent, http:\/\/www.gnu.org\/software\/indent"},{"key":"28_CR4","unstructured":"GNU sed, http:\/\/www.gnu.org\/software\/sed"},{"key":"28_CR5","unstructured":"GStreamer, http:\/\/www.gstreamer.net"},{"key":"28_CR6","unstructured":"numpy, http:\/\/numpy.scipy.org"},{"key":"28_CR7","unstructured":"scipy, http:\/\/www.scipy.org"},{"key":"28_CR8","doi-asserted-by":"crossref","unstructured":"Bradley, A.R., Manna, Z., Sipma, H.B.: Termination of polynomial programs. In: International Conference on Verification, Model Checking, and Abstract Interpretation (2005)","DOI":"10.1007\/978-3-540-30579-8_8"},{"key":"28_CR9","doi-asserted-by":"crossref","unstructured":"Burnim, J., Jalbert, N., Stergiou, C., Sen, K.: Looper: Lightweight detection of infinite loops at runtime. In: International Conference on Automated Software Engineering (2009)","DOI":"10.1109\/ASE.2009.87"},{"key":"28_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"442","DOI":"10.1007\/3-540-45657-0_36","volume-title":"Computer Aided Verification","author":"M.A. Col\u00f3n","year":"2002","unstructured":"Col\u00f3n, M.A., Sipma, H.B.: Practical methods for proving program termination. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol.\u00a02404, pp. 442\u2013454. Springer, Heidelberg (2002)"},{"key":"28_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"415","DOI":"10.1007\/11817963_37","volume-title":"Computer Aided Verification","author":"B. Cook","year":"2006","unstructured":"Cook, B., Podelski, A., Rybalchenko, A.: Terminator: beyond safety. In: Ball, T., Jones, R.B. (eds.) CAV 2006. LNCS, vol.\u00a04144, pp. 415\u2013418. Springer, Heidelberg (2006)"},{"key":"28_CR12","doi-asserted-by":"crossref","unstructured":"Dallmeier, V., Zeller, A., Meyer, B.: Generating fixes from object behavior anomalies. In: International Conference on Automated Software Engineering (2009)","DOI":"10.1109\/ASE.2009.15"},{"key":"28_CR13","doi-asserted-by":"crossref","unstructured":"Demsky, B., Rinard, M.: Data structure repair using goal-directed reasoning. In: International Conference on Software Engineering (2005)","DOI":"10.1145\/1062455.1062499"},{"key":"28_CR14","doi-asserted-by":"crossref","unstructured":"Gupta, A., Henzinger, T.A., Majumdar, R., Rybalchenko, A., Xu, R.G.: Proving non-termination. In: Symposium on Principles of Programming Languages (2008)","DOI":"10.1145\/1328438.1328459"},{"key":"28_CR15","doi-asserted-by":"crossref","unstructured":"Hayashizaki, H., Wu, P., Inoue, H., Serrano, M., Nakatani, T.: Improving the performance of trace-based systems by false loop filtering. In: International Conference on Architectural Support for Programming Languages and Operating Systems (2011)","DOI":"10.1145\/1950365.1950412"},{"key":"28_CR16","unstructured":"Lattner, C., Adve, V.: LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation. In: International Symposium on Code Generation and Optimization (2004)"},{"key":"28_CR17","doi-asserted-by":"crossref","unstructured":"Li, Z., Tan, L., Wang, X., Lu, S., Zhou, Y., Zhai, C.: Have things changed now? an empirical study of bug characteristics in modern open source software. In: Workshop on Architectural and System Support for Improving Software Dependability (2006)","DOI":"10.1145\/1181309.1181314"},{"key":"28_CR18","doi-asserted-by":"crossref","unstructured":"Luk, C., Cohn, R., Muth, R., Patil, H., Klauser, A., Lowney, G., Wallace, S., Reddi, V., Hazelwood, K.: Pin: Building customized program analysis tools with dynamic instrumentation. In: Conference on Programming Language Design and Implementation (2005)","DOI":"10.1145\/1065010.1065034"},{"key":"28_CR19","unstructured":"Metz, C.: Mozilla girds firefox with hang detector (June 2010), http:\/\/www.theregister.co.uk\/2010\/06\/10\/firefox_hang_detector\/"},{"key":"28_CR20","unstructured":"Miller, B., Koski, D., Lee, C., Maganty, V., Murthy, R., Natarajan, A., Steidl, J.: Fuzz revisited: A re-examination of the reliability of Unix utilities and services. TR #1268, Computer Sciences Department, University of Wisconsin (1995)"},{"key":"28_CR21","unstructured":"Muchnick, S.: Advanced Compiler Design and Implementation (1997)"},{"key":"28_CR22","doi-asserted-by":"crossref","unstructured":"Nagarajan, V., Jeffrey, D., Gupta, R.: Self-recovery in server programs. In: International Symposium on Memory Management (2009)","DOI":"10.1145\/1542431.1542439"},{"issue":"2","key":"28_CR23","doi-asserted-by":"publisher","first-page":"44","DOI":"10.1016\/S1571-0661(04)81042-9","volume":"89","author":"N. Nethercote","year":"2003","unstructured":"Nethercote, N., Seward, J.: Valgrind A Program Supervision Framework. Electronic Notes in Theoretical Computer Science\u00a089(2), 44\u201366 (2003)","journal-title":"Electronic Notes in Theoretical Computer Science"},{"key":"28_CR24","doi-asserted-by":"crossref","unstructured":"Nguyen, H.H., Rinard, M.: Detecting and eliminating memory leaks using cyclic memory allocation. In: International Symposium on Memory Management (2007)","DOI":"10.1145\/1296907.1296912"},{"key":"28_CR25","doi-asserted-by":"crossref","unstructured":"Palix, N., Thomas, G., Saha, S., Calv\u00e8s, C., Lawall, J., Muller, G.: Faults in Linux: Ten years later. In: International Conference on Architectural Support for Programming Languages and Operating Systems (2011)","DOI":"10.1145\/1950365.1950401"},{"key":"28_CR26","doi-asserted-by":"crossref","unstructured":"Perkins, J., Kim, S., Larsen, S., Amarasinghe, S., Bachrach, J., Carbin, M., Pacheco, C., Sherwood, F., Sidiroglou, S., Sullivan, G., Wong, W., Zibin, Y., Ernst, M., Rinard, M.: Automatically patching errors in deployed software. In: Symposium on Operating Systems Principles (2009)","DOI":"10.1145\/1629575.1629585"},{"key":"28_CR27","doi-asserted-by":"crossref","unstructured":"Qin, F., Tucek, J., Sundaresan, J., Zhou, Y.: Rx: treating bugs as allergies\u2014a safe method to survive software failures. In: Symposium on Operating Systems Principles (2005)","DOI":"10.1145\/1095810.1095833"},{"key":"28_CR28","unstructured":"Rinard, M., Cadar, C., Dumitran, D., Roy, D.M., Leu, T., Beebee Jr., W.S.: Enhancing server availability and security through failure-oblivious computing. In: Symposium on Operating Systems Design and Implementation (2004)"},{"key":"28_CR29","doi-asserted-by":"crossref","unstructured":"Schulte, E., Forrest, S., Weimer, W.: Automated program repair through the evolution of assembly code. In: International Conference on Automated Software Engineering (2010)","DOI":"10.1145\/1858996.1859059"},{"key":"28_CR30","doi-asserted-by":"crossref","unstructured":"Sidiroglou, S., Laadan, O., Perez, C., Viennot, N., Nieh, J., Keromytis, A.: Assure: automatic software self-healing using rescue points. In: International Conference on Architectural Support for Programming Languages and Operating Systems (2009)","DOI":"10.1145\/1508244.1508250"},{"key":"28_CR31","unstructured":"Sidiroglou, S., Locasto, M., Boyd, S., Keromytis, A.: Building a reactive immune system for software services. In: USENIX Annual Technical Conference (2005)"},{"key":"28_CR32","unstructured":"Song, X., Chen, H., Zang, B.: Why software hangs and what can be done with it. In: International Conference on Dependable Systems and Networks (2010)"},{"key":"28_CR33","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/1709093.1709095","volume":"32","author":"F. Spoto","year":"2010","unstructured":"Spoto, F., Mesnard, F., Payet, \u00c9.: A termination analyzer for java bytecode based on path-length. Transactions on Programming Languages and Systems\u00a032, 1\u201370 (2010)","journal-title":"Transactions on Programming Languages and Systems"},{"key":"28_CR34","doi-asserted-by":"crossref","unstructured":"Theiling, H.: Extracting safe and precise control flow from binaries. In: International Conference on Real-Time Systems and Applications (2000)","DOI":"10.1109\/RTCSA.2000.896367"},{"key":"28_CR35","doi-asserted-by":"crossref","unstructured":"Velroyen, H., R\u00fcmmer, P.: Non-termination checking for imperative programs. In: International Conference on Tests and Proofs (2008)","DOI":"10.1007\/978-3-540-79124-9_11"},{"key":"28_CR36","doi-asserted-by":"crossref","unstructured":"Wei, Y., Pei, Y., Furia, C., Silva, L., Buchholz, S., Meyer, B., Zeller, A.: Automated fixing of programs with contracts. In: International Symposium on Software Testing and Analysis (2010)","DOI":"10.1145\/1831708.1831716"},{"key":"28_CR37","doi-asserted-by":"crossref","unstructured":"Weimer, W., Nguyen, T.V., Le Goues, C., Forrest, S.: Automatically finding patches using genetic programming. In: International Conference on Software Engineering (2009)","DOI":"10.1109\/ICSE.2009.5070536"},{"key":"28_CR38","unstructured":"Xiong, W., Park, S., Zhang, J., Zhou, Y., Ma, Z.: Ad hoc synchronization considered harmful. In: Symposium on Operating Systems Design and Implementation (2010)"}],"container-title":["Lecture Notes in Computer Science","ECOOP 2011 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-22655-7_28","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,6,12]],"date-time":"2019-06-12T22:31:09Z","timestamp":1560378669000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-22655-7_28"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2011]]},"ISBN":["9783642226540","9783642226557"],"references-count":38,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-22655-7_28","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2011]]}}}