Leveraging Grammar and Reinforcement Learning for Neural Program Synthesis
Not on the map. Why?
Abstract (arXiv)
Program synthesis is the task of automatically generating a program consistent with a specification. Recent years have seen proposal of a number of neural approaches for program synthesis, many of which adopt a sequence generation paradigm similar to neural machine translation, in which sequence-to-sequence models are trained to maximize the likelihood of known reference programs. While achieving impressive results, this strategy has two key limitations. First, it ignores Program Aliasing: the fact that many different programs may satisfy a given specification (especially with incomplete specifications such as a few input-output examples). By maximizing the likelihood of only a single reference program, it penalizes many semantically correct programs, which can adversely affect the synthesizer performance. Second, this strategy overlooks the fact that programs have a strict syntax that can be efficiently checked. To address the first limitation, we perform reinforcement learning on top of a supervised model with an objective that explicitly maximizes the likelihood of generating semantically correct programs. For addressing the second limitation, we introduce a training procedure that directly maximizes the probability of generating syntactically correct programs that fulfill the specification. We show that our contributions lead to improved accuracy of the models, especially in cases where the training data is limited.
Key facts. Cited by 83 papers in the map (data through 7 Oct 2026). First posted on arXiv 11 May 2018.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2019: 2; 2020: 0; 2021: 17; 2022: 15; 2023: 24; 2024: 16; 2025: 3; 2026: 6.
83 papers.
Sort:
By area:
- 2023Teaching Large Language Models to Self-Debugcited by 963
- 2022CodeRL: Mastering Code Generation through Pretrained Models and Deep Reinforcement Learningcited by 342
- 2023InterCode: Standardizing and Benchmarking Interactive Coding with Execution Feedbackcited by 229
- 2023Planning with Large Language Models for Code Generationcited by 179
- 2023Learning Performance-Improving Code Editscited by 103
- 2021Neural Production Systems: Learning Rule-Governed Visual Dynamicscited by 75
- 2021Learning to Synthesize Programs as Interpretable and Generalizable Policiescited by 59
- 2021From LSAT: The Progress and Challenges of Complex Reasoningcited by 43
- 2021SpreadsheetCoder: Formula Prediction from Semi-structured Contextcited by 41
- 2022Learning Math Reasoning from Self-Sampled Correct and Partially-Correct Solutionscited by 38
- 2021Latent Execution for Neural Program Synthesiscited by 35
- 2024PolyNet: Learning Diverse Solution Strategies for Neural Combinatorial Optimizationcited by 35
38 more
- 2019Few-Shot Bayesian Imitation Learning with Logical Program Policiescited by 30
- 2026Maximum Likelihood Reinforcement Learningcited by 29
- 2023Emergent Representations of Program Semantics in Language Models Trained on Programscited by 28
- 2022How to Reuse and Compose Knowledge for a Lifetime of Tasks: A Survey on Continual Learning and Functional Compositioncited by 27
- 2023Outline, Then Details: Syntactically Guided Coarse-To-Fine Code Generationcited by 27
- 2024CodeIt: Self-Improving Language Models with Prioritized Hindsight Replaycited by 23
- 2023Hierarchical Programmatic Reinforcement Learning via Learning to Compose Programscited by 20
- 2021ProTo: Program-Guided Transformer for Program-Guided Taskscited by 19
- 2023Proximal Curriculum for Reinforcement Learning Agentscited by 19
- 2025Hybrid Reinforcement: When Reward Is Sparse, It's Better to Be Densecited by 19
- 2022CrossBeam: Learning to Search in Bottom-Up Program Synthesiscited by 18
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesiscited by 17
- 2022GALOIS: Boosting Deep Reinforcement Learning via Generalizable Logic Synthesiscited by 16
- 2023Neural Task Synthesis for Visual Programmingcited by 13
- 2024Synthesizing Programmatic Reinforcement Learning Policies with Large Language Model Guided Searchcited by 13
- 2023Adaptive Scaffolding in Block-Based Programming via Synthesizing New Tasks as Pop Quizzescited by 10
- 2024Guiding Enumerative Program Synthesis with Large Language Modelscited by 9
- 2021DeepQAMVS: Query-Aware Hierarchical Pointer Networks for Multi-Video Summarizationcited by 8
- 2021Learning to Combine Per-Example Solutions for Neural Program Synthesiscited by 8
- 2021Interpretable Model-based Hierarchical Reinforcement Learning using Inductive Logic Programmingcited by 8
- 2022Synthesizing explainable counterfactual policies for algorithmic recourse with program synthesiscited by 8
- 2022From {Solution Synthesis} to {Student Attempt Synthesis} for Block-Based Visual Programming Taskscited by 8
- 2021Program Synthesis Guided Reinforcement Learning for Partially Observed Environmentscited by 7
- 2021Transcribing Natural Languages for The Deaf via Neural Editing Programscited by 7
- 2023Hierarchical Neural Program Synthesiscited by 7
- 2023Program Synthesis with Best-First Bottom-Up Searchcited by 7
- 2024Grounding Data Science Code Generation with Input-Output Specificationscited by 7
- 2024Hints-In-Browser: Benchmarking Language Models for Programming Feedback Generationcited by 7
- 2021Scaling Neural Program Synthesis with Distribution-based Searchcited by 6
- 2022Compositional Generalization and Decomposition in Neural Program Synthesiscited by 6
- 2022E-MAPP: Efficient Multi-Agent Reinforcement Learning with Parallel Program Guidancecited by 6
- 2024Procedural Synthesis of Synthesizable Moleculescited by 6
- 2019Hierarchical Variational Imitation Learning of Control Programscited by 5
- 2022Learning to Find Proofs and Theorems by Learning to Refine Search Strategies: The Case of Loop Invariant Synthesiscited by 5
- 2022Learning to Improve Code Efficiencycited by 4
- 2024Learning big logical rules by joining small rulescited by 4
- 2024Towards Generalizable Agents in Text-Based Educational Environments: A Study of Integrating RL with LLMscited by 4
- 2024Program Synthesis Benchmark for Visual Programming in XLogoOnline Environmentcited by 4
50 most cited of 83 All 83 (JSON)
- 2026GrammarRL: Effective Grammar-Constrained Decoding via Reinforcement Learning30 Sep 2026
- 2026Fixed-Set Robustness in Programming by Example: Example Corruption and Semantic Partition Recovery1 Jul 2026
- 2026Learning Hierarchical and Geometry-Aware Graph Representations for Text-to-CAD11 Apr 2026
- 2026PLLM: Pseudo-Labeling Large Language Models for CAD Program Synthesis13 Feb 2026
- 2026A Theoretical Analysis of Test-Driven Code Generation5 Feb 2026
- 2026Maximum Likelihood Reinforcement Learning2 Feb 2026
- 2025Hybrid Reinforcement: When Reward Is Sparse, It's Better to Be Dense8 Oct 2025
- 2025Bayesian Inverse Physics for Neuro-Symbolic Robot Learning10 Jun 2025
- 2025ExpertRAG: Efficient RAG with Mixture of Experts -- Optimizing Context Retrieval for Adaptive LLM Responses23 Mar 2025
- 2024GenX: Mastering Code and Test Generation with Execution Feedback18 Dec 2024
- 2024Enhancing LLM Agents for Code Generation with Possibility and Pass-rate Prioritized Experience Replay16 Oct 2024
- 2024Reclaiming the Source of Programmatic Policies: Programmatic versus Latent Spaces16 Oct 2024
38 more
- 2024Procedural Synthesis of Synthesizable Molecules24 Aug 2024
- 2024Program Synthesis Benchmark for Visual Programming in XLogoOnline Environment17 Jun 2024
- 2024Benchmarking Generative Models on Computational Thinking Tests in Elementary Visual Programming14 Jun 2024
- 2024Hints-In-Browser: Benchmarking Language Models for Programming Feedback Generation7 Jun 2024
- 2024Synthesizing Programmatic Reinforcement Learning Policies with Large Language Model Guided Search26 May 2024
- 2024Towards Generalizable Agents in Text-Based Educational Environments: A Study of Integrating RL with LLMs29 Apr 2024
- 2024Guiding Enumerative Program Synthesis with Large Language Models6 Mar 2024
- 2024PolyNet: Learning Diverse Solution Strategies for Neural Combinatorial Optimization21 Feb 2024
- 2024Grounding Data Science Code Generation with Input-Output Specifications12 Feb 2024
- 2024Guided Sketch-Based Program Induction by Search Gradients10 Feb 2024
- 2024CodeIt: Self-Improving Language Models with Prioritized Hindsight Replay7 Feb 2024
- 2024Continuous Parallel Relaxation for Finding Diverse Solutions in Combinatorial Optimization Problems3 Feb 2024
- 2024Learning big logical rules by joining small rules29 Jan 2024
- 2023Program Machine Policy: Addressing Long-Horizon Tasks by Integrating Program Synthesis and State Machines27 Nov 2023
- 2023Learning a Hierarchical Planner from Humans in Multiple Generations17 Oct 2023
- 2023Program Synthesis with Best-First Bottom-Up Search6 Oct 2023
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesis26 Jul 2023
- 2023Reinforcement Learning and Data-Generation for Syntax-Guided Synthesis13 Jul 2023
- 2023Image Transformation Sequence Retrieval with General Reinforcement Learning13 Jul 2023
- 2023InterCode: Standardizing and Benchmarking Interactive Coding with Execution Feedback26 Jun 2023
- 2023Learning Embeddings for Sequential Tasks Using Population of Agents5 Jun 2023
- 2023Synthesizing a Progression of Subtasks for Block-Based Visual Programming Tasks27 May 2023
- 2023Neural Task Synthesis for Visual Programming26 May 2023
- 2023Learning-Based Automatic Synthesis of Software Code and Configuration25 May 2023
- 2023Neural Machine Translation for Code Generation22 May 2023
- 2023Emergent Representations of Program Semantics in Language Models Trained on Programs18 May 2023
- 2023Outline, Then Details: Syntactically Guided Coarse-To-Fine Code Generation28 Apr 2023
- 2023Proximal Curriculum for Reinforcement Learning Agents25 Apr 2023
- 2023Usenix'23 Extended Version: Smart Learning to Find Dumb Contracts21 Apr 2023
- 2023Teaching Large Language Models to Self-Debug11 Apr 2023
- 2023Adaptive Scaffolding in Block-Based Programming via Synthesizing New Tasks as Pop Quizzes28 Mar 2023
- 2023Improved Tree Search for Automatic Program Synthesis13 Mar 2023
- 2023Hierarchical Neural Program Synthesis9 Mar 2023
- 2023Planning with Large Language Models for Code Generation9 Mar 2023
- 2023Learning Performance-Improving Code Edits15 Feb 2023
- 2023Program Generation from Diverse Video Demonstrations1 Feb 2023
- 2023Hierarchical Programmatic Reinforcement Learning via Learning to Compose Programs30 Jan 2023
- 2022A Survey on Natural Language Processing for Programming12 Dec 2022
50 newest of 83 All 83 (JSON)
- 2023Teaching Large Language Models to Self-Debugcited by 963
- 2022Learning Math Reasoning from Self-Sampled Correct and Partially-Correct Solutionscited by 38
- 2024CodeIt: Self-Improving Language Models with Prioritized Hindsight Replaycited by 23
- 2025Hybrid Reinforcement: When Reward Is Sparse, It's Better to Be Densecited by 19
- 2025Hybrid Reinforcement: When Reward Is Sparse, It's Better to Be Dense8 Oct 2025
- 2024CodeIt: Self-Improving Language Models with Prioritized Hindsight Replay7 Feb 2024
- 2023Teaching Large Language Models to Self-Debug11 Apr 2023
- 2022Learning Math Reasoning from Self-Sampled Correct and Partially-Correct Solutions28 May 2022
- 2022CodeRL: Mastering Code Generation through Pretrained Models and Deep Reinforcement Learningcited by 342
- 2023InterCode: Standardizing and Benchmarking Interactive Coding with Execution Feedbackcited by 229
- 2023Planning with Large Language Models for Code Generationcited by 179
- 2023Learning Performance-Improving Code Editscited by 103
- 2021Neural Production Systems: Learning Rule-Governed Visual Dynamicscited by 75
- 2021Learning to Synthesize Programs as Interpretable and Generalizable Policiescited by 59
- 2021From LSAT: The Progress and Challenges of Complex Reasoningcited by 43
- 2021SpreadsheetCoder: Formula Prediction from Semi-structured Contextcited by 41
- 2021Latent Execution for Neural Program Synthesiscited by 35
- 2024PolyNet: Learning Diverse Solution Strategies for Neural Combinatorial Optimizationcited by 35
- 2026Maximum Likelihood Reinforcement Learningcited by 29
- 2022How to Reuse and Compose Knowledge for a Lifetime of Tasks: A Survey on Continual Learning and Functional Compositioncited by 27
12 most cited of 72 All 72 (JSON)
- 2026GrammarRL: Effective Grammar-Constrained Decoding via Reinforcement Learning30 Sep 2026
- 2026Fixed-Set Robustness in Programming by Example: Example Corruption and Semantic Partition Recovery1 Jul 2026
- 2026Learning Hierarchical and Geometry-Aware Graph Representations for Text-to-CAD11 Apr 2026
- 2026PLLM: Pseudo-Labeling Large Language Models for CAD Program Synthesis13 Feb 2026
- 2026A Theoretical Analysis of Test-Driven Code Generation5 Feb 2026
- 2026Maximum Likelihood Reinforcement Learning2 Feb 2026
- 2025Bayesian Inverse Physics for Neuro-Symbolic Robot Learning10 Jun 2025
- 2024GenX: Mastering Code and Test Generation with Execution Feedback18 Dec 2024
- 2024Reclaiming the Source of Programmatic Policies: Programmatic versus Latent Spaces16 Oct 2024
- 2024Procedural Synthesis of Synthesizable Molecules24 Aug 2024
- 2024Program Synthesis Benchmark for Visual Programming in XLogoOnline Environment17 Jun 2024
- 2024Benchmarking Generative Models on Computational Thinking Tests in Elementary Visual Programming14 Jun 2024
12 newest of 72 All 72 (JSON)