Automatic Program Synthesis of Long Programs with a Learned Garbage Collector
Amit Zohar, Lior Wolf

TL;DR
This paper introduces a neural network-based approach for automatic program synthesis that can generate significantly longer programs more efficiently by incorporating a learned garbage collector, advancing the state-of-the-art in code generation.
Contribution
The authors propose a novel neural network model that jointly predicts program statements and manages memory through a learned garbage collector, enabling the synthesis of longer programs with higher success rates.
Findings
Programs over twice as long as previous methods
Improved success rate for comparable program lengths
Runtime reduced by two orders of magnitude
Abstract
We consider the problem of generating automatic code given sample input-output pairs. We train a neural network to map from the current state and the outputs to the program's next statement. The neural network optimizes multiple tasks concurrently: the next operation out of a set of high level commands, the operands of the next statement, and which variables can be dropped from memory. Using our method we are able to create programs that are more than twice as long as existing state-of-the-art solutions, while improving the success rate for comparable lengths, and cutting the run-time by two orders of magnitude. Our code, including an implementation of various literature baselines, is publicly available at https://github.com/amitz25/PCCoder
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMachine Learning and Algorithms · Multimodal Machine Learning Applications · Machine Learning and Data Classification
