Automatic program synthesis of long programs with a learned garbage collector

Amit Zohar, Lior Wolf

Research output: Contribution to journalConference articlepeer-review

49 Scopus citations

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.

Original languageEnglish
Pages (from-to)2094-2103
Number of pages10
JournalAdvances in Neural Information Processing Systems
Volume2018-December
StatePublished - 2018
Event32nd Conference on Neural Information Processing Systems, NeurIPS 2018 - Montreal, Canada
Duration: 2 Dec 20188 Dec 2018

Funding

FundersFunder number
ICRC
Institute of Cancer Research

    Fingerprint

    Dive into the research topics of 'Automatic program synthesis of long programs with a learned garbage collector'. Together they form a unique fingerprint.

    Cite this