{"id":"https://openalex.org/W2803418411","doi":"https://doi.org/10.1162/evco_a_00228","title":"Counterexample-Driven Genetic Programming: Heuristic Program Synthesis from Formal Specifications","display_name":"Counterexample-Driven Genetic Programming: Heuristic Program Synthesis from Formal Specifications","publication_year":2018,"publication_date":"2018-05-22","ids":{"openalex":"https://openalex.org/W2803418411","doi":"https://doi.org/10.1162/evco_a_00228","mag":"2803418411","pmid":"https://pubmed.ncbi.nlm.nih.gov/29786460"},"language":"en","primary_location":{"id":"doi:10.1162/evco_a_00228","is_oa":false,"landing_page_url":"https://doi.org/10.1162/evco_a_00228","pdf_url":null,"source":{"id":"https://openalex.org/S38677346","display_name":"Evolutionary Computation","issn_l":"1063-6560","issn":["1063-6560","1530-9304"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310315718","host_organization_name":"The MIT Press","host_organization_lineage":["https://openalex.org/P4310315718"],"host_organization_lineage_names":["The MIT Press"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Evolutionary Computation","raw_type":"journal-article"},"type":"article","indexed_in":["crossref","pubmed"],"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/A5006916652","display_name":"Iwo B\u0142\u0105dek","orcid":"https://orcid.org/0000-0003-1991-8797"},"institutions":[{"id":"https://openalex.org/I46597724","display_name":"Pozna\u0144 University of Technology","ror":"https://ror.org/00p7p3302","country_code":"PL","type":"education","lineage":["https://openalex.org/I46597724"]}],"countries":["PL"],"is_corresponding":true,"raw_author_name":"Iwo B\u0142\u0105dek","raw_affiliation_strings":["Institute of Computing Science, Poznan University of Technology, Pozna\u0144, 60-965, Poland"],"affiliations":[{"raw_affiliation_string":"Institute of Computing Science, Poznan University of Technology, Pozna\u0144, 60-965, Poland","institution_ids":["https://openalex.org/I46597724"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5034406933","display_name":"Krzysztof Krawiec","orcid":"https://orcid.org/0000-0001-5439-3231"},"institutions":[{"id":"https://openalex.org/I46597724","display_name":"Pozna\u0144 University of Technology","ror":"https://ror.org/00p7p3302","country_code":"PL","type":"education","lineage":["https://openalex.org/I46597724"]}],"countries":["PL"],"is_corresponding":true,"raw_author_name":"Krzysztof Krawiec","raw_affiliation_strings":["Institute of Computing Science, Poznan University of Technology, Pozna\u0144, 60-965, Poland"],"affiliations":[{"raw_affiliation_string":"Institute of Computing Science, Poznan University of Technology, Pozna\u0144, 60-965, Poland","institution_ids":["https://openalex.org/I46597724"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5037668386","display_name":"Jerry Swan","orcid":"https://orcid.org/0000-0003-1944-7147"},"institutions":[{"id":"https://openalex.org/I52099693","display_name":"University of York","ror":"https://ror.org/04m01e293","country_code":"GB","type":"education","lineage":["https://openalex.org/I52099693"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Jerry Swan","raw_affiliation_strings":["Department of Computer Science, University of York, York, YO10 5GH, UK"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of York, York, YO10 5GH, UK","institution_ids":["https://openalex.org/I52099693"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5006916652","https://openalex.org/A5034406933","https://openalex.org/A5037668386"],"corresponding_institution_ids":["https://openalex.org/I46597724","https://openalex.org/I52099693"],"apc_list":null,"apc_paid":null,"fwci":0.9773,"has_fulltext":false,"cited_by_count":10,"citation_normalized_percentile":{"value":0.81505685,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":"26","issue":"3","first_page":"441","last_page":"469"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11975","display_name":"Evolutionary Algorithms and Applications","score":0.9994999766349792,"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/T11975","display_name":"Evolutionary Algorithms and Applications","score":0.9994999766349792,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.998199999332428,"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.9943000078201294,"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/counterexample","display_name":"Counterexample","score":0.7923382520675659},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6878817081451416},{"id":"https://openalex.org/keywords/genetic-programming","display_name":"Genetic programming","score":0.6146793365478516},{"id":"https://openalex.org/keywords/heuristic","display_name":"Heuristic","score":0.6132722496986389},{"id":"https://openalex.org/keywords/modulo","display_name":"Modulo","score":0.5932680368423462},{"id":"https://openalex.org/keywords/solver","display_name":"Solver","score":0.5587772727012634},{"id":"https://openalex.org/keywords/satisfiability-modulo-theories","display_name":"Satisfiability modulo theories","score":0.5373664498329163},{"id":"https://openalex.org/keywords/program-synthesis","display_name":"Program synthesis","score":0.4828232228755951},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.43813759088516235},{"id":"https://openalex.org/keywords/formal-methods","display_name":"Formal methods","score":0.4346178472042084},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4154738187789917},{"id":"https://openalex.org/keywords/mathematical-optimization","display_name":"Mathematical optimization","score":0.34075358510017395},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.25403016805648804},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.1506671905517578},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.0962999165058136}],"concepts":[{"id":"https://openalex.org/C162838799","wikidata":"https://www.wikidata.org/wiki/Q596077","display_name":"Counterexample","level":2,"score":0.7923382520675659},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6878817081451416},{"id":"https://openalex.org/C110332635","wikidata":"https://www.wikidata.org/wiki/Q629498","display_name":"Genetic programming","level":2,"score":0.6146793365478516},{"id":"https://openalex.org/C173801870","wikidata":"https://www.wikidata.org/wiki/Q201413","display_name":"Heuristic","level":2,"score":0.6132722496986389},{"id":"https://openalex.org/C54732982","wikidata":"https://www.wikidata.org/wiki/Q1415345","display_name":"Modulo","level":2,"score":0.5932680368423462},{"id":"https://openalex.org/C2778770139","wikidata":"https://www.wikidata.org/wiki/Q1966904","display_name":"Solver","level":2,"score":0.5587772727012634},{"id":"https://openalex.org/C164155591","wikidata":"https://www.wikidata.org/wiki/Q2067766","display_name":"Satisfiability modulo theories","level":2,"score":0.5373664498329163},{"id":"https://openalex.org/C2776937632","wikidata":"https://www.wikidata.org/wiki/Q4117718","display_name":"Program synthesis","level":2,"score":0.4828232228755951},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.43813759088516235},{"id":"https://openalex.org/C75606506","wikidata":"https://www.wikidata.org/wiki/Q1049183","display_name":"Formal methods","level":2,"score":0.4346178472042084},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4154738187789917},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.34075358510017395},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.25403016805648804},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.1506671905517578},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.0962999165058136}],"mesh":[{"descriptor_ui":"D000066506","descriptor_name":"Heuristics","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D000066506","descriptor_name":"Heuristics","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D000066506","descriptor_name":"Heuristics","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D000465","descriptor_name":"Algorithms","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D000465","descriptor_name":"Algorithms","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D000465","descriptor_name":"Algorithms","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D003198","descriptor_name":"Computer Simulation","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D003198","descriptor_name":"Computer Simulation","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D003198","descriptor_name":"Computer Simulation","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D003627","descriptor_name":"Data Interpretation, Statistical","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D003627","descriptor_name":"Data Interpretation, Statistical","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D003627","descriptor_name":"Data Interpretation, Statistical","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D006801","descriptor_name":"Humans","qualifier_ui":null,"qualifier_name":null,"is_major_topic":false},{"descriptor_ui":"D006801","descriptor_name":"Humans","qualifier_ui":null,"qualifier_name":null,"is_major_topic":false},{"descriptor_ui":"D006801","descriptor_name":"Humans","qualifier_ui":null,"qualifier_name":null,"is_major_topic":false},{"descriptor_ui":"D008957","descriptor_name":"Models, Genetic","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D008957","descriptor_name":"Models, Genetic","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D008957","descriptor_name":"Models, Genetic","qualifier_ui":null,"qualifier_name":null,"is_major_topic":true},{"descriptor_ui":"D010363","descriptor_name":"Pattern Recognition, Automated","qualifier_ui":null,"qualifier_name":null,"is_major_topic":false},{"descriptor_ui":"D010363","descriptor_name":"Pattern Recognition, Automated","qualifier_ui":null,"qualifier_name":null,"is_major_topic":false},{"descriptor_ui":"D010363","descriptor_name":"Pattern Recognition, Automated","qualifier_ui":null,"qualifier_name":null,"is_major_topic":false}],"locations_count":2,"locations":[{"id":"doi:10.1162/evco_a_00228","is_oa":false,"landing_page_url":"https://doi.org/10.1162/evco_a_00228","pdf_url":null,"source":{"id":"https://openalex.org/S38677346","display_name":"Evolutionary Computation","issn_l":"1063-6560","issn":["1063-6560","1530-9304"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310315718","host_organization_name":"The MIT Press","host_organization_lineage":["https://openalex.org/P4310315718"],"host_organization_lineage_names":["The MIT Press"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Evolutionary Computation","raw_type":"journal-article"},{"id":"pmid:29786460","is_oa":false,"landing_page_url":"https://pubmed.ncbi.nlm.nih.gov/29786460","pdf_url":null,"source":{"id":"https://openalex.org/S4306525036","display_name":"PubMed","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1299303238","host_organization_name":"National Institutes of Health","host_organization_lineage":["https://openalex.org/I1299303238"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Evolutionary computation","raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Partnerships for the goals","score":0.4399999976158142,"id":"https://metadata.un.org/sdg/17"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":52,"referenced_works":["https://openalex.org/W14816984","https://openalex.org/W32282251","https://openalex.org/W1480909796","https://openalex.org/W1503911500","https://openalex.org/W1507965776","https://openalex.org/W1526922602","https://openalex.org/W1545750997","https://openalex.org/W1566986515","https://openalex.org/W1579983817","https://openalex.org/W1758861635","https://openalex.org/W1780814695","https://openalex.org/W1950768068","https://openalex.org/W1973698443","https://openalex.org/W1973831620","https://openalex.org/W2001648835","https://openalex.org/W2010647095","https://openalex.org/W2011933251","https://openalex.org/W2014309790","https://openalex.org/W2028585812","https://openalex.org/W2054072078","https://openalex.org/W2062686286","https://openalex.org/W2072473332","https://openalex.org/W2101432564","https://openalex.org/W2122384298","https://openalex.org/W2124875144","https://openalex.org/W2134734244","https://openalex.org/W2139187303","https://openalex.org/W2149236697","https://openalex.org/W2264878068","https://openalex.org/W2328397437","https://openalex.org/W2408525833","https://openalex.org/W2484802798","https://openalex.org/W2565157351","https://openalex.org/W2589084440","https://openalex.org/W2594171547","https://openalex.org/W2603456259","https://openalex.org/W2605095310","https://openalex.org/W2733964674","https://openalex.org/W2780260708","https://openalex.org/W2914423669","https://openalex.org/W2914826147","https://openalex.org/W2987907651","https://openalex.org/W2997049506","https://openalex.org/W3004042307","https://openalex.org/W3146075203","https://openalex.org/W4206080774","https://openalex.org/W4245111020","https://openalex.org/W4245640662","https://openalex.org/W4246691913","https://openalex.org/W4255937913","https://openalex.org/W4298345797","https://openalex.org/W4301081010"],"related_works":["https://openalex.org/W2773117586","https://openalex.org/W2884958048","https://openalex.org/W2865644289","https://openalex.org/W2733964674","https://openalex.org/W4206458917","https://openalex.org/W3185435488","https://openalex.org/W2951913576","https://openalex.org/W4298483060","https://openalex.org/W1815155750","https://openalex.org/W2803418411"],"abstract_inverted_index":{"Conventional":[0],"genetic":[1],"programming":[2],"(GP)":[3],"can":[4,146],"guarantee":[5],"only":[6],"that":[7,54,79,101,144,169],"synthesized":[8],"programs":[9,27,56,62,104,151],"pass":[10],"tests":[11,84],"given":[12],"by":[13,28],"the":[14,132,138],"provided":[15],"input-output":[16],"examples.":[17],"The":[18,60,90],"alternative":[19],"to":[20,87,126],"such":[21],"a":[22,69,97,108],"test-based":[23],"approach":[24],"is":[25,93],"synthesizing":[26],"formal":[29,58,66],"specification,":[30],"typically":[31],"realized":[32],"with":[33,68,96,159],"exact,":[34],"nonheuristic":[35],"algorithms.":[36],"In":[37],"this":[38],"article,":[39],"we":[40],"build":[41],"on":[42,46],"our":[43],"earlier":[44],"study":[45],"Counterexample-Based":[47],"Genetic":[48],"Programming":[49],"(CDGP),":[50],"an":[51],"evolutionary":[52],"heuristic":[53],"synthesizes":[55],"from":[57],"specifications.":[59],"candidate":[61],"in":[63,77,152],"CDGP":[64,92,145,170],"undergo":[65],"verification":[67],"Satisfiability":[70],"Modulo":[71],"Theory":[72],"(SMT)":[73],"solver,":[74],"which":[75,103],"results":[76],"counterexamples":[78,114],"are":[80],"subsequently":[81],"turned":[82],"into":[83,115],"and":[85,117,120,137,167],"used":[86],"calculate":[88],"fitness.":[89],"original":[91],"extended":[94],"here":[95],"fitness":[98],"threshold":[99],"parameter":[100],"decides":[102],"should":[105],"be":[106],"verified,":[107],"more":[109],"rigorous":[110],"mechanism":[111],"for":[112,176],"turning":[113],"tests,":[116],"other":[118],"conceptual":[119],"technical":[121],"improvements.":[122],"We":[123,155],"apply":[124],"it":[125,158],"24":[127],"benchmarks":[128],"representing":[129],"two":[130,160],"domains:":[131],"linear":[133],"integer":[134],"arithmetic":[135],"(LIA)":[136],"string":[139],"manipulation":[140],"(SLIA)":[141],"problems,":[142],"showing":[143],"reliably":[147],"synthesize":[148],"provably":[149],"correct":[150],"both":[153],"domains.":[154],"also":[156],"confront":[157],"state-of-the":[161],"art":[162],"exact":[163],"program":[164,178],"synthesis":[165,174],"methods":[166],"demonstrate":[168],"effectively":[171],"trades":[172],"longer":[173],"time":[175],"smaller":[177],"size.":[179]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":3}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
