Synthesize, Execute and Debug: Learning to Repair for Neural Program Synthesis
Kavi Gupta, Peter Ebert Christensen, Xinyun Chen, Dawn Song
Abstract
The use of deep learning techniques has achieved significant progress for program synthesis from input-output examples. However, when the program semantics become more complex, it still remains a challenge to synthesize programs that are consistent with the specification. In this work, we propose SED, a neural program generation framework that incorporates synthesis, execution, and debugging stages. Instead of purely relying on the neural program synthesizer to generate the final program, SED first produces initial programs using the neural program synthesizer component, then utilizes a neural program debugger to iteratively repair the generated programs. The integration of the debugger component enables SED to modify the programs based on the execution results and specification, which resembles the coding process of human programmers. On Karel, a challenging input-output program synthesis benchmark, SED reduces the error rate of the neural program synthesizer itself by a considerable margin, and outperforms the standard beam search for decoding.
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 8a5d00ad-dfb0-4c28-95af-09ded80f7b53Cited by top-tier papers21
- Teaching Large Language Models to Self-DebugXinyun Chen, Maxwell Lin, Nathanael Schärli, Denny ZhouICLR 2024 · 1,085 citations
- CURE: Code-Aware Neural Machine Translation for Automatic Program RepairNan Jiang, Thibaud Lutellier, Lin TanICSE 2021 · 267 citations
- Large Language Models as Analogical ReasonersMichihiro Yasunaga, Xinyun Chen, Yujia Li, Panupong Pasupat et al.ICLR 2024 · 155 citations
- Case-based Reasoning for Natural Language Queries over Knowledge BasesRajarshi Das, Manzil Zaheer, Dung Thai, Ameya Godbole et al.EMNLP 2021 · 111 citations
- Tensor Program Optimization with Probabilistic ProgramsJunru Shao, Xiyou Zhou, Siyuan Feng, Bohan Hou et al.NeurIPS 2022 · 85 citations
Builds on2
Related papers
- Neural Program Synthesis with QueryDi Huang, Rui Zhang, Xing Hu, Xishan Zhang et al.ICLR 2022 · 2 citations
- Representing Partial Programs with Blended Abstract SemanticsMaxwell I. Nye, Yewen Pu, Matthew Bowers, Jacob Andreas et al.ICLR 2021 · 23 citations
- Program Synthesis Using Deduction-Guided Reinforcement LearningYanju Chen, Chenglong Wang, Osbert Bastani, Isil Dillig et al.CAV 2020 · 30 citations
- Learning to Combine Per-Example Solutions for Neural Program SynthesisDisha Shrivastava, Hugo Larochelle, Daniel TarlowNeurIPS 2021 · 13 citations
- Enhancing Robot Program Synthesis Through Environmental ContextTianyi Chen, Qidi Wang, Zhen Dong, Liwei Shen et al.NeurIPS 2023 · 5 citations
