{"id":"https://openalex.org/W2509822438","doi":"https://doi.org/10.1145/2970276.2970354","title":"APEx: automated inference of error specifications for C APIs","display_name":"APEx: automated inference of error specifications for C APIs","publication_year":2016,"publication_date":"2016-08-25","ids":{"openalex":"https://openalex.org/W2509822438","doi":"https://doi.org/10.1145/2970276.2970354","mag":"2509822438"},"language":"en","primary_location":{"id":"doi:10.1145/2970276.2970354","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2970276.2970354","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2970276.2970354?download=true","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/2970276.2970354?download=true","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5031187524","display_name":"Yuan Kang","orcid":null},"institutions":[{"id":"https://openalex.org/I78577930","display_name":"Columbia University","ror":"https://ror.org/00hj8s172","country_code":"US","type":"education","lineage":["https://openalex.org/I78577930"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Yuan Kang","raw_affiliation_strings":["Columbia University, USA"],"affiliations":[{"raw_affiliation_string":"Columbia University, USA","institution_ids":["https://openalex.org/I78577930"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5064541855","display_name":"Baishakhi Ray","orcid":"https://orcid.org/0000-0003-3406-5235"},"institutions":[{"id":"https://openalex.org/I51556381","display_name":"University of Virginia","ror":"https://ror.org/0153tk833","country_code":"US","type":"education","lineage":["https://openalex.org/I51556381"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Baishakhi Ray","raw_affiliation_strings":["University of Virginia, USA"],"affiliations":[{"raw_affiliation_string":"University of Virginia, USA","institution_ids":["https://openalex.org/I51556381"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5016425387","display_name":"Suman Jana","orcid":"https://orcid.org/0000-0002-9850-2169"},"institutions":[{"id":"https://openalex.org/I78577930","display_name":"Columbia University","ror":"https://ror.org/00hj8s172","country_code":"US","type":"education","lineage":["https://openalex.org/I78577930"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Suman Jana","raw_affiliation_strings":["Columbia University, USA"],"affiliations":[{"raw_affiliation_string":"Columbia University, USA","institution_ids":["https://openalex.org/I78577930"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5031187524"],"corresponding_institution_ids":["https://openalex.org/I78577930"],"apc_list":null,"apc_paid":null,"fwci":10.3839,"has_fulltext":true,"cited_by_count":47,"citation_normalized_percentile":{"value":0.98038325,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"472","last_page":"482"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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.9975000023841858,"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"}},{"id":"https://openalex.org/T12423","display_name":"Software Reliability and Analysis Research","score":0.9972000122070312,"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/computer-science","display_name":"Computer science","score":0.8137553930282593},{"id":"https://openalex.org/keywords/error-detection-and-correction","display_name":"Error detection and correction","score":0.656968891620636},{"id":"https://openalex.org/keywords/inference","display_name":"Inference","score":0.6468888521194458},{"id":"https://openalex.org/keywords/software-bug","display_name":"Software bug","score":0.6336130499839783},{"id":"https://openalex.org/keywords/robustness","display_name":"Robustness (evolution)","score":0.6152860522270203},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.5535573959350586},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.48952803015708923},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4778420627117157},{"id":"https://openalex.org/keywords/exception-handling","display_name":"Exception handling","score":0.43971186876296997},{"id":"https://openalex.org/keywords/data-mining","display_name":"Data mining","score":0.3895587921142578},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.31654030084609985},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.1749778687953949}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8137553930282593},{"id":"https://openalex.org/C103088060","wikidata":"https://www.wikidata.org/wiki/Q1062839","display_name":"Error detection and correction","level":2,"score":0.656968891620636},{"id":"https://openalex.org/C2776214188","wikidata":"https://www.wikidata.org/wiki/Q408386","display_name":"Inference","level":2,"score":0.6468888521194458},{"id":"https://openalex.org/C1009929","wikidata":"https://www.wikidata.org/wiki/Q179550","display_name":"Software bug","level":3,"score":0.6336130499839783},{"id":"https://openalex.org/C63479239","wikidata":"https://www.wikidata.org/wiki/Q7353546","display_name":"Robustness (evolution)","level":3,"score":0.6152860522270203},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.5535573959350586},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.48952803015708923},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4778420627117157},{"id":"https://openalex.org/C145428669","wikidata":"https://www.wikidata.org/wiki/Q471748","display_name":"Exception handling","level":2,"score":0.43971186876296997},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.3895587921142578},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.31654030084609985},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.1749778687953949},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2970276.2970354","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2970276.2970354","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2970276.2970354?download=true","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/2970276.2970354","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2970276.2970354","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2970276.2970354?download=true","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G1523888516","display_name":null,"funder_award_id":"FA9550-","funder_id":"https://openalex.org/F4320338279","funder_display_name":"Air Force Office of Scientific Research"},{"id":"https://openalex.org/G5809100787","display_name":null,"funder_award_id":"FA9550","funder_id":"https://openalex.org/F4320338279","funder_display_name":"Air Force Office of Scientific Research"},{"id":"https://openalex.org/G6071252945","display_name":null,"funder_award_id":"FA9550-12","funder_id":"https://openalex.org/F4320338279","funder_display_name":"Air Force Office of Scientific Research"},{"id":"https://openalex.org/G7154699235","display_name":null,"funder_award_id":"FA9550-12-1-0162","funder_id":"https://openalex.org/F4320338279","funder_display_name":"Air Force Office of Scientific Research"},{"id":"https://openalex.org/G7999580237","display_name":null,"funder_award_id":"FA9550-12-1","funder_id":"https://openalex.org/F4320338279","funder_display_name":"Air Force Office of Scientific Research"}],"funders":[{"id":"https://openalex.org/F4320338279","display_name":"Air Force Office of Scientific Research","ror":"https://ror.org/011e9bt93"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2509822438.pdf","grobid_xml":"https://content.openalex.org/works/W2509822438.grobid-xml"},"referenced_works_count":42,"referenced_works":["https://openalex.org/W98385601","https://openalex.org/W1457363419","https://openalex.org/W1486481742","https://openalex.org/W1545684573","https://openalex.org/W1657461476","https://openalex.org/W1971719033","https://openalex.org/W1971772683","https://openalex.org/W1973883609","https://openalex.org/W1986453394","https://openalex.org/W1987615754","https://openalex.org/W1989657183","https://openalex.org/W2008626182","https://openalex.org/W2017381700","https://openalex.org/W2018912833","https://openalex.org/W2038081023","https://openalex.org/W2043811931","https://openalex.org/W2064081154","https://openalex.org/W2076990583","https://openalex.org/W2087527532","https://openalex.org/W2096933749","https://openalex.org/W2103240721","https://openalex.org/W2109612250","https://openalex.org/W2118194668","https://openalex.org/W2119736157","https://openalex.org/W2121818394","https://openalex.org/W2126104567","https://openalex.org/W2129262850","https://openalex.org/W2141670850","https://openalex.org/W2152565783","https://openalex.org/W2152874840","https://openalex.org/W2155061608","https://openalex.org/W2156841542","https://openalex.org/W2166069603","https://openalex.org/W2240363388","https://openalex.org/W2484116259","https://openalex.org/W3013310612","https://openalex.org/W4232793935","https://openalex.org/W4245717706","https://openalex.org/W4247878828","https://openalex.org/W4299301436","https://openalex.org/W6629050992","https://openalex.org/W6632492962"],"related_works":["https://openalex.org/W2390366073","https://openalex.org/W2131032015","https://openalex.org/W4384302888","https://openalex.org/W3014055696","https://openalex.org/W1993306785","https://openalex.org/W2069105920","https://openalex.org/W2741422284","https://openalex.org/W2296614319","https://openalex.org/W3000689565","https://openalex.org/W4244389926"],"abstract_inverted_index":{"Although":[0],"correct":[1,32,171],"error":[2,17,33,36,54,97,108,114,125,173,193],"handling":[3,18,98],"is":[4,39,70],"crucial":[5],"to":[6,25,75,94,198],"software":[7],"robustness":[8],"and":[9,41,80,104,145,159,181],"security,":[10],"developers":[11],"often":[12],"inadvertently":[13],"introduce":[14],"bugs":[15,22,204],"in":[16,64,143,218],"code.":[19],"Moreover,":[20],"such":[21],"are":[23,210],"hard":[24],"detect":[26],"using":[27],"existing":[28],"bug-finding":[29],"tools":[30],"without":[31],"specifications.":[34,126],"Creating":[35],"specifications":[37,55,174],"manually":[38],"tedious":[40],"error-prone.":[42],"In":[43],"this":[44,92],"paper,":[45],"we":[46,195],"present":[47],"a":[48],"new":[49],"technique":[50,130,168],"that":[51,71,147,166,209],"automatically":[52,95],"infers":[53],"of":[56,123,157,161,179,183,190],"API":[57,101,124,133,172],"functions":[58,134],"based":[59],"on":[60,131],"their":[61],"usage":[62],"patterns":[63],"C":[65,144],"programs.":[66],"Our":[67,89],"key":[68],"insight":[69],"error-handling":[72,151],"code":[73,85,99],"tend":[74],"have":[76],"fewer":[77],"branching":[78],"points":[79],"program":[81],"statements":[82],"than":[83],"the":[84,106,113,188,191,215,219],"implementing":[86],"regular":[87],"functionality.":[88],"scheme":[90],"leverages":[91],"property":[93],"identify":[96,150],"at":[100],"call":[102,118],"sites":[103,119],"infer":[105,170],"corresponding":[107,216],"constraints.":[109],"We":[110,127,163],"then":[111],"use":[112],"constraints":[115],"from":[116,135],"multiple":[117],"for":[120],"robust":[121],"inference":[122],"evaluated":[128],"our":[129,167],"217":[132],"6":[136],"different":[137],"libraries":[138],"across":[139],"28":[140,220],"projects":[141],"written":[142],"found":[146,165],"it":[148],"can":[149,169],"paths":[152],"with":[153,175],"an":[154,176],"average":[155,177],"precision":[156,178],"94%":[158],"recall":[160,182],"66%.":[162],"also":[164],"77%":[180],"47%.":[184],"To":[185],"further":[186],"demonstrate":[187],"usefulness":[189],"inferred":[192],"specifications,":[194],"used":[196],"them":[197],"find":[199],"118":[200],"previously":[201],"unknown":[202],"potential":[203],"(including":[205],"several":[206],"security":[207],"flaws":[208],"currently":[211],"being":[212],"fixed":[213],"by":[214],"developers)":[217],"tested":[221],"projects.":[222]},"counts_by_year":[{"year":2025,"cited_by_count":6},{"year":2024,"cited_by_count":8},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":7},{"year":2020,"cited_by_count":6},{"year":2019,"cited_by_count":10},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":2}],"updated_date":"2026-03-13T16:22:10.518609","created_date":"2025-10-10T00:00:00"}
