Automating Pruning in Top-Down Enumeration for Program Synthesis Problems with Monotonic Semantics
Keith J. C. Johnson, Rahul Krishnan, Thomas W. Reps, Loris D'Antoni
Abstract
In top-down enumeration for program synthesis, abstraction-based pruning uses an abstract domain to approximate the set of possible values that a partial program, when completed, can output on a given input. If the set does not contain the desired output, the partial program and all its possible completions can be pruned. In its general form, abstraction-based pruning requires manually designed, domain-specific abstract domains and semantics, and thus has only been used in domain-specific synthesizers. This paper provides sufficient conditions under which a form of abstraction-based pruning can be automated for arbitrary synthesis problems in the general-purpose Semantics-Guided Synthesis (SemGuS) framework without requiring manually-defined abstract domains. We show that if the semantics of the language for which we are synthesizing programs exhibits some monotonicity properties, one can obtain an abstract interval-based semantics for free from the concrete semantics of the programming language, and use such semantics to effectively prune the search space. We also identify a condition that ensures such abstract semantics can be used to compute a precise abstraction of the set of values that a program derivable from a given hole in a partial program can produce. These precise abstractions make abstraction-based pruning more effective. We implement our approach in a tool, M oito , which can tackle synthesis problems defined in the SemGuS framework. M oito can automate interval-based pruning without any a-priori knowledge of the problem domain, and solve synthesis problems that previously required domain-specific, abstraction-based synthesizers—e.g., synthesis of regular expressions, CSV file schema, and imperative programs from examples.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers4
- A Logic for the Imprecision of Abstract InterpretationsMarco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina UrbanPOPL 2026 · 2 citations
- ChopChop: A Programmable Framework for Semantically Constraining the Output of Language ModelsShaan Nagy, Timothy Zhou, Nadia Polikarpova, Loris D'AntoniPOPL 2026 · 1 citation
- Inductive Program Synthesis by Meta-Analysis-Guided Hole FillingDoyoon Lee, Woosuk Lee, Kwangkeun YiPOPL 2026
- Presynthesis: Towards Scaling Up Program Synthesis with Finer-Grained Abstract SemanticsRui Dong, Qingyue Wu, Danny Ding, Zheng Guo et al.PLDI 2026
Builds on6
- Combining the top-down propagation and bottom-up enumeration for inductive program synthesisWoosuk LeePOPL 2021 · 34 citations
- Semantics-guided synthesisJinwoo Kim, Qinheping Hu, Loris D'Antoni, Thomas W. RepsPOPL 2021 · 31 citations
- Synthesizing abstract transformersPankaj Kumar Kalita, Sujit Kumar Muduli, Loris D'Antoni, Thomas W. Reps et al.OOPSLA 2022 · 21 citations
- Inductive Program Synthesis via Iterative Forward-Backward Abstract InterpretationYongho Yoon, Woosuk Lee, Kwangkeun YiPLDI 2023 · 15 citations
- Absynthe: Abstract Interpretation-Guided SynthesisSankha Narayan Guria, Jeffrey S. Foster, David Van HornPLDI 2023 · 6 citations
Related papers
- Just-in-time learning for bottom-up enumerative synthesisShraddha Barke, Hila Peleg, Nadia PolikarpovaOOPSLA 2020 · 33 citations
- Optimal Program Synthesis via Abstract InterpretationStephen Mell, Steve Zdancewic, Osbert BastaniPOPL 2024 · 6 citations
- Inductive Program Synthesis Guided by Observational Program SimilarityJohn K. Feser, Isil Dillig, Armando Solar-LezamaOOPSLA 2023 · 6 citations
- Reinforcement Learning and Data-Generation for Syntax-Guided SynthesisJulian Parsert, Elizabeth PolgreenAAAI 2024 · 7 citations
- Accelerating Syntax-Guided Program Synthesis by Optimizing Domain-Specific LanguagesZhentao Ye, Ruyi Ji, Yingfei Xiong, Xin ZhangPOPL 2026 · 1 citation
