{"id":"https://openalex.org/W4390604805","doi":"https://doi.org/10.1145/3632894","title":"Efficient Bottom-Up Synthesis for Programs with Local Variables","display_name":"Efficient Bottom-Up Synthesis for Programs with Local Variables","publication_year":2024,"publication_date":"2024-01-02","ids":{"openalex":"https://openalex.org/W4390604805","doi":"https://doi.org/10.1145/3632894"},"language":"en","primary_location":{"id":"doi:10.1145/3632894","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3632894","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3632894","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3632894","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5092391009","display_name":"Xiang Li","orcid":"https://orcid.org/0009-0005-6860-039X"},"institutions":[{"id":"https://openalex.org/I27837315","display_name":"University of Michigan","ror":"https://ror.org/00jmfr291","country_code":"US","type":"education","lineage":["https://openalex.org/I27837315"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Xiang Li","raw_affiliation_strings":["University of Michigan, Ann Arbor, USA"],"raw_orcid":"https://orcid.org/0009-0005-6860-039X","affiliations":[{"raw_affiliation_string":"University of Michigan, Ann Arbor, USA","institution_ids":["https://openalex.org/I27837315"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5037206894","display_name":"Xiangyu Zhou","orcid":"https://orcid.org/0009-0003-6404-1098"},"institutions":[{"id":"https://openalex.org/I27837315","display_name":"University of Michigan","ror":"https://ror.org/00jmfr291","country_code":"US","type":"education","lineage":["https://openalex.org/I27837315"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Xiangyu Zhou","raw_affiliation_strings":["University of Michigan, Ann Arbor, USA"],"raw_orcid":"https://orcid.org/0009-0003-6404-1098","affiliations":[{"raw_affiliation_string":"University of Michigan, Ann Arbor, USA","institution_ids":["https://openalex.org/I27837315"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5070066746","display_name":"Rui Dong","orcid":"https://orcid.org/0000-0002-2757-2768"},"institutions":[{"id":"https://openalex.org/I27837315","display_name":"University of Michigan","ror":"https://ror.org/00jmfr291","country_code":"US","type":"education","lineage":["https://openalex.org/I27837315"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Rui Dong","raw_affiliation_strings":["University of Michigan, Ann Arbor, USA"],"raw_orcid":"https://orcid.org/0000-0002-2757-2768","affiliations":[{"raw_affiliation_string":"University of Michigan, Ann Arbor, USA","institution_ids":["https://openalex.org/I27837315"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101953742","display_name":"Yihong Zhang","orcid":"https://orcid.org/0009-0006-5928-4396"},"institutions":[{"id":"https://openalex.org/I201448701","display_name":"University of Washington","ror":"https://ror.org/00cvxb145","country_code":"US","type":"education","lineage":["https://openalex.org/I201448701"]},{"id":"https://openalex.org/I58610484","display_name":"Seattle University","ror":"https://ror.org/02jqc0m91","country_code":"US","type":"education","lineage":["https://openalex.org/I58610484"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Yihong Zhang","raw_affiliation_strings":["University of Washington, Seattle, USA"],"raw_orcid":"https://orcid.org/0009-0006-5928-4396","affiliations":[{"raw_affiliation_string":"University of Washington, Seattle, USA","institution_ids":["https://openalex.org/I201448701","https://openalex.org/I58610484"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5100352782","display_name":"Xinyu Wang","orcid":"https://orcid.org/0000-0002-1836-0202"},"institutions":[{"id":"https://openalex.org/I27837315","display_name":"University of Michigan","ror":"https://ror.org/00jmfr291","country_code":"US","type":"education","lineage":["https://openalex.org/I27837315"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Xinyu Wang","raw_affiliation_strings":["University of Michigan, Ann Arbor, USA"],"raw_orcid":"https://orcid.org/0000-0002-1836-0202","affiliations":[{"raw_affiliation_string":"University of Michigan, Ann Arbor, USA","institution_ids":["https://openalex.org/I27837315"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":3.9246,"has_fulltext":true,"cited_by_count":6,"citation_normalized_percentile":{"value":0.93770128,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":98},"biblio":{"volume":"8","issue":"POPL","first_page":"1540","last_page":"1568"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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.9991999864578247,"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.9986000061035156,"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/computer-science","display_name":"Computer science","score":0.7335222959518433},{"id":"https://openalex.org/keywords/observational-equivalence","display_name":"Observational equivalence","score":0.5603734254837036},{"id":"https://openalex.org/keywords/program-synthesis","display_name":"Program synthesis","score":0.5082456469535828},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4876162111759186},{"id":"https://openalex.org/keywords/automation","display_name":"Automation","score":0.4341862201690674},{"id":"https://openalex.org/keywords/state-variable","display_name":"State variable","score":0.43383997678756714},{"id":"https://openalex.org/keywords/interpretation","display_name":"Interpretation (philosophy)","score":0.42247045040130615},{"id":"https://openalex.org/keywords/process","display_name":"Process (computing)","score":0.41953834891319275},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3759691119194031},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.32945913076400757}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7335222959518433},{"id":"https://openalex.org/C2777721189","wikidata":"https://www.wikidata.org/wiki/Q17121921","display_name":"Observational equivalence","level":2,"score":0.5603734254837036},{"id":"https://openalex.org/C2776937632","wikidata":"https://www.wikidata.org/wiki/Q4117718","display_name":"Program synthesis","level":2,"score":0.5082456469535828},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4876162111759186},{"id":"https://openalex.org/C115901376","wikidata":"https://www.wikidata.org/wiki/Q184199","display_name":"Automation","level":2,"score":0.4341862201690674},{"id":"https://openalex.org/C129537906","wikidata":"https://www.wikidata.org/wiki/Q7603913","display_name":"State variable","level":2,"score":0.43383997678756714},{"id":"https://openalex.org/C527412718","wikidata":"https://www.wikidata.org/wiki/Q855395","display_name":"Interpretation (philosophy)","level":2,"score":0.42247045040130615},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.41953834891319275},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3759691119194031},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.32945913076400757},{"id":"https://openalex.org/C97355855","wikidata":"https://www.wikidata.org/wiki/Q11473","display_name":"Thermodynamics","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/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3632894","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3632894","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3632894","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3632894","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3632894","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3632894","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G6181444814","display_name":"Collaborative Research: FMitF: Track I: Usable Synthesis-based End-User Programming with Rich Interaction Modalities","funder_award_id":"2123654","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G8682995145","display_name":"CAREER: Interactive Program Synthesis for Web Automation","funder_award_id":"2236233","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"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4390604805.pdf","grobid_xml":"https://content.openalex.org/works/W4390604805.grobid-xml"},"referenced_works_count":39,"referenced_works":["https://openalex.org/W1589421353","https://openalex.org/W1792831685","https://openalex.org/W1905591175","https://openalex.org/W1984315811","https://openalex.org/W2057156093","https://openalex.org/W2093535699","https://openalex.org/W2102480769","https://openalex.org/W2107387337","https://openalex.org/W2252200336","https://openalex.org/W2330908417","https://openalex.org/W2409856616","https://openalex.org/W2537005436","https://openalex.org/W2731197199","https://openalex.org/W2765742677","https://openalex.org/W2768517636","https://openalex.org/W2890639568","https://openalex.org/W2896298055","https://openalex.org/W2963049621","https://openalex.org/W3033889389","https://openalex.org/W3088135204","https://openalex.org/W3099525000","https://openalex.org/W3105239039","https://openalex.org/W3107416527","https://openalex.org/W3117137355","https://openalex.org/W3117975267","https://openalex.org/W3171035942","https://openalex.org/W3173957747","https://openalex.org/W3177832995","https://openalex.org/W3194348508","https://openalex.org/W3209452312","https://openalex.org/W4223562903","https://openalex.org/W4237412827","https://openalex.org/W4242239856","https://openalex.org/W4242912959","https://openalex.org/W4293812875","https://openalex.org/W4307475500","https://openalex.org/W4385825247","https://openalex.org/W4387801441","https://openalex.org/W6967495192"],"related_works":["https://openalex.org/W3183204001","https://openalex.org/W4327743144","https://openalex.org/W4388567440","https://openalex.org/W3128161305","https://openalex.org/W4386782890","https://openalex.org/W4313320911","https://openalex.org/W2102015005","https://openalex.org/W2900360912","https://openalex.org/W4388514484","https://openalex.org/W4390604805"],"abstract_inverted_index":{"We":[0],"propose":[1],"a":[2,86,94,99,141],"new":[3],"synthesis":[4,21,53],"algorithm":[5,56],"that":[6],"can":[7,57,139],"efficiently":[8,149],"search":[9,40],"programs":[10,28,44,62,92,120],"with":[11,29,63,121],"local":[12,31,64,108,122],"variables":[13,32],"(e.g.,":[14,45],"those":[15],"introduced":[16],"by":[17],"lambdas).":[18],"Prior":[19],"bottom-up":[20],"algorithms":[22],"are":[23,126],"not":[24],"able":[25],"to":[26,74,88,101,113],"evaluate":[27,114],"free":[30],",":[33,72,138],"and":[34,115,155],"therefore":[35],"cannot":[36],"effectively":[37],"reduce":[38,58,116],"the":[39,59,77,117,129],"space":[41,60,118],"of":[42,61,119,131,145],"such":[43],"using":[46],"standard":[47],"observational":[48],"equivalence":[49],"reduction":[50],"techniques),":[51],"making":[52],"slow.":[54],"Our":[55,124],"variables.":[65,123],"The":[66,134],"key":[67],"idea,":[68],"dubbed":[69],"lifted":[70],"interpretation":[71,79,97],"is":[73],"lift":[75],"up":[76],"program":[78,84],"process,":[80],"from":[81,93],"evaluating":[82,90],"one":[83],"at":[85],"time":[87],"simultaneously":[89],"all":[91,104],"grammar.":[95],"Lifted":[96],"provides":[98],"mechanism":[100],"systematically":[102],"enumerate":[103],"binding":[105],"contexts":[106],"for":[107],"variables,":[109],"thereby":[110],"enabling":[111],"us":[112],"ideas":[125],"instantiated":[127],"in":[128],"domain":[130],"web":[132],"automation.":[133],"resulting":[135],"tool,":[136],"Arborist":[137],"automate":[140],"significantly":[142],"broader":[143],"range":[144],"challenging":[146],"tasks":[147],"more":[148],"than":[150],"state-of-the-art":[151],"techniques":[152],"including":[153],"WebRobot":[154],"Helena.":[156]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":1}],"updated_date":"2026-08-06T08:24:18.245995","created_date":"2025-10-10T00:00:00"}
