{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,25]],"date-time":"2025-03-25T22:57:20Z","timestamp":1742943440261,"version":"3.40.3"},"publisher-location":"Cham","reference-count":17,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031849237"},{"type":"electronic","value":"9783031849244"}],"license":[{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"DOI":"10.1007\/978-3-031-84924-4_8","type":"book-chapter","created":{"date-parts":[[2025,3,17]],"date-time":"2025-03-17T12:00:58Z","timestamp":1742212858000},"page":"113-129","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Checking Concurrency Coding Rules"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8296-4609","authenticated-orcid":false,"given":"Lars-\u00c5ke","family":"Fredlund","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6433-5681","authenticated-orcid":false,"given":"\u00c1ngel","family":"Herranz","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2665-7612","authenticated-orcid":false,"given":"Julio","family":"Mari\u00f1o","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2025,3,18]]},"reference":[{"key":"8_CR1","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 the 2006 Workshop on Parallel and Distributed Systems: Testing and Debugging, PADTAD 2006, pp. 51\u201360. ACM, New York (2006)","DOI":"10.1145\/1147403.1147413"},{"issue":"1","key":"8_CR2","doi-asserted-by":"publisher","first-page":"20","DOI":"10.1145\/227595.227597","volume":"43","author":"W Chen","year":"1996","unstructured":"Chen, W., Warren, D.S.: Tabled evaluation with delaying for general logic programs. J. ACM 43(1), 20\u201374 (1996)","journal-title":"J. ACM"},{"key":"8_CR3","doi-asserted-by":"crossref","unstructured":"Claessen, K., Hughes, J.: Quickcheck: a lightweight tool for random testing of haskell programs. In: Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming, ICFP 2000, pp. 268\u2013279. ACM, New York (2000)","DOI":"10.1145\/357766.351266"},{"key":"8_CR4","doi-asserted-by":"crossref","unstructured":"Dinn, A.E.: Flexible, dynamic injection of structured advice using byteman. In: Borba, P., Chiba, S. (eds.) Companion Volume of the 10th International Conference on Aspect-Oriented Software Development, AOSD 2011, pp. 41\u201350. ACM (2011)","DOI":"10.1145\/1960314.1960325"},{"issue":"2","key":"8_CR5","doi-asserted-by":"publisher","first-page":"255","DOI":"10.1007\/S10009-021-00609-Z","volume":"23","author":"Y Falcone","year":"2021","unstructured":"Falcone, Y., Krstic, S., Reger, G., Traytel, D.: A taxonomy for classifying runtime verification tools. Int. J. Softw. Tools Technol. Transf. 23(2), 255\u2013284 (2021). https:\/\/doi.org\/10.1007\/S10009-021-00609-Z","journal-title":"Int. J. Softw. Tools Technol. Transf."},{"key":"8_CR6","doi-asserted-by":"crossref","unstructured":"Fredlund, L., Mari\u00f1o, J., Alborodo, R.N.N., Herranz, A.: A testing-based approach to ensure the safety of shared resource concurrent systems. Proc. Inst. Mech. Eng. Part O: J. Risk Reliab. (2015)","DOI":"10.1177\/1748006X15614231"},{"issue":"3","key":"8_CR7","doi-asserted-by":"publisher","first-page":"463","DOI":"10.1145\/78969.78972","volume":"12","author":"MP Herlihy","year":"1990","unstructured":"Herlihy, M.P., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463\u2013492 (1990)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"8_CR8","doi-asserted-by":"crossref","unstructured":"Herranz, A., Mari\u00f1o, J.: A verified implementation of priority monitors in Java. In: Proceedings of the 2011 International Conference on Formal Verification of Object-Oriented Software, FoVeOOS 2011, pp. 160\u2013177. Springer, Heidelberg (2012)","DOI":"10.1007\/978-3-642-31762-0_11"},{"key":"8_CR9","doi-asserted-by":"crossref","unstructured":"Herranz, A., Mari\u00f1o, J., Carro, M., Moreno\u00a0Navarro, J.J.: Modeling concurrent systems with shared resources. In: Alpuente, M., Cook, B., Joubert, C. (eds.) Formal Methods for Industrial Critical Systems. LNCS, vol.\u00a05825, pp. 102\u2013116. Springer, Cham (2009)","DOI":"10.1007\/978-3-642-04570-7_9"},{"issue":"6","key":"8_CR10","doi-asserted-by":"publisher","first-page":"326","DOI":"10.1145\/2666356.2594330","volume":"49","author":"CH Hsiao","year":"2014","unstructured":"Hsiao, C.H., et al.: Race detection for event-driven mobile applications. SIGPLAN Not. 49(6), 326\u2013336 (2014). https:\/\/doi.org\/10.1145\/2666356.2594330","journal-title":"SIGPLAN Not."},{"key":"8_CR11","doi-asserted-by":"crossref","unstructured":"Lochmann, A., Schirmeier, H., Borghorst, H., Spinczyk, O.: Lockdoc: trace-based analysis of locking in the linux kernel. In: Candea, G., van Renesse, R., Fetzer, C. (eds.) Proceedings\u00a0of the 14th EuroSys Conference 2019, Dresden, Germany, pp. 11:1\u201311:15. ACM (2019)","DOI":"10.1145\/3302424.3303948"},{"key":"8_CR12","doi-asserted-by":"crossref","unstructured":"Mari\u00f1o, J., Alborodo, R.N.N., Fredlund, L., Herranz, \u00c1.: Synthesis of verified concurrent Java components from formal models. Softw. Syst. Model. (2016)","DOI":"10.1007\/s10270-017-0581-1"},{"key":"8_CR13","doi-asserted-by":"crossref","unstructured":"Marpons-Ucero, G., Mari\u00f1o-Carballo, J., Carro, M., Herranz-Nieva, \u00c1., Moreno-Navarro, J.J., Fredlund, L.: Automatic coding rule conformance checking using logic programming. In: PADL 2008. LNCS, vol.\u00a04902, pp. 18\u201334. Springer, Cham (2008)","DOI":"10.1007\/978-3-540-77442-6_3"},{"key":"8_CR14","doi-asserted-by":"publisher","unstructured":"Mutlu, E., Tasiran, S., Livshits, B.: Detecting Javascript races that matter. In: Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ESEC\/FSE 2015, pp. 381\u2013392. Association for Computing Machinery, New York (2015). https:\/\/doi.org\/10.1145\/2786805.2786820","DOI":"10.1145\/2786805.2786820"},{"key":"8_CR15","doi-asserted-by":"crossref","unstructured":"Song, F., Touili, T.: Model-checking software library API usage rules. In: Johnsen, E.B., Petre, L. (eds.) Integrated Formal Methods, 10th International Conference, IFM 2013, Turku, Finland, 10\u201314 June 2013. LNCS, vol.\u00a07940, pp. 192\u2013207. Springer, Cham (2013)","DOI":"10.1007\/978-3-642-38613-8_14"},{"key":"8_CR16","unstructured":"Welch, P.H., Brown, N., Moores, J., Chalmers, K., Sputh, B.H.C.: Integrating and extending JCSP. In: McEwan, A.A., Schneider, S.A., Ifill, W., Welch, P.H. (eds.) The 30th Communicating Process Architectures Conference, CPA 2007. Concurrent Systems Engineering Series, vol.\u00a065, pp. 349\u2013370. IOS Press (2007)"},{"key":"8_CR17","doi-asserted-by":"publisher","unstructured":"Yu, T., Srisa-an, W., Rothermel, G.: Simracer: an automated framework to support testing for process-level races. In: Proceedings of the 2013 International Symposium on Software Testing and Analysis, ISSTA 2013, p. 167\u2013177. Association for Computing Machinery, New York (2013). https:\/\/doi.org\/10.1145\/2483760.2483771","DOI":"10.1145\/2483760.2483771"}],"container-title":["Lecture Notes in Computer Science","Practical Aspects of Declarative Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-84924-4_8","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,3,17]],"date-time":"2025-03-17T12:01:07Z","timestamp":1742212867000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-84924-4_8"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025]]},"ISBN":["9783031849237","9783031849244"],"references-count":17,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-84924-4_8","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2025]]},"assertion":[{"value":"18 March 2025","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"PADL","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Practical Aspects of Declarative Languages","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Denver, CO","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"USA","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2025","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"20 January 2025","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26 January 2025","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"27","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"padl2025","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}