paper-with-me

Papers

Diffusion On Syntax Trees For Program Synthesis

2024-05-30 · Shreyas Kapur, Erik Jenner, Stuart Russell

Large language models generate code one token at a time. Their autoregressive generation process lacks the feedback of observing the program's output. Training LLMs to suggest edits directly can be challenging due to the scarcity of rich edit data. To address these problems, we propose neural diffusion models that operate on syntax trees of any context-free grammar. Similar to image diffusion models, our method also inverts ``noise'' applied to syntax trees. Rather than generating code sequentially, we iteratively edit it while preserving syntactic validity, which makes it easy to combine this neural model with search. We apply our approach to inverse graphics tasks, where our model learns to convert images into programs that produce those images. Combined with search, our model is able to write graphics programs, see the execution result, and debug them to meet the required specifications. We additionally show how our system can write graphics programs for hand-drawn sketches.

📄 PDF Abstract BibTeX arXiv:2405.20519

Code (0)

등록된 구현이 없습니다.

Tasks

Program Synthesis

Methods 이 논문이 사용한 방법론

Diffusion Diffusion models generate samples by gradually removing noise from a signal, and their training objective can be expressed as a reweighted variational lower-bound…

Similar Papers 제목 키워드 기반

Dynamic Neural Program Embeddings for Program Repair

2018-01-01 · ICLR 2018 1 · Ke Wang, Rishabh Singh, Zhendong Su

Neural program embeddings have shown much promise recently for a variety of program analysis tasks, including program synthesis, program repair, code completion, and fault localization. However, most existing program emb…

Code CompletionFault localizationProgram RepairProgram Synthesis

Dynamic Neural Program Embedding for Program Repair

2017-11-20 · Ke Wang, Rishabh Singh, Zhendong Su

Neural program embeddings have shown much promise recently for a variety of program analysis tasks, including program synthesis, program repair, fault localization, etc. However, most existing program embeddings are base…

Fault localizationProgram RepairProgram Synthesis

CodeBLEU: a Method for Automatic Evaluation of Code Synthesis

2020-09-22 · Shuo Ren, Daya Guo, Shuai Lu, Long Zhou 외

Evaluation metrics play a vital role in the growth of an area as it defines the standard of distinguishing between good and bad models. In the area of code synthesis, the commonly used evaluation metric is BLEU or perfec…

Code TranslationTranslation

Using LLVM-based JIT Compilation in Genetic Programming

2017-01-20 · Michal Gregor, Juraj Spalek

The paper describes an approach to implementing genetic programming, which uses the LLVM library to just-in-time compile/interpret the evolved abstract syntax trees. The solution is described in some detail, including a …

Optimal Neural Program Synthesis from Multimodal Specifications

2020-10-04 · Findings (EMNLP) 2021 11 · Xi Ye, Qiaochu Chen, Isil Dillig, Greg Durrett

Multimodal program synthesis, which leverages different types of user input to synthesize a desired program, is an attractive way to scale program synthesis to challenging settings; however, it requires integrating noisy…

Program Synthesisvalid