Reinforcement Learning and Data-Generation for Syntax-Guided Synthesis
Not on the map. Why?
Abstract (arXiv)
Program synthesis is the task of automatically generating code based on a specification. In Syntax-Guided Synthesis (SyGuS) this specification is a combination of a syntactic template and a logical formula, and the result is guaranteed to satisfy both. We present a reinforcement-learning guided algorithm for SyGuS which uses Monte-Carlo Tree Search (MCTS) to search the space of candidate solutions. Our algorithm learns policy and value functions which, combined with the upper confidence bound for trees, allow it to balance exploration and exploitation. A common challenge in applying machine learning approaches to syntax-guided synthesis is the scarcity of training data. To address this, we present a method for automatically generating training data for SyGuS based on anti-unification of existing first-order satisfiability problems, which we use to train our MCTS policy. We implement and evaluate this setup and demonstrate that learned policy and value improve the synthesis performance over a baseline by over 26 percentage points in the training and testing sets. Our tool outperforms state-of-the-art tool cvc5 on the training set and performs comparably in terms of the total number of problems solved on the testing set (solving 23% of the benchmarks on which cvc5 fails). We make our data set publicly available, to enable further application of machine learning methods to the SyGuS problem.
Key facts. Cited by 3 papers in the map (data through 14 Oct 2026). Builds on 20 of its 45 references that are in the map. First posted on arXiv 13 Jul 2023.
Builds on
20 of 45 references.
References · 20
- 2016XGBoost: A Scalable Tree Boosting Systemcited by 5,166
- 2016DeepCoder: Learning to Write Programscited by 149
- 2019Write, Execute, Assess: Program Synthesis with a REPLcited by 93
- 2018Leveraging Grammar and Reinforcement Learning for Neural Program Synthesiscited by 84
- 2016DeepMath - Deep Sequence Models for Premise Selectioncited by 81
- 2018Reinforcement Learning of Theorem Provingcited by 69
- 2020BUSTLE: Bottom-Up Program Synthesis Through Learning-Guided Explorationcited by 30
- 2017ENIGMA: Efficient Learning-based Inference Guiding Machinecited by 26
- 2017Program Synthesis using Conflict-Driven Learningcited by 26
- 2019ENIGMA-NG: Efficient Neural and Gradient-Boosted Inference Guidance for Ecited by 24
- 2015A Theory of Formal Synthesis via Inductive Learningcited by 17
- 2022What can we Learn Even From the Weakest? Learning Sketches for Programmatic Strategiescited by 11
8 more
- 2023Anti-unification and Generalization: A Surveycited by 7
- 2022Learning to Find Proofs and Theorems by Learning to Refine Search Strategies: The Case of Loop Invariant Synthesiscited by 5
- 2016Using SyGuS to Synthesize Reactive Motion Planscited by 3
- 2019Anti-unification in Constraint Logic Programmingcited by 2
- 2020Grammar Filtering For Syntax-Guided Synthesiscited by 2
- 2021Learning compositional programs with arguments and samplingcited by 2
- 2017Predicting SMT Solver Performance for Software Verificationcited by 1
- 2017SyGuS Techniques in the Core of an SMT Solvercited by 1
Built on by
Citing papers per year: 2024: 1; 2025: 2.
3 papers.