{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:08:05Z","timestamp":1750306085679,"version":"3.41.0"},"reference-count":34,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2017,8,17]],"date-time":"2017-08-17T00:00:00Z","timestamp":1502928000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Engineering Research Center of Excellence Program of Korea Ministry of Science, ICT 8 Future Planning( MSIP) \/ National Research Foundation of Kore","award":["NRF-2008-0062609"],"award-info":[{"award-number":["NRF-2008-0062609"]}]},{"name":"Development of Vulnerability Discovery Technologies for IoT Software Security"},{"name":"Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Science, ICT 8 Future Planning","award":["NRF-2016R1C1B2014062"],"award-info":[{"award-number":["NRF-2016R1C1B2014062"]}]},{"name":"Institute for Information 8 communications Technology Promotion (IITP) grant funded by the Korea government","award":["B0717-16-0098 and R0190-16-2011"],"award-info":[{"award-number":["B0717-16-0098 and R0190-16-2011"]}]},{"name":"Samsung Electronics Software Center"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Program. Lang. Syst."],"published-print":{"date-parts":[[2017,12,31]]},"abstract":"<jats:p>We present a sound method for clustering alarms from static analyzers. Our method clusters alarms by discovering sound dependencies between them such that if the dominant alarms of a cluster turns out to be false, all the other alarms in the same cluster are guaranteed to be false. We have implemented our clustering algorithm on top of a realistic buffer-overflow analyzer and proved that our method reduces 45% of alarm reports. Our framework is applicable to any abstract interpretation-based static analysis and orthogonal to abstraction refinements and statistical ranking schemes.<\/jats:p>","DOI":"10.1145\/3095021","type":"journal-article","created":{"date-parts":[[2017,8,24]],"date-time":"2017-08-24T11:49:04Z","timestamp":1503575344000},"page":"1-35","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":13,"title":["Sound Non-Statistical Clustering of Static Analysis Alarms"],"prefix":"10.1145","volume":"39","author":[{"given":"Woosuk","family":"Lee","sequence":"first","affiliation":[{"name":"Seoul National University, Seoul, Korea"}]},{"given":"Wonchan","family":"Lee","sequence":"additional","affiliation":[{"name":"Stanford University"}]},{"given":"Dongok","family":"Kang","sequence":"additional","affiliation":[{"name":"Seoul National University, Seoul, Korea"}]},{"given":"Kihong","family":"Heo","sequence":"additional","affiliation":[{"name":"Seoul National University, Seoul, Korea"}]},{"given":"Hakjoo","family":"Oh","sequence":"additional","affiliation":[{"name":"Korea University, Seongbuk-gu, Seoul, Korea"}]},{"given":"Kwangkeun","family":"Yi","sequence":"additional","affiliation":[{"name":"Seoul National University, Seoul, Korea"}]}],"member":"320","published-online":{"date-parts":[[2017,8,17]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-69166-2_16"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/604131.604140"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/176454.176460"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462186"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781153"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/507635.507659"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/1555860.1555866"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1016\/0743-1066(92)90030-7"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.5555\/2391451.2391474"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-28756-5_5"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","unstructured":"Dominic Duggan and Frederick Bent. 1995. Explaining type inference. In Science of Computer Programming. 37--83. 10.1016\/0167-6423(95)00007-0","DOI":"10.1016\/0167-6423(95)00007-0"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.5555\/1767111.1767119"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1007\/11691372_34"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.5555\/1792734.1792777"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/512644.512649"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1007\/11547662_15"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/1985793.1985835"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2009.10.004"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1029894.1029909"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.5555\/1760267.1760289"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1882291.1882336"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-27940-9_20"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/1926385.1926391"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2786805.2786851"},{"key":"e_1_2_1_25_1","unstructured":"MathWorks. 2015. Polyspace Embedded Software Verification. Retrieved from http:\/\/www.mathworks.com\/products\/polyspace\/index.html."},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-31987-0_2"},{"key":"e_1_2_1_27_1","unstructured":"Microsoft. 2015. Code Contracts. Retrieved from http:\/\/msdn.microsoft.com\/en-us\/devlabs\/dd491992.aspx."},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10990-006-8609-1"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2590811"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/2254064.2254092"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1007\/11547662_21"},{"key":"e_1_2_1_32_1","unstructured":"ROPAS. 2017. The Sparrow Static Analyzer. Retrieved from https:\/\/github.com\/ropas\/sparrow."},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/366378.366379"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/512644.512648"}],"container-title":["ACM Transactions on Programming Languages and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3095021","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3095021","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T03:30:16Z","timestamp":1750217416000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3095021"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,8,17]]},"references-count":34,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2017,12,31]]}},"alternative-id":["10.1145\/3095021"],"URL":"https:\/\/doi.org\/10.1145\/3095021","relation":{},"ISSN":["0164-0925","1558-4593"],"issn-type":[{"type":"print","value":"0164-0925"},{"type":"electronic","value":"1558-4593"}],"subject":[],"published":{"date-parts":[[2017,8,17]]},"assertion":[{"value":"2015-06-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-05-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-08-17","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}