Program Synthesis using Abstraction Refinement
Not on the map. Why?
Abstract (arXiv)
We present a new approach to example-guided program synthesis based on counterexample-guided abstraction refinement. Our method uses the abstract semantics of the underlying DSL to find a program P whose abstract behavior satisfies the examples. However, since program P may be spurious with respect to the concrete semantics, our approach iteratively refines the abstraction until we either find a program that satisfies the examples or prove that no such DSL program exists. Because many programs have the same input-output behavior in terms of their abstract semantics, this synthesis methodology significantly reduces the search space compared to existing techniques that use purely concrete semantics. While synthesis using abstraction refinement (SYNGAR) could be implemented in different settings, we propose a refinement-based synthesis algorithm that uses abstract finite tree automata (AFTA). Our technique uses a coarse initial program abstraction to construct an initial AFTA, which is iteratively refined by constructing a proof of incorrectness of any spurious program. In addition to ruling out the spurious program accepted by the previous AFTA, proofs of incorrectness are also useful for ruling out many other spurious programs. We implement these ideas in a framework called tool. We have used the BLAZE framework to build synthesizers for string and matrix transformations, and we compare BLAZE with existing techniques. Our results for the string domain show that BLAZE compares favorably with FlashFill, a domain-specific synthesizer that is now deployed in Microsoft PowerShell. In the context of matrix manipulations, we compare BLAZE against Prose, a state-of-the-art general-purpose VSA-based synthesizer, and show that BLAZE results in a 90x speed-up over Prose.
Key facts. Cited by 12 papers in the map (data through 7 Oct 2026). First posted on arXiv 21 Oct 2017.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 4; 2022: 2; 2023: 3; 2024: 1; 2025: 1; 2026: 1.
12 papers.
- 2023Magicoder: Empowering Code Generation with OSS-Instructcited by 251
- 2024API-guided Dataset Synthesis to Finetune Large Code Modelscited by 11
- 2021Unsupervised Learning of Neurosymbolic Encoderscited by 8
- 2023Program Synthesis with Best-First Bottom-Up Searchcited by 7
- 2022Neural Architecture Search using Property Guided Synthesiscited by 4
- 2025CodeEvo: Interaction-Driven Synthesis of Code-centric Data through Hybrid and Iterative Feedbackcited by 4
- 2023Efficient Bottom-Up Synthesis for Programs with Local Variablescited by 3
- 2021Inductive Program Synthesis over Noisy Datasets using Abstraction Refinement Based Optimizationcited by 1
- 2021Refinement Type Directed Search for Meta-Interpretive-Learning of Higher-Order Logic Programscited by 0
- 2021Program Synthesis Over Noisy Data with Guaranteescited by 0
- 2022Abstract Interpretation for Generalized Heuristic Search in Model-Based Planningcited by 0
- 2026Towards Certificate-Driven Software Porting: A Self-Improving Agentic Harness for Scientific Program Optimizationcited by 0
- 2026Towards Certificate-Driven Software Porting: A Self-Improving Agentic Harness for Scientific Program Optimization28 Sep 2026
- 2025CodeEvo: Interaction-Driven Synthesis of Code-centric Data through Hybrid and Iterative Feedback25 Jul 2025
- 2024API-guided Dataset Synthesis to Finetune Large Code Models15 Aug 2024
- 2023Magicoder: Empowering Code Generation with OSS-Instruct4 Dec 2023
- 2023Efficient Bottom-Up Synthesis for Programs with Local Variables7 Nov 2023
- 2023Program Synthesis with Best-First Bottom-Up Search6 Oct 2023
- 2022Abstract Interpretation for Generalized Heuristic Search in Model-Based Planning5 Aug 2022
- 2022Neural Architecture Search using Property Guided Synthesis8 May 2022
- 2021Unsupervised Learning of Neurosymbolic Encoders28 Jul 2021
- 2021Inductive Program Synthesis over Noisy Datasets using Abstraction Refinement Based Optimization27 Apr 2021
- 2021Program Synthesis Over Noisy Data with Guarantees8 Mar 2021
- 2021Refinement Type Directed Search for Meta-Interpretive-Learning of Higher-Order Logic Programs18 Feb 2021