{"id":"https://openalex.org/W2955030688","doi":"https://doi.org/10.1145/3314221.3314641","title":"Learning stateful preconditions modulo a test generator","display_name":"Learning stateful preconditions modulo a test generator","publication_year":2019,"publication_date":"2019-06-07","ids":{"openalex":"https://openalex.org/W2955030688","doi":"https://doi.org/10.1145/3314221.3314641","mag":"2955030688"},"language":"en","primary_location":{"id":"doi:10.1145/3314221.3314641","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3314221.3314641","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5004048843","display_name":"Angello Astorga","orcid":"https://orcid.org/0000-0002-7996-4798"},"institutions":[{"id":"https://openalex.org/I157725225","display_name":"University of Illinois Urbana-Champaign","ror":"https://ror.org/047426m28","country_code":"US","type":"education","lineage":["https://openalex.org/I157725225"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Angello Astorga","raw_affiliation_strings":["University of Illinois at Urbana-Champaign, USA"],"affiliations":[{"raw_affiliation_string":"University of Illinois at Urbana-Champaign, USA","institution_ids":["https://openalex.org/I157725225"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5112870293","display_name":"P. Madhusudan","orcid":null},"institutions":[{"id":"https://openalex.org/I157725225","display_name":"University of Illinois Urbana-Champaign","ror":"https://ror.org/047426m28","country_code":"US","type":"education","lineage":["https://openalex.org/I157725225"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"P. Madhusudan","raw_affiliation_strings":["University of Illinois at Urbana-Champaign, USA"],"affiliations":[{"raw_affiliation_string":"University of Illinois at Urbana-Champaign, USA","institution_ids":["https://openalex.org/I157725225"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5046393445","display_name":"Shambwaditya Saha","orcid":null},"institutions":[{"id":"https://openalex.org/I157725225","display_name":"University of Illinois Urbana-Champaign","ror":"https://ror.org/047426m28","country_code":"US","type":"education","lineage":["https://openalex.org/I157725225"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Shambwaditya Saha","raw_affiliation_strings":["University of Illinois at Urbana-Champaign, USA"],"affiliations":[{"raw_affiliation_string":"University of Illinois at Urbana-Champaign, USA","institution_ids":["https://openalex.org/I157725225"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5100437621","display_name":"Shiyu Wang","orcid":"https://orcid.org/0000-0001-7747-1028"},"institutions":[{"id":"https://openalex.org/I157725225","display_name":"University of Illinois Urbana-Champaign","ror":"https://ror.org/047426m28","country_code":"US","type":"education","lineage":["https://openalex.org/I157725225"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Shiyu Wang","raw_affiliation_strings":["University of Illinois at Urbana-Champaign, USA"],"affiliations":[{"raw_affiliation_string":"University of Illinois at Urbana-Champaign, USA","institution_ids":["https://openalex.org/I157725225"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5048118068","display_name":"Tao Xie","orcid":"https://orcid.org/0000-0002-6731-216X"},"institutions":[{"id":"https://openalex.org/I157725225","display_name":"University of Illinois Urbana-Champaign","ror":"https://ror.org/047426m28","country_code":"US","type":"education","lineage":["https://openalex.org/I157725225"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Tao Xie","raw_affiliation_strings":["University of Illinois at Urbana-Champaign, USA"],"affiliations":[{"raw_affiliation_string":"University of Illinois at Urbana-Champaign, USA","institution_ids":["https://openalex.org/I157725225"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5004048843"],"corresponding_institution_ids":["https://openalex.org/I157725225"],"apc_list":null,"apc_paid":null,"fwci":3.3469,"has_fulltext":false,"cited_by_count":23,"citation_normalized_percentile":{"value":0.92139554,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"775","last_page":"787"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998000264167786,"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"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998000264167786,"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/T10142","display_name":"Formal Methods in Verification","score":0.9976000189781189,"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/T12423","display_name":"Software Reliability and Analysis Research","score":0.9968000054359436,"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/stateful-firewall","display_name":"Stateful firewall","score":0.9130611419677734},{"id":"https://openalex.org/keywords/modulo","display_name":"Modulo","score":0.7825732231140137},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7795467376708984},{"id":"https://openalex.org/keywords/generator","display_name":"Generator (circuit theory)","score":0.624103844165802},{"id":"https://openalex.org/keywords/test","display_name":"Test (biology)","score":0.45503920316696167},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4465055465698242},{"id":"https://openalex.org/keywords/type","display_name":"Type (biology)","score":0.44024857878685},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4167797267436981},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.12289389967918396},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.11830320954322815},{"id":"https://openalex.org/keywords/computer-security","display_name":"Computer security","score":0.09171402454376221},{"id":"https://openalex.org/keywords/power","display_name":"Power (physics)","score":0.07549011707305908}],"concepts":[{"id":"https://openalex.org/C22927095","wikidata":"https://www.wikidata.org/wiki/Q1784206","display_name":"Stateful firewall","level":3,"score":0.9130611419677734},{"id":"https://openalex.org/C54732982","wikidata":"https://www.wikidata.org/wiki/Q1415345","display_name":"Modulo","level":2,"score":0.7825732231140137},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7795467376708984},{"id":"https://openalex.org/C2780992000","wikidata":"https://www.wikidata.org/wiki/Q17016113","display_name":"Generator (circuit theory)","level":3,"score":0.624103844165802},{"id":"https://openalex.org/C2777267654","wikidata":"https://www.wikidata.org/wiki/Q3519023","display_name":"Test (biology)","level":2,"score":0.45503920316696167},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4465055465698242},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.44024857878685},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4167797267436981},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.12289389967918396},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.11830320954322815},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.09171402454376221},{"id":"https://openalex.org/C163258240","wikidata":"https://www.wikidata.org/wiki/Q25342","display_name":"Power (physics)","level":2,"score":0.07549011707305908},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C18903297","wikidata":"https://www.wikidata.org/wiki/Q7150","display_name":"Ecology","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C158379750","wikidata":"https://www.wikidata.org/wiki/Q214111","display_name":"Network packet","level":2,"score":0.0},{"id":"https://openalex.org/C62520636","wikidata":"https://www.wikidata.org/wiki/Q944","display_name":"Quantum mechanics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3314221.3314641","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3314221.3314641","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":42,"referenced_works":["https://openalex.org/W146475325","https://openalex.org/W1268528572","https://openalex.org/W1964273033","https://openalex.org/W1965194038","https://openalex.org/W1970168990","https://openalex.org/W1991155991","https://openalex.org/W2009489720","https://openalex.org/W2027422213","https://openalex.org/W2039127983","https://openalex.org/W2064081154","https://openalex.org/W2096449544","https://openalex.org/W2097717378","https://openalex.org/W2103318645","https://openalex.org/W2109998301","https://openalex.org/W2110311336","https://openalex.org/W2114337691","https://openalex.org/W2119467398","https://openalex.org/W2126508237","https://openalex.org/W2129458440","https://openalex.org/W2132980721","https://openalex.org/W2133900335","https://openalex.org/W2134770942","https://openalex.org/W2145385214","https://openalex.org/W2146178292","https://openalex.org/W2149706766","https://openalex.org/W2150874411","https://openalex.org/W2157092502","https://openalex.org/W2163446760","https://openalex.org/W2185676247","https://openalex.org/W2267830770","https://openalex.org/W2295399529","https://openalex.org/W2416392025","https://openalex.org/W2464227571","https://openalex.org/W2557183102","https://openalex.org/W2589084440","https://openalex.org/W2603456259","https://openalex.org/W2741221537","https://openalex.org/W2883281296","https://openalex.org/W3102469351","https://openalex.org/W4237492309","https://openalex.org/W4251656607","https://openalex.org/W4254762831"],"related_works":["https://openalex.org/W2583381754","https://openalex.org/W2144255176","https://openalex.org/W2286614685","https://openalex.org/W1970797462","https://openalex.org/W109977192","https://openalex.org/W2566747981","https://openalex.org/W4312120139","https://openalex.org/W2342453732","https://openalex.org/W2047113772","https://openalex.org/W2809541058"],"abstract_inverted_index":{"In":[0],"this":[1],"paper,":[2],"we":[3],"present":[4],"a":[5,26,54,62],"novel":[6],"learning":[7,51],"framework":[8,52],"for":[9,66,84],"inferring":[10],"stateful":[11],"preconditions":[12,14,34,83],"(i.e.,":[13],"constraining":[15],"not":[16],"only":[17],"primitive-type":[18],"inputs":[19],"but":[20],"also":[21],"non-primitive-type":[22],"object":[23],"states)":[24],"modulo":[25],"test":[27,46,58],"generator,":[28],"where":[29],"the":[30,33,45,50,76],"quality":[31],"of":[32],"is":[35,78],"based":[36],"on":[37],"their":[38],"safety":[39],"and":[40,57],"maximality":[41],"with":[42,53],"respect":[43],"to":[44,60,73],"generator.":[47],"We":[48,68],"instantiate":[49],"specific":[55],"learner":[56],"generator":[59],"realize":[61],"precondition":[63],"synthesis":[64],"tool":[65,77],"C#.":[67],"use":[69],"an":[70],"extensive":[71],"evaluation":[72],"show":[74],"that":[75],"highly":[79],"effective":[80],"in":[81],"synthesizing":[82,90],"avoiding":[85],"exceptions":[86],"as":[87,89],"well":[88],"conditions":[91],"under":[92],"which":[93],"methods":[94],"commute.":[95]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":7},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":5},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":2}],"updated_date":"2026-03-13T16:22:10.518609","created_date":"2025-10-10T00:00:00"}
