paper-with-me

홈 › Papers

Reinforcement Learning and Data-Generation for Syntax-Guided Synthesis

2023-07-13 · Julian Parsert, Elizabeth Polgreen

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.

📄 PDF Abstract BibTeX arXiv:2307.09564

Code (0)

등록된 구현이 없습니다.

Tasks

Program Synthesisreinforcement-learningReinforcement Learning

Methods 이 논문이 사용한 방법론

Monte-Carlo Tree Search Monte-Carlo Tree Search is a planning algorithm that accumulates value estimates obtained from Monte Carlo simulations in order to successively direct simulations towards more…

Similar Papers 제목 키워드 기반

Learning a Meta-Solver for Syntax-Guided Program Synthesis

2019-05-01 · ICLR 2019 5 · Xujie Si, Yuan Yang, Hanjun Dai, Mayur Naik 외

We study a general formulation of program synthesis called syntax-guided synthesis(SyGuS) that concerns synthesizing a program that follows a given grammar and satisfies a given logical specification. Both the logical sp…

Graph Neural NetworkMeta-LearningProgram SynthesisReinforcement Learning

Probably Approximately Correct Explanations of Machine Learning Models via Syntax-Guided Synthesis

2020-09-18 · Daniel Neider, Bishwamittra Ghosh

We propose a novel approach to understanding the decision making of complex machine learning models (e.g., deep neural networks) using a combination of probably approximately correct learning (PAC) and a logic inference …

BIG-bench Machine LearningDecision Making

SyGuS-Comp 2017: Results and Analysis

2017-11-29 · Rajeev Alur, Dana Fisman, Rishabh Singh, Armando Solar-Lezama

Syntax-Guided Synthesis (SyGuS) is the computational problem of finding an implementation f that meets both a semantic constraint given by a logical formula phi in a background theory T, and a syntactic constraint given …

Oasis: ILP-Guided Synthesis of Loop Invariants

2020-10-13 · NeurIPS Workshop CAP 2020 12 · Sahil Bhatia, Saswat Padhi, Nagarajan Natarajan, Rahul Sharma 외

Automated synthesis of inductive invariants is an important problem in software verification. We propose a novel technique that is able to solve complex loop invariant synthesis problems involving large number of variabl…

SyGuS-Comp 2016: Results and Analysis

2016-11-23 · Rajeev Alur, Dana Fisman, Rishabh Singh, Armando Solar-Lezama

Syntax-Guided Synthesis (SyGuS) is the computational problem of finding an implementation f that meets both a semantic constraint given by a logical formula $\varphi$ in a background theory T, and a syntactic constraint …