{"id":"https://openalex.org/W4415009082","doi":"https://doi.org/10.1145/3763090","title":"Memory-Safety Verification of Open Programs with Angelic Assumptions","display_name":"Memory-Safety Verification of Open Programs with Angelic Assumptions","publication_year":2025,"publication_date":"2025-10-09","ids":{"openalex":"https://openalex.org/W4415009082","doi":"https://doi.org/10.1145/3763090"},"language":"en","primary_location":{"id":"doi:10.1145/3763090","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763090","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://doi.org/10.1145/3763090","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5060399669","display_name":"Gourav Takhar","orcid":"https://orcid.org/0000-0002-8700-3428"},"institutions":[{"id":"https://openalex.org/I94234084","display_name":"Indian Institute of Technology Kanpur","ror":"https://ror.org/05pjsgx75","country_code":"IN","type":"education","lineage":["https://openalex.org/I94234084"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Gourav Takhar","raw_affiliation_strings":["Indian Institute of Technology Kanpur, Kanpur, India"],"raw_orcid":"https://orcid.org/0000-0002-8700-3428","affiliations":[{"raw_affiliation_string":"Indian Institute of Technology Kanpur, Kanpur, India","institution_ids":["https://openalex.org/I94234084"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5119926735","display_name":"Baldip Bijlani","orcid":null},"institutions":[{"id":"https://openalex.org/I94234084","display_name":"Indian Institute of Technology Kanpur","ror":"https://ror.org/05pjsgx75","country_code":"IN","type":"education","lineage":["https://openalex.org/I94234084"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Baldip Bijlani","raw_affiliation_strings":["Indian Institute of Technology Kanpur, Kanpur, India"],"raw_orcid":"https://orcid.org/0009-0003-0436-6413","affiliations":[{"raw_affiliation_string":"Indian Institute of Technology Kanpur, Kanpur, India","institution_ids":["https://openalex.org/I94234084"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5062486002","display_name":"Prantik Chatterjee","orcid":"https://orcid.org/0000-0002-3320-9543"},"institutions":[{"id":"https://openalex.org/I94234084","display_name":"Indian Institute of Technology Kanpur","ror":"https://ror.org/05pjsgx75","country_code":"IN","type":"education","lineage":["https://openalex.org/I94234084"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Prantik Chatterjee","raw_affiliation_strings":["Indian Institute of Technology Kanpur, Kanpur, India"],"raw_orcid":"https://orcid.org/0000-0002-3320-9543","affiliations":[{"raw_affiliation_string":"Indian Institute of Technology Kanpur, Kanpur, India","institution_ids":["https://openalex.org/I94234084"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5029930688","display_name":"Akash Lal","orcid":"https://orcid.org/0009-0002-4359-9378"},"institutions":[{"id":"https://openalex.org/I4210124949","display_name":"Microsoft Research (India)","ror":"https://ror.org/02w7f3w92","country_code":"IN","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210124949"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Akash Lal","raw_affiliation_strings":["Microsoft Research, Bengaluru, India"],"raw_orcid":"https://orcid.org/0009-0002-4359-9378","affiliations":[{"raw_affiliation_string":"Microsoft Research, Bengaluru, India","institution_ids":["https://openalex.org/I4210124949"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5014601092","display_name":"Subhajit Roy","orcid":"https://orcid.org/0000-0002-3394-023X"},"institutions":[{"id":"https://openalex.org/I94234084","display_name":"Indian Institute of Technology Kanpur","ror":"https://ror.org/05pjsgx75","country_code":"IN","type":"education","lineage":["https://openalex.org/I94234084"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Subhajit Roy","raw_affiliation_strings":["Indian Institute of Technology Kanpur, Kanpur, India"],"raw_orcid":"https://orcid.org/0000-0002-3394-023X","affiliations":[{"raw_affiliation_string":"Indian Institute of Technology Kanpur, Kanpur, India","institution_ids":["https://openalex.org/I94234084"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.13158191,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"9","issue":"OOPSLA2","first_page":"1119","last_page":"1147"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9986000061035156,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9983999729156494,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/spurious-relationship","display_name":"Spurious relationship","score":0.8112000226974487},{"id":"https://openalex.org/keywords/false-positive-paradox","display_name":"False positive paradox","score":0.7846999764442444},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.6859999895095825},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.49970000982284546},{"id":"https://openalex.org/keywords/software-inspection","display_name":"Software inspection","score":0.47780001163482666},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.3977999985218048},{"id":"https://openalex.org/keywords/open-source","display_name":"Open source","score":0.36489999294281006},{"id":"https://openalex.org/keywords/formal-verification","display_name":"Formal verification","score":0.3474000096321106},{"id":"https://openalex.org/keywords/reverse-engineering","display_name":"Reverse engineering","score":0.3447999954223633}],"concepts":[{"id":"https://openalex.org/C97256817","wikidata":"https://www.wikidata.org/wiki/Q1462316","display_name":"Spurious relationship","level":2,"score":0.8112000226974487},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7851999998092651},{"id":"https://openalex.org/C64869954","wikidata":"https://www.wikidata.org/wiki/Q1859747","display_name":"False positive paradox","level":2,"score":0.7846999764442444},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.6859999895095825},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6541000008583069},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.49970000982284546},{"id":"https://openalex.org/C10272871","wikidata":"https://www.wikidata.org/wiki/Q929972","display_name":"Software inspection","level":5,"score":0.47780001163482666},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.3977999985218048},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.36809998750686646},{"id":"https://openalex.org/C3018397939","wikidata":"https://www.wikidata.org/wiki/Q3644502","display_name":"Open source","level":3,"score":0.36489999294281006},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.3504999876022339},{"id":"https://openalex.org/C111498074","wikidata":"https://www.wikidata.org/wiki/Q173326","display_name":"Formal verification","level":2,"score":0.3474000096321106},{"id":"https://openalex.org/C207850805","wikidata":"https://www.wikidata.org/wiki/Q269608","display_name":"Reverse engineering","level":2,"score":0.3447999954223633},{"id":"https://openalex.org/C1009929","wikidata":"https://www.wikidata.org/wiki/Q179550","display_name":"Software bug","level":3,"score":0.3433000147342682},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.34049999713897705},{"id":"https://openalex.org/C133237599","wikidata":"https://www.wikidata.org/wiki/Q2295111","display_name":"Code smell","level":5,"score":0.3294000029563904},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.32019999623298645},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.3147999942302704},{"id":"https://openalex.org/C33054407","wikidata":"https://www.wikidata.org/wiki/Q6504747","display_name":"Software verification","level":5,"score":0.30329999327659607},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.29980000853538513},{"id":"https://openalex.org/C110251889","wikidata":"https://www.wikidata.org/wiki/Q1569697","display_name":"Model checking","level":2,"score":0.29829999804496765},{"id":"https://openalex.org/C2779662365","wikidata":"https://www.wikidata.org/wiki/Q5416694","display_name":"Event (particle physics)","level":2,"score":0.29109999537467957},{"id":"https://openalex.org/C75606506","wikidata":"https://www.wikidata.org/wiki/Q1049183","display_name":"Formal methods","level":2,"score":0.2842000126838684},{"id":"https://openalex.org/C2989486834","wikidata":"https://www.wikidata.org/wiki/Q3808900","display_name":"True positive rate","level":2,"score":0.2806999981403351},{"id":"https://openalex.org/C112789634","wikidata":"https://www.wikidata.org/wiki/Q18207010","display_name":"False positives and false negatives","level":3,"score":0.26980000734329224},{"id":"https://openalex.org/C58489278","wikidata":"https://www.wikidata.org/wiki/Q1172284","display_name":"Data set","level":2,"score":0.2653999924659729},{"id":"https://openalex.org/C101317890","wikidata":"https://www.wikidata.org/wiki/Q940053","display_name":"Software maintenance","level":4,"score":0.257999986410141},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.25369998812675476},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.25270000100135803}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3763090","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763090","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3763090","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3763090","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":67,"referenced_works":["https://openalex.org/W121297392","https://openalex.org/W1253738753","https://openalex.org/W1480909796","https://openalex.org/W1507006488","https://openalex.org/W1590437595","https://openalex.org/W1592751104","https://openalex.org/W1964132576","https://openalex.org/W1976526581","https://openalex.org/W1987289444","https://openalex.org/W2075005465","https://openalex.org/W2098039922","https://openalex.org/W2119467398","https://openalex.org/W2130805777","https://openalex.org/W2132481916","https://openalex.org/W2137726309","https://openalex.org/W2144196848","https://openalex.org/W2155851497","https://openalex.org/W2166791480","https://openalex.org/W2170612356","https://openalex.org/W2181712945","https://openalex.org/W2253205229","https://openalex.org/W2267830770","https://openalex.org/W2294152467","https://openalex.org/W2296178404","https://openalex.org/W2416392025","https://openalex.org/W2532376188","https://openalex.org/W2538493772","https://openalex.org/W2741495767","https://openalex.org/W2763166759","https://openalex.org/W2774816643","https://openalex.org/W2784876765","https://openalex.org/W2898930465","https://openalex.org/W2960693549","https://openalex.org/W2962887681","https://openalex.org/W2975760433","https://openalex.org/W2987907651","https://openalex.org/W3008915753","https://openalex.org/W3042240372","https://openalex.org/W3043583212","https://openalex.org/W3107691813","https://openalex.org/W3121106327","https://openalex.org/W3156365240","https://openalex.org/W3157256658","https://openalex.org/W3167391728","https://openalex.org/W3173556662","https://openalex.org/W3201013079","https://openalex.org/W3205111252","https://openalex.org/W3205186298","https://openalex.org/W3206707049","https://openalex.org/W4226162183","https://openalex.org/W4240558819","https://openalex.org/W4244945045","https://openalex.org/W4285490366","https://openalex.org/W4307886659","https://openalex.org/W4315631944","https://openalex.org/W4381742552","https://openalex.org/W4384471459","https://openalex.org/W4389215044","https://openalex.org/W4400973120","https://openalex.org/W4403536761","https://openalex.org/W4405601553","https://openalex.org/W4406597154","https://openalex.org/W4410028412","https://openalex.org/W4411552413","https://openalex.org/W6965000268","https://openalex.org/W6965121910","https://openalex.org/W6968404724"],"related_works":[],"abstract_inverted_index":{"An":[0],"open":[1,45,108],"program":[2,20,109,181],"is":[3,11,15,70,92,117,148,182,215],"one":[4],"for":[5,18,44],"which":[6,14,69],"the":[7,28,52,76,115,118,171,221],"complete":[8],"source":[9],"code":[10],"not":[12],"available,":[13],"a":[16,60,89,133,142,151,180,192,203],"reality":[17],"real-world":[19],"verification.":[21],"Software":[22],"verification":[23,50,82],"tools":[24],"tend":[25],"to":[26,80,114,159,217],"assume":[27],"worst":[29],"about":[30,124],"any":[31,48,66],"unconstrained":[32],"behavior":[33],"and":[34,72,99,162],"this":[35,85],"can":[36,78,188],"yield":[37],"an":[38,107],"enormous":[39],"number":[40],"of":[41,65,94,120,135,195,205,220],"spurious":[42],"warnings":[43],"programs.":[46],"For":[47],"serious":[49],"effort,":[51],"engineer":[53],"must":[54],"invest":[55],"time":[56],"up-front":[57],"in":[58,75,106,138],"building":[59],"suitable":[61],"model":[62,145],"(or":[63],"mock)":[64],"missing":[67,125],"code,":[68],"time-consuming":[71],"error-prone.":[73],"Inaccuracies":[74],"mocks":[77],"lead":[79],"incorrect":[81],"results.":[83],"In":[84,199],"paper,":[86],"we":[87,130],"demonstrate":[88],"technique":[90,116],"that":[91,155,179],"capable":[93],"distinguishing":[95],"between":[96],"false":[97,222,226],"positives":[98,223],"actual":[100],"bugs":[101],"from":[102,208],"potential":[103],"memory-safety":[104],"violations":[105],"with":[110,224],"high":[111],"accuracy.":[112],"Central":[113],"ability":[119],"making":[121],"angelic":[122,168],"assumptions":[123,169],"code.":[126],"To":[127],"accomplish":[128],"this,":[129],"first":[131],"mine":[132],"set":[134,194,204],"idiomatic":[136,165,197],"patterns":[137,166],"buffer-manipulating":[139],"programs":[140],"using":[141],"large":[143],"language":[144],"(LLM).":[146],"This":[147],"complemented":[149],"by":[150],"formal":[152],"synthesis":[153],"strategy":[154],"performs":[156],"property-directed":[157],"reasoning":[158],"select,":[160],"adapt":[161],"instantiate":[163],"these":[164],"into":[167],"on":[170],"target":[172],"program.":[173],"Overall,":[174],"our":[175,200,212],"system,":[176],"Seeker,":[177],"guarantees":[178],"deemed":[183],"correct":[184],"only":[185],"if":[186],"it":[187],"be":[189],"verified":[190],"under":[191],"well-defined":[193],"\"trusted\"":[196],"patterns.":[198],"experiments":[201],"over":[202],"benchmarks":[206],"curated":[207],"popular":[209],"open-source":[210],"software,":[211],"tool":[213],"Seeker":[214],"able":[216],"identify":[218],"79%":[219],"zero":[225],"negatives.":[227]},"counts_by_year":[],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
