{"id":"https://openalex.org/W2013596093","doi":"https://doi.org/10.1145/2737924.2738007","title":"Type-and-example-directed program synthesis","display_name":"Type-and-example-directed program synthesis","publication_year":2015,"publication_date":"2015-06-03","ids":{"openalex":"https://openalex.org/W2013596093","doi":"https://doi.org/10.1145/2737924.2738007","mag":"2013596093"},"language":"en","primary_location":{"id":"doi:10.1145/2737924.2738007","doi":"https://doi.org/10.1145/2737924.2738007","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2737924.2738007","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2737924.2738007","source":{"id":"https://openalex.org/S4393917474","display_name":"ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)","issn_l":"1531-7102","issn":["1531-7102"],"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"volume":null,"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/2737924.2738007","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5020115127","display_name":"Peter-Michael Osera","orcid":"https://orcid.org/0000-0001-6890-8339","observed_orcids":["https://orcid.org/0000-0001-6890-8339"]},"institutions":[{"id":"https://openalex.org/I79576946","display_name":"University of Pennsylvania","ror":"https://ror.org/00b30xv10","country_code":"US","type":"education","lineage":["https://openalex.org/I79576946"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Peter-Michael Osera","raw_affiliation_strings":["University of Pennsylvania, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Pennsylvania, USA","institution_ids":["https://openalex.org/I79576946"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5041830534","display_name":"Steve Zdancewic","orcid":"https://orcid.org/0000-0002-3516-1512","observed_orcids":["https://orcid.org/0000-0002-3516-1512"]},"institutions":[{"id":"https://openalex.org/I79576946","display_name":"University of Pennsylvania","ror":"https://ror.org/00b30xv10","country_code":"US","type":"education","lineage":["https://openalex.org/I79576946"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Steve Zdancewic","raw_affiliation_strings":["University of Pennsylvania, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Pennsylvania, USA","institution_ids":["https://openalex.org/I79576946"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I79576946"],"apc_list":null,"apc_paid":null,"fwci":12.7925,"has_fulltext":true,"cited_by_count":187,"citation_normalized_percentile":{"value":0.99153436,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":99,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"619","last_page":"630"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9009000062942505,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9009000062942505,"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/T11975","display_name":"Evolutionary Algorithms and Applications","score":0.06809999793767929,"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/T10533","display_name":"Teaching and Learning Programming","score":0.012299999594688416,"subfield":{"id":"https://openalex.org/subfields/1706","display_name":"Computer Science Applications"},"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/program-synthesis","display_name":"program synthesis","score":0.9860000014305115},{"id":"https://openalex.org/keywords/recursive-functions","display_name":"recursive functions","score":0.8790000081062317},{"id":"https://openalex.org/keywords/algebraic-data-types","display_name":"algebraic data types","score":0.9509999752044678},{"id":"https://openalex.org/keywords/proof-theory","display_name":"proof theory","score":0.7390000224113464},{"id":"https://openalex.org/keywords/search-space-pruning","display_name":"search space pruning","score":0.9589999914169312}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7873420715332031},{"id":"https://openalex.org/C2776937632","wikidata":"https://www.wikidata.org/wiki/Q4117718","display_name":"Program synthesis","level":2,"score":0.7415372729301453},{"id":"https://openalex.org/C165696696","wikidata":"https://www.wikidata.org/wiki/Q11287","display_name":"Exploit","level":2,"score":0.6214226484298706},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.5471112728118896},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.5373380184173584},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.5191844701766968},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5104126334190369},{"id":"https://openalex.org/C36503486","wikidata":"https://www.wikidata.org/wiki/Q11235244","display_name":"Domain (mathematical analysis)","level":2,"score":0.5033814311027527},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.48411238193511963},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.42253419756889343},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.15967780351638794},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.1534501612186432},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","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}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2737924.2738007","doi":"https://doi.org/10.1145/2737924.2738007","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2737924.2738007","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2737924.2738007","source":{"id":"https://openalex.org/S4393917474","display_name":"ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)","issn_l":"1531-7102","issn":["1531-7102"],"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.700.4643","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.700.4643","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.cis.upenn.edu/%7Estevez/papers/OZ15.pdf","raw_type":"text"}],"best_oa_location":{"id":"doi:10.1145/2737924.2738007","doi":"https://doi.org/10.1145/2737924.2738007","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2737924.2738007","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/2737924.2738007","source":{"id":"https://openalex.org/S4393917474","display_name":"ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)","issn_l":"1531-7102","issn":["1531-7102"],"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"sustainable_development_goals":[],"study_designs":[],"awards":[{"id":"https://openalex.org/G3842030029","display_name":"Collaborative Research: Expeditions in Computer Augmented Program Engineering (ExCAPE):  Harnessing Synthesis for Software Design","funder_award_id":"1138996","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320309370","display_name":"University of Pennsylvania","ror":"https://ror.org/00b30xv10"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2013596093.pdf","grobid_xml":"https://content.openalex.org/works/W2013596093.grobid-xml"},"referenced_works_count":29,"referenced_works":["https://openalex.org/W1481397690","https://openalex.org/W1560253649","https://openalex.org/W1572073643","https://openalex.org/W1575675278","https://openalex.org/W1593617641","https://openalex.org/W1905591175","https://openalex.org/W1965446936","https://openalex.org/W2012436850","https://openalex.org/W2020822927","https://openalex.org/W2036676170","https://openalex.org/W2039977878","https://openalex.org/W2057156093","https://openalex.org/W2084036515","https://openalex.org/W2091385303","https://openalex.org/W2094878426","https://openalex.org/W2097335450","https://openalex.org/W2122384298","https://openalex.org/W2132525863","https://openalex.org/W2145905293","https://openalex.org/W2153943889","https://openalex.org/W2157976942","https://openalex.org/W2161159055","https://openalex.org/W2276356546","https://openalex.org/W2963504583","https://openalex.org/W4232188856","https://openalex.org/W4237412827","https://openalex.org/W4238156666","https://openalex.org/W4238292764","https://openalex.org/W4252547602"],"related_works":["https://openalex.org/W4297073027","https://openalex.org/W7165679040","https://openalex.org/W4399850818","https://openalex.org/W7100233512","https://openalex.org/W2093535699","https://openalex.org/W2091385303","https://openalex.org/W2263738566","https://openalex.org/W4379512371","https://openalex.org/W2910996475","https://openalex.org/W1881676931"],"abstract_inverted_index":{"This":[0],"paper":[1],"presents":[2],"an":[3],"algorithm":[4,33,53],"for":[5,81],"synthesizing":[6],"recursive":[7],"functions":[8],"that":[9,19,40,73],"process":[10],"algebraic":[11],"datatypes.":[12],"It":[13],"is":[14],"founded":[15],"on":[16,44],"proof-theoretic":[17],"techniques":[18],"exploit":[20],"both":[21],"type":[22],"information":[23],"and":[24,65],"input\u2013output":[25],"examples":[26],"to":[27,59],"prune":[28],"the":[29,45,52,74,79,93],"search":[30],"space.":[31],"The":[32],"uses":[34],"refinement":[35],"trees,":[36],"a":[37,56],"data":[38],"structure":[39],"succinctly":[41],"represents":[42],"constraints":[43],"shape":[46],"of":[47,86,92],"generated":[48,94],"code.":[49],"We":[50],"evaluate":[51],"by":[54],"using":[55],"prototype":[57],"implementation":[58],"synthesize":[60],"more":[61],"than":[62],"40":[63],"benchmarks":[64],"several":[66],"non-trivial":[67],"larger":[68],"examples.":[69],"Our":[70],"results":[71],"demonstrate":[72],"approach":[75],"meets":[76],"or":[77,89],"outperforms":[78],"state-of-the-art":[80],"this":[82],"domain,":[83],"in":[84],"terms":[85],"synthesis":[87],"time":[88],"attainable":[90],"size":[91],"programs.":[95]},"counts_by_year":[{"year":2026,"cited_by_count":6},{"year":2025,"cited_by_count":12},{"year":2024,"cited_by_count":10},{"year":2023,"cited_by_count":11},{"year":2022,"cited_by_count":12},{"year":2021,"cited_by_count":27},{"year":2020,"cited_by_count":20},{"year":2019,"cited_by_count":20},{"year":2018,"cited_by_count":22},{"year":2017,"cited_by_count":20},{"year":2016,"cited_by_count":18},{"year":2015,"cited_by_count":9}],"updated_date":"2026-11-03T10:50:19.383937","created_date":"2016-06-24T00:00:00"}
