{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,11,11]],"date-time":"2026-11-11T07:11:39Z","timestamp":1794381099419,"version":"4.9.0"},"publisher-location":"Berlin, Heidelberg","reference-count":30,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783540227915","type":"print"},{"value":"9783540278641","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2004]]},"DOI":"10.1007\/978-3-540-27864-1_11","type":"book-chapter","created":{"date-parts":[[2010,9,16]],"date-time":"2010-09-16T12:35:37Z","timestamp":1284640537000},"page":"116-132","source":"Crossref","is-referenced-by-count":22,"title":["Type Inference Against Races"],"prefix":"10.1007","author":[{"given":"Cormac","family":"Flanagan","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Stephen N.","family":"Freund","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","reference":[{"key":"11_CR1","doi-asserted-by":"crossref","unstructured":"Agarwal, R., Stoller, S.D.: Type inference for parameterized race-free Java. In: Conference on Verification, Model Checking, and Abstract Interpretation, pp. 149\u2013160 (2004)","DOI":"10.1007\/978-3-540-24622-0_14"},{"key":"11_CR2","doi-asserted-by":"publisher","first-page":"79","DOI":"10.1016\/S0167-6423(99)00007-6","volume":"35","author":"A. Aiken","year":"1999","unstructured":"Aiken, A.: Introduction to set constraint-based program analysis. Science of Computer Programming\u00a035, 79\u2013111 (1999)","journal-title":"Science of Computer Programming"},{"key":"11_CR3","doi-asserted-by":"crossref","unstructured":"Aldrich, J., Kostadinov, V., Chambers, C.: Alias annotations for program understanding. In: ACM Conference on Object-Oriented Programming, Systems, Languages and Applications, pp. 311\u2013330 (2002)","DOI":"10.1145\/582419.582448"},{"key":"11_CR4","unstructured":"Aloul, F.A., Ramani, A., Markov, I.L., Sakallah, K.A.: PBS: A backtracksearch pseudo-boolean solver and optimizer. In: Symposium on the Theory and Applications of Satisfiability Testing, pp. 346\u2013353 (2002)"},{"key":"11_CR5","doi-asserted-by":"crossref","unstructured":"Bacon, D.F., Sweeney, P.F.: Fast static analysis of C++ virtual function calls. In: ACM Conference on Object-Oriented Programming, Systems, Languages and Applications, pp. 324\u2013341 (1996)","DOI":"10.1145\/236337.236371"},{"key":"11_CR6","doi-asserted-by":"crossref","unstructured":"Bogda, J., H\u00f6lzle, U.: Removing unnecessary synchronization in Java. In: ACM Conference on Object-Oriented Programming, Systems, Languages and Applications, pp. 35\u201346 (1999)","DOI":"10.1145\/320384.320388"},{"key":"11_CR7","doi-asserted-by":"crossref","unstructured":"Boyapati, C., Rinard, M.: A parameterized type system for race-free Java programs. In: ACM Conference on Object-Oriented Programming, Systems, Languages and Applications, pp. 56\u201369 (2001)","DOI":"10.1145\/504282.504287"},{"key":"11_CR8","doi-asserted-by":"crossref","unstructured":"Cardelli, L.: Typechecking dependent types and subtypes. In: Workshop on Foundations of Logic and Functional Programming, pp. 45\u201357 (1988)","DOI":"10.1007\/3-540-19129-1_2"},{"key":"11_CR9","doi-asserted-by":"crossref","unstructured":"Dwyer, M.B., Hatcliff, J., Prasad, V.R., Robby: Exploiting Object Escape and Locking Information in Partial Order Reduction for Concurrent Object-Oriented Programs. In: Formal Methods in System Design (2003)","DOI":"10.1023\/B:FORM.0000040028.49845.67"},{"key":"11_CR10","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Freund, S.N.: Type-based race detection for Java. In: ACM Conference on Programming Language Design and Implementation, pp. 219\u2013232 (2000)","DOI":"10.1145\/349299.349328"},{"key":"11_CR11","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Freund, S.N.: Detecting Race Conditions in Large Programs. In: Workshop on Program Analysis for Software Tools and Engineering, pp. 90\u201396 (2001)","DOI":"10.1145\/379605.379687"},{"key":"11_CR12","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Freund, S.N.: Atomizer: A dynamic atomicity checker for multithreaded programs. In: ACM Symposium on the Principles of Programming Languages, pp. 256\u2013267 (2004)","DOI":"10.1145\/964001.964023"},{"key":"11_CR13","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Freund, S.N.: Type inference against races. Technical Note 04-06, Williams College (2004)","DOI":"10.1007\/978-3-540-27864-1_11"},{"key":"11_CR14","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Qadeer, S.: Transactions for Software Model Checking. In: Workshop on Software Model Checking, pp. 338\u2013349 (2003)","DOI":"10.1016\/S1571-0661(05)82560-5"},{"key":"11_CR15","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Qadeer, S.: A type and effect system for atomicity. In: ACM Conference on Programming Language Design and Implementation, pp. 338\u2013349 (2003)","DOI":"10.1145\/781131.781169"},{"key":"11_CR16","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Qadeer, S.: Types for atomicity. In: ACM Workshop on Types in Language Design and Implementation, pp. 1\u201312 (2003)","DOI":"10.1145\/604174.604176"},{"key":"11_CR17","doi-asserted-by":"crossref","unstructured":"Flatt, M., Krishnamurthi, S., Felleisen, M.: Classes and mixins. In: ACM Symposium on the Principles of Programming Languages, pp. 171\u2013183 (1998)","DOI":"10.1145\/268946.268961"},{"key":"11_CR18","doi-asserted-by":"crossref","unstructured":"Grossman, D.: Type-safe multithreading in Cyclone. In: ACM Workshop on Types in Language Design and Implementation, pp. 13\u201325 (2003)","DOI":"10.1145\/604174.604177"},{"key":"11_CR19","doi-asserted-by":"crossref","unstructured":"Haack, C., Wells, J.B.: Type error slicing in implicitly typed higher-order languages. In: European Symposium on Programming, pp. 284\u2013301 (2003)","DOI":"10.1007\/3-540-36575-3_20"},{"key":"11_CR20","unstructured":"Java Grande Forum. Java Grande benchmark suite (2003), Available from http:\/\/www.javagrande.org\/"},{"key":"11_CR21","doi-asserted-by":"crossref","unstructured":"Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an efficient SAT solver. In: Design Automation Conference, pp. 530\u2013535 (2001)","DOI":"10.1145\/378239.379017"},{"issue":"4","key":"11_CR22","doi-asserted-by":"publisher","first-page":"391","DOI":"10.1145\/265924.265927","volume":"15","author":"S. Savage","year":"1997","unstructured":"Savage, S., Burrows, M., Nelson, G., Sobalvarro, P., Anderson, T.E.: Eraser: A dynamic data race detector for multi-threaded programs. ACM Transactions on Computer Systems\u00a015(4), 391\u2013411 (1997)","journal-title":"ACM Transactions on Computer Systems"},{"key":"11_CR23","unstructured":"Standard Performance Evaluation Corporation. SPEC benchmarks (2003), Available from http:\/\/www.spec.org\/"},{"issue":"1","key":"11_CR24","doi-asserted-by":"publisher","first-page":"71","DOI":"10.1007\/s10009-002-0077-2","volume":"4","author":"S.D. Stoller","year":"2002","unstructured":"Stoller, S.D.: Model-Checking Multi-Threaded Distributed Java Programs. International Journal on Software Tools for Technology Transfer\u00a04(1), 71\u201391 (2002)","journal-title":"International Journal on Software Tools for Technology Transfer"},{"key":"11_CR25","doi-asserted-by":"crossref","unstructured":"Stoller, S.D., Cohen, E.: Optimistic Synchronization-Based State-Space Reduction. In: International Conference on Tools and Algorithms for the Construction and Analysis of Systems, pp. 489\u2013504 (2003)","DOI":"10.1007\/3-540-36577-X_36"},{"issue":"3","key":"11_CR26","doi-asserted-by":"publisher","first-page":"245","DOI":"10.1017\/S0956796800000393","volume":"2","author":"J.-P. Talpin","year":"1992","unstructured":"Talpin, J.-P., Jouvelot, P.: Polymorphic type, region and effect inference. Journal of Functional Programming\u00a02(3), 245\u2013271 (1992)","journal-title":"Journal of Functional Programming"},{"key":"11_CR27","doi-asserted-by":"crossref","unstructured":"Tofte, M., Talpin, J.-P.: Implementation of the typed call-by-value lambdacalculus using a stack of regions. In: ACM Symposium on the Principles of Programming Languages, pp. 188\u2013201 (1994)","DOI":"10.1145\/174675.177855"},{"key":"11_CR28","doi-asserted-by":"crossref","unstructured":"von Praun, C., Gross, T.: Static conflict analysis for multi-threaded objectoriented programs. In: ACM Conference on Programming Language Design and Implementation, pp. 115\u2013128 (2003)","DOI":"10.1145\/780822.781145"},{"key":"11_CR29","doi-asserted-by":"crossref","unstructured":"Wand, M.: Finding the source of type errors. In: ACM Symposium on the Principles of Programming Languages, pp. 38\u201343 (1986)","DOI":"10.1145\/512644.512648"},{"key":"11_CR30","unstructured":"Yang, J., Michaelson, G., Trinder, P., Wells, J.B.: Improved type error reporting. In: International Workshop on Implementation of Functional Languages, pp. 71\u201386 (2000)"}],"container-title":["Lecture Notes in Computer Science","Static Analysis"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-27864-1_11.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,11,9]],"date-time":"2021-11-09T21:47:40Z","timestamp":1636494460000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-27864-1_11"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004]]},"ISBN":["9783540227915","9783540278641"],"references-count":30,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-27864-1_11","relation":{"is-part-of":[{"id-type":"doi","id":"https:\/\/doi.org\/10.1007\/b99688","asserted-by":"object"}]},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2004]]}}}