{"id":"https://openalex.org/W3173556662","doi":"https://doi.org/10.1145/3453483.3454104","title":"Specification synthesis with constrained Horn clauses","display_name":"Specification synthesis with constrained Horn clauses","publication_year":2021,"publication_date":"2021-06-18","ids":{"openalex":"https://openalex.org/W3173556662","doi":"https://doi.org/10.1145/3453483.3454104","mag":"3173556662"},"language":"en","primary_location":{"id":"doi:10.1145/3453483.3454104","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3453483.3454104","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 42nd ACM SIGPLAN International 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/A5046306364","display_name":"Sumanth Prabhu","orcid":null},"institutions":[{"id":"https://openalex.org/I55215948","display_name":"Tata Consultancy Services (India)","ror":"https://ror.org/01b9n8m42","country_code":"IN","type":"company","lineage":["https://openalex.org/I4210086519","https://openalex.org/I55215948"]}],"countries":["IN"],"is_corresponding":true,"raw_author_name":"Sumanth Prabhu","raw_affiliation_strings":["TCS Research, India"],"affiliations":[{"raw_affiliation_string":"TCS Research, India","institution_ids":["https://openalex.org/I55215948"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5027818967","display_name":"Grigory Fedyukovich","orcid":"https://orcid.org/0000-0003-1727-4043"},"institutions":[{"id":"https://openalex.org/I103163165","display_name":"Florida State University","ror":"https://ror.org/05g3dte14","country_code":"US","type":"education","lineage":["https://openalex.org/I103163165"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Grigory Fedyukovich","raw_affiliation_strings":["Florida State University, USA"],"affiliations":[{"raw_affiliation_string":"Florida State University, USA","institution_ids":["https://openalex.org/I103163165"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101709558","display_name":"Kumar Madhukar","orcid":"https://orcid.org/0000-0001-5686-9758"},"institutions":[{"id":"https://openalex.org/I55215948","display_name":"Tata Consultancy Services (India)","ror":"https://ror.org/01b9n8m42","country_code":"IN","type":"company","lineage":["https://openalex.org/I4210086519","https://openalex.org/I55215948"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Kumar Madhukar","raw_affiliation_strings":["TCS Research, India"],"affiliations":[{"raw_affiliation_string":"TCS Research, India","institution_ids":["https://openalex.org/I55215948"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5045349712","display_name":"Deepak D\u2019Souza","orcid":"https://orcid.org/0000-0002-6629-6604"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Deepak D'Souza","raw_affiliation_strings":["IISc Bangalore, India"],"affiliations":[{"raw_affiliation_string":"IISc Bangalore, India","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5046306364"],"corresponding_institution_ids":["https://openalex.org/I55215948"],"apc_list":null,"apc_paid":null,"fwci":2.2195,"has_fulltext":false,"cited_by_count":22,"citation_normalized_percentile":{"value":0.89327428,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"1203","last_page":"1217"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9998000264167786,"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"}},"topics":[{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9998000264167786,"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.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/T10126","display_name":"Logic, programming, and type systems","score":0.9976999759674072,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/counterexample","display_name":"Counterexample","score":0.7322068214416504},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7202644944190979},{"id":"https://openalex.org/keywords/horn-clause","display_name":"Horn clause","score":0.5561166405677795},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.5266016721725464},{"id":"https://openalex.org/keywords/range","display_name":"Range (aeronautics)","score":0.5229507088661194},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.4906677007675171},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.48130002617836},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.4783020615577698},{"id":"https://openalex.org/keywords/model-checking","display_name":"Model checking","score":0.4664924144744873},{"id":"https://openalex.org/keywords/component","display_name":"Component (thermodynamics)","score":0.4424038231372833},{"id":"https://openalex.org/keywords/quality","display_name":"Quality (philosophy)","score":0.43869924545288086},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.37988486886024475},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.34362882375717163},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.16481277346611023},{"id":"https://openalex.org/keywords/prolog","display_name":"Prolog","score":0.14751186966896057},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.0914716124534607}],"concepts":[{"id":"https://openalex.org/C162838799","wikidata":"https://www.wikidata.org/wiki/Q596077","display_name":"Counterexample","level":2,"score":0.7322068214416504},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7202644944190979},{"id":"https://openalex.org/C189790780","wikidata":"https://www.wikidata.org/wiki/Q933932","display_name":"Horn clause","level":3,"score":0.5561166405677795},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.5266016721725464},{"id":"https://openalex.org/C204323151","wikidata":"https://www.wikidata.org/wiki/Q905424","display_name":"Range (aeronautics)","level":2,"score":0.5229507088661194},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.4906677007675171},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.48130002617836},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.4783020615577698},{"id":"https://openalex.org/C110251889","wikidata":"https://www.wikidata.org/wiki/Q1569697","display_name":"Model checking","level":2,"score":0.4664924144744873},{"id":"https://openalex.org/C168167062","wikidata":"https://www.wikidata.org/wiki/Q1117970","display_name":"Component (thermodynamics)","level":2,"score":0.4424038231372833},{"id":"https://openalex.org/C2779530757","wikidata":"https://www.wikidata.org/wiki/Q1207505","display_name":"Quality (philosophy)","level":2,"score":0.43869924545288086},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.37988486886024475},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.34362882375717163},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.16481277346611023},{"id":"https://openalex.org/C81721847","wikidata":"https://www.wikidata.org/wiki/Q163468","display_name":"Prolog","level":2,"score":0.14751186966896057},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0914716124534607},{"id":"https://openalex.org/C97355855","wikidata":"https://www.wikidata.org/wiki/Q11473","display_name":"Thermodynamics","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C146978453","wikidata":"https://www.wikidata.org/wiki/Q3798668","display_name":"Aerospace engineering","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/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3453483.3454104","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3453483.3454104","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":54,"referenced_works":["https://openalex.org/W146475325","https://openalex.org/W967948971","https://openalex.org/W1253738753","https://openalex.org/W1480909796","https://openalex.org/W1498946538","https://openalex.org/W1526922602","https://openalex.org/W1544283013","https://openalex.org/W1970168990","https://openalex.org/W1975041710","https://openalex.org/W1992012690","https://openalex.org/W2074644416","https://openalex.org/W2119467398","https://openalex.org/W2126775986","https://openalex.org/W2131954495","https://openalex.org/W2132481916","https://openalex.org/W2134770942","https://openalex.org/W2140673956","https://openalex.org/W2148315256","https://openalex.org/W2169417140","https://openalex.org/W2181712945","https://openalex.org/W2218263673","https://openalex.org/W2267830770","https://openalex.org/W2294152467","https://openalex.org/W2295399529","https://openalex.org/W2416392025","https://openalex.org/W2468276494","https://openalex.org/W2468890279","https://openalex.org/W2483771058","https://openalex.org/W2514073783","https://openalex.org/W2605526663","https://openalex.org/W2626931523","https://openalex.org/W2767948565","https://openalex.org/W2779005308","https://openalex.org/W2798232457","https://openalex.org/W2798609500","https://openalex.org/W2889520176","https://openalex.org/W2904362559","https://openalex.org/W2910565741","https://openalex.org/W2932603064","https://openalex.org/W2938468157","https://openalex.org/W2956992268","https://openalex.org/W2960656136","https://openalex.org/W2964144608","https://openalex.org/W3005667672","https://openalex.org/W3006751250","https://openalex.org/W3007744929","https://openalex.org/W3032958005","https://openalex.org/W3043583212","https://openalex.org/W3100536147","https://openalex.org/W3102469351","https://openalex.org/W3141259760","https://openalex.org/W3149070118","https://openalex.org/W4230086982","https://openalex.org/W4256174789"],"related_works":["https://openalex.org/W2349952486","https://openalex.org/W1489260687","https://openalex.org/W2775700832","https://openalex.org/W2587222766","https://openalex.org/W3204670144","https://openalex.org/W2953113086","https://openalex.org/W1552191998","https://openalex.org/W2056825861","https://openalex.org/W4226455345","https://openalex.org/W2765989158"],"abstract_inverted_index":{"The":[0,84],"problem":[1],"of":[2,5,12,17,45,87,111,126,132],"synthesizing":[3],"specifications":[4,20,68,79,128],"undefined":[6,46],"procedures":[7],"has":[8],"a":[9,30,81,103,130],"broad":[10],"range":[11,131],"applications,":[13],"but":[14,69],"the":[15,18,100,119,124],"usefulness":[16],"generated":[19,127],"depends":[21],"on":[22,129],"their":[23],"quality.":[24],"In":[25],"this":[26],"paper,":[27],"we":[28],"propose":[29],"technique":[31,64,89],"for":[32,40,43],"finding":[33],"maximal":[34],"and":[35,48,123],"non-vacuous":[36,78,93],"specifications.":[37],"Maximality":[38],"allows":[39],"more":[41],"choices":[42],"implementations":[44],"procedures,":[47],"non-vacuity":[49],"ensures":[50],"that":[51],"safety":[52],"assertions":[53],"are":[54],"reachable.":[55],"To":[56],"handle":[57],"programs":[58],"with":[59],"complex":[60],"control":[61],"flow,":[62],"our":[63,88],"discovers":[65],"not":[66],"only":[67],"also":[70],"inductive":[71],"invariants.":[72],"Our":[73],"iterative":[74],"algorithm":[75],"lazily":[76],"generalizes":[77],"in":[80,102],"counterexample-guided":[82],"loop.":[83],"key":[85],"component":[86],"is":[90],"an":[91],"effective":[92],"specification":[94],"synthesis":[95],"algorithm.":[96],"We":[97,115],"have":[98,116],"implemented":[99],"approach":[101],"tool":[104],"called":[105],"HornSpec,":[106],"taking":[107],"as":[108],"input":[109],"systems":[110],"constrained":[112],"Horn":[113],"clauses.":[114],"experimentally":[117],"demonstrated":[118],"tool's":[120],"effectiveness,":[121],"efficiency,":[122],"quality":[125],"benchmarks.":[133]},"counts_by_year":[{"year":2025,"cited_by_count":7},{"year":2024,"cited_by_count":8},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
