Inductive Program Synthesis via Iterative Forward-Backward Abstract Interpretation
Yongho Yoon, Woosuk Lee, Kwangkeun Yi
Abstract
A key challenge in example-based program synthesis is the gigantic search space of programs. To address this challenge, various work proposed to use abstract interpretation to prune the search space. However, most of existing approaches have focused only on forward abstract interpretation, and thus cannot fully exploit the power of abstract interpretation. In this paper, we propose a novel approach to inductive program synthesis via iterative forward-backward abstract interpretation. The forward abstract interpretation computes possible outputs of a program given inputs, while the backward abstract interpretation computes possible inputs of a program given outputs. By iteratively performing the two abstract interpretations in an alternating fashion, we can effectively determine if any completion of each partial program as a candidate can satisfy the input-output examples. We apply our approach to a standard formulation, syntax-guided synthesis (SyGuS), thereby supporting a wide range of inductive synthesis tasks. We have implemented our approach and evaluated it on a set of benchmarks from the prior work. The experimental results show that our approach significantly outperforms the state-of-the-art approaches thanks to the sophisticated abstract interpretation techniques.
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.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 18968f13-7869-4ff4-8f40-321b258e1752Cited by top-tier papers14
- Simplifying Mixed Boolean-Arithmetic Obfuscation by Program Synthesis and Term RewritingJaehyung Lee, Woosuk LeeCCS 2023 · 8 citations
- Evaluating Directed Fuzzers: Are We Heading in the Right Direction?Tae Eun Kim, Jaeseung Choi, Seongjae Im, Kihong Heo et al.FSE 2024 · 7 citations
- A Concurrent Approach to String Transformation SynthesisYuantian Ding, Xiaokang QiuPLDI 2025 · 5 citations
- The First Prompt Counts the Most! An Evaluation of Large Language Models on Iterative Example-Based Code GenerationYingjie Fu, Bozhou Li, Linyi Li, Wentao Zhang et al.ISSTA 2025 · 3 citations
- Active Learning for Neurosymbolic Program SynthesisCeleste Barnaby, Qiaochu Chen, Ramya Ramalingam, Osbert Bastani et al.OOPSLA 2025 · 2 citations
Builds on9
- Syntia: Synthesizing the Semantics of Obfuscated CodeTim Blazytko, Moritz Contag, Cornelius Aschermann, Thorsten HolzUSENIX Security 2017 · 99 citations
- Program synthesis by type-guided abstraction refinementZheng Guo, Michael James, David Justo, Jiaxiao Zhou et al.POPL 2020 · 45 citations
- Combining the top-down propagation and bottom-up enumeration for inductive program synthesisWoosuk LeePOPL 2021 · 34 citations
- Just-in-time learning for bottom-up enumerative synthesisShraddha Barke, Hila Peleg, Nadia PolikarpovaOOPSLA 2020 · 33 citations
- Optimizing homomorphic evaluation circuits by program synthesis and term rewritingDongKwon Lee, Woosuk Lee, Hakjoo Oh, Kwangkeun YiPLDI 2020 · 30 citations
Related papers
- Inductive Program Synthesis by Meta-Analysis-Guided Hole FillingDoyoon Lee, Woosuk Lee, Kwangkeun YiPOPL 2026
- Automating Pruning in Top-Down Enumeration for Program Synthesis Problems with Monotonic SemanticsKeith J. C. Johnson, Rahul Krishnan, Thomas W. Reps, Loris D'AntoniOOPSLA 2024 · 2 citations
- Representing Partial Programs with Blended Abstract SemanticsMaxwell I. Nye, Yewen Pu, Matthew Bowers, Jacob Andreas et al.ICLR 2021 · 23 citations
- Trace-Guided Inductive Synthesis of Recursive Functional ProgramsYongwei Yuan, Arjun Radhakrishna, Roopsha SamantaPLDI 2023 · 17 citations
- BUSTLE: Bottom-Up Program Synthesis Through Learning-Guided ExplorationAugustus Odena, Kensen Shi, David Bieber, Rishabh Singh et al.ICLR 2021 · 60 citations
