{"id":"https://openalex.org/W1990050510","doi":"https://doi.org/10.1145/2076450.2076472","title":"Software synthesis procedures","display_name":"Software synthesis procedures","publication_year":2012,"publication_date":"2012-01-24","ids":{"openalex":"https://openalex.org/W1990050510","doi":"https://doi.org/10.1145/2076450.2076472","mag":"1990050510"},"language":"en","primary_location":{"id":"doi:10.1145/2076450.2076472","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2076450.2076472","pdf_url":null,"source":{"id":"https://openalex.org/S103482838","display_name":"Communications of the ACM","issn_l":"0001-0782","issn":["0001-0782","1557-7317"],"is_oa":false,"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Communications of the ACM","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"http://infoscience.epfl.ch/record/175518","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5008699657","display_name":"Viktor Kun\u010dak","orcid":"https://orcid.org/0000-0001-7044-9522"},"institutions":[{"id":"https://openalex.org/I5124864","display_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","ror":"https://ror.org/02s376052","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I5124864"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Viktor Kuncak","raw_affiliation_strings":["Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","institution_ids":["https://openalex.org/I5124864"]},{"raw_affiliation_string":"[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]","institution_ids":["https://openalex.org/I5124864"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5020869737","display_name":"Mika\u00ebl Mayer","orcid":"https://orcid.org/0000-0002-6460-8731"},"institutions":[{"id":"https://openalex.org/I5124864","display_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","ror":"https://ror.org/02s376052","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I5124864"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Mika\u00ebl Mayer","raw_affiliation_strings":["Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","institution_ids":["https://openalex.org/I5124864"]},{"raw_affiliation_string":"[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]","institution_ids":["https://openalex.org/I5124864"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5045794652","display_name":"Ru\u017eica Piska\u010d","orcid":"https://orcid.org/0000-0002-3267-0776"},"institutions":[{"id":"https://openalex.org/I5124864","display_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","ror":"https://ror.org/02s376052","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I5124864"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Ruzica Piskac","raw_affiliation_strings":["Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","institution_ids":["https://openalex.org/I5124864"]},{"raw_affiliation_string":"[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]","institution_ids":["https://openalex.org/I5124864"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5085041656","display_name":"Philippe Suter","orcid":null},"institutions":[{"id":"https://openalex.org/I5124864","display_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","ror":"https://ror.org/02s376052","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I5124864"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Philippe Suter","raw_affiliation_strings":["Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland","institution_ids":["https://openalex.org/I5124864"]},{"raw_affiliation_string":"[Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland]","institution_ids":["https://openalex.org/I5124864"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":9.0064,"has_fulltext":false,"cited_by_count":38,"citation_normalized_percentile":{"value":0.98394624,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":"55","issue":"2","first_page":"103","last_page":"111"},"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.9998999834060669,"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.9998999834060669,"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.9997000098228455,"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.9997000098228455,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8379672169685364},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7530612945556641},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6774004697799683},{"id":"https://openalex.org/keywords/program-synthesis","display_name":"Program synthesis","score":0.6334879398345947},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.5119718313217163},{"id":"https://openalex.org/keywords/integer","display_name":"Integer (computer science)","score":0.4721769690513611},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.4672076106071472},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.4512535333633423},{"id":"https://openalex.org/keywords/class","display_name":"Class (philosophy)","score":0.4326445460319519},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4277242124080658},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3427419066429138}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8379672169685364},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7530612945556641},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6774004697799683},{"id":"https://openalex.org/C2776937632","wikidata":"https://www.wikidata.org/wiki/Q4117718","display_name":"Program synthesis","level":2,"score":0.6334879398345947},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.5119718313217163},{"id":"https://openalex.org/C97137487","wikidata":"https://www.wikidata.org/wiki/Q729138","display_name":"Integer (computer science)","level":2,"score":0.4721769690513611},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.4672076106071472},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.4512535333633423},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.4326445460319519},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4277242124080658},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3427419066429138},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.0}],"mesh":[],"locations_count":6,"locations":[{"id":"doi:10.1145/2076450.2076472","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2076450.2076472","pdf_url":null,"source":{"id":"https://openalex.org/S103482838","display_name":"Communications of the ACM","issn_l":"0001-0782","issn":["0001-0782","1557-7317"],"is_oa":false,"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Communications of the ACM","raw_type":"journal-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.226.4542","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.226.4542","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://lara.epfl.ch/%7Epsuter/articles/KuncakETAL12SoftwareSynthesisProcedures.pdf","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.233.3963","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.233.3963","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://lara.epfl.ch/%7Ekuncak/papers/KuncakETAL12SoftwareSynthesisProcedures.pdf","raw_type":"text"},{"id":"pmh:oai:escidoc.org:escidoc:2173294","is_oa":false,"landing_page_url":"http://hdl.handle.net/11858/00-001M-0000-0028-8B10-1","pdf_url":null,"source":{"id":"https://openalex.org/S7407052962","display_name":"Max Planck Digital Library","issn_l":null,"issn":[],"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"info:eu-repo/semantics/article"},{"id":"pmh:oai:infoscience.epfl.ch:175518","is_oa":true,"landing_page_url":"http://infoscience.epfl.ch/record/175518","pdf_url":null,"source":{"id":"https://openalex.org/S4306400487","display_name":"Infoscience (Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text"},{"id":"pmh:oai:infoscience.tind.io:175518","is_oa":true,"landing_page_url":"https://infoscience.epfl.ch/handle/20.500.14299/78535","pdf_url":null,"source":{"id":"https://openalex.org/S4306400487","display_name":"Infoscience (Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"research article"}],"best_oa_location":{"id":"pmh:oai:infoscience.epfl.ch:175518","is_oa":true,"landing_page_url":"http://infoscience.epfl.ch/record/175518","pdf_url":null,"source":{"id":"https://openalex.org/S4306400487","display_name":"Infoscience (Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text"},"sustainable_development_goals":[{"display_name":"Peace, Justice and strong institutions","id":"https://metadata.un.org/sdg/16","score":0.699999988079071}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":23,"referenced_works":["https://openalex.org/W205696660","https://openalex.org/W1489527380","https://openalex.org/W1493089824","https://openalex.org/W1496801598","https://openalex.org/W1513644114","https://openalex.org/W1540595797","https://openalex.org/W1572073643","https://openalex.org/W1802897460","https://openalex.org/W1970945363","https://openalex.org/W1977279860","https://openalex.org/W1993836075","https://openalex.org/W2016206563","https://openalex.org/W2037237472","https://openalex.org/W2063727779","https://openalex.org/W2098321852","https://openalex.org/W2101432564","https://openalex.org/W2102913701","https://openalex.org/W2103953153","https://openalex.org/W2105315191","https://openalex.org/W2132331020","https://openalex.org/W2147650421","https://openalex.org/W2149236697","https://openalex.org/W2162315884"],"related_works":["https://openalex.org/W2371266106","https://openalex.org/W2117382851","https://openalex.org/W3006505070","https://openalex.org/W2382449560","https://openalex.org/W2767298477","https://openalex.org/W2110432562","https://openalex.org/W2025344","https://openalex.org/W2117864619","https://openalex.org/W2090337950","https://openalex.org/W2104121286"],"abstract_inverted_index":{"Automated":[0],"synthesis":[1,20,25,50,92,114],"of":[2,40,112],"program":[3],"fragments":[4],"from":[5],"specifications":[6],"can":[7,116],"make":[8],"programs":[9],"easier":[10,14],"to":[11,15,44,56,75,120],"write":[12],"and":[13,53,64,102,125],"reason":[16],"about.":[17],"To":[18,86],"integrate":[19],"into":[21,49],"programming":[22],"languages,":[23],"software":[24],"algorithms":[26,98],"should":[27,34],"behave":[28],"in":[29],"a":[30,37,118],"predictable":[31],"way:":[32],"they":[33,72],"succeed":[35],"for":[36,99],"well-defined":[38],"class":[39],"specifications.":[41],"We":[42,106],"propose":[43],"systematically":[45],"generalize":[46],"decision":[47],"procedures":[48,51,68,93,115],",":[52],"use":[54],"them":[55],"compile":[57],"implicitly":[58],"specified":[59],"computations":[60],"embedded":[61],"inside":[62],"functional":[63],"imperative":[65],"programs.":[66],"Synthesis":[67],"are":[69,73],"predictable,":[70],"because":[71],"guaranteed":[74],"find":[76],"code":[77,84],"that":[78,109],"satisfies":[79],"the":[80],"specification":[81],"whenever":[82],"such":[83,113],"exists.":[85],"illustrate":[87],"our":[88],"method,":[89],"we":[90],"derive":[91],"by":[94],"extending":[95],"quantifier":[96],"elimination":[97],"integer":[100],"arithmetic":[101],"set":[103],"data":[104],"structures.":[105],"then":[107],"show":[108],"an":[110],"implementation":[111],"extend":[117],"compiler":[119],"support":[121],"implicit":[122],"value":[123],"definitions":[124],"advanced":[126],"pattern":[127],"matching.":[128]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2024,"cited_by_count":3},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":3},{"year":2015,"cited_by_count":6},{"year":2014,"cited_by_count":5},{"year":2013,"cited_by_count":9},{"year":2012,"cited_by_count":3}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
