BUSTLE: Bottom-up program-Synthesis Through Learning-guided Exploration

By Augustus Odena, Kensen Shi, David Bieber, Rishabh Singh, Charles Sutton. 2020

61 citations recorded by the source corpus.

Program synthesis is challenging largely because of the difficulty of search in a large space of programs. Human programmers routinely tackle the task of writing complex programs by writing sub-programs and then analysing their intermediate results to compose them in appropriate ways. Motivated by this intuition, we present a new synthesis approach that leverages learning to guide a bottom-up search over programs. In particular, we train a model to prioritize compositions of intermediate values during search conditioned on a given set of input-output examples. This is a powerful combination because of several emergent properties: First, in bottom-up search, intermediate programs can be executed, providing semantic information to the neural network. Second, given the concrete values from those executions, we can exploit rich features based on recent work on property signatures. Finally, bottom-up search allows the system substantial flexibility in what order to generate the solution, allowing the synthesizer to build up a program from multiple smaller sub-programs. Overall, our empirical evaluation finds that the combination of learning and bottom-up search is remarkably effective, even with simple supervised learning approaches. We demonstrate the effectiveness of our technique on a new data set for synthesis of string transformation programs.

Subfields: Hardware and Architecture, Information Systems, Software, Prompting & Reasoning

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Hardware and Architecture

  1. Xinyun Chen
  2. Chun Xia
  3. Dale Schuurmans
  4. Jonathan Berant
  5. Jacob Andreas
  6. Lingming Zhang
  7. Yinlin Deng
  8. Augustus Odena

In Information Systems

  1. Yinlin Deng
  2. Chun Xia
  3. Jonathan Berant
  4. Lingming Zhang
  5. Xinyun Chen
  6. Quoc V. Le
  7. Jure Leskovec
  8. Haoran Peng

In Software

  1. Yinlin Deng
  2. Chun Xia
  3. Lingming Zhang
  4. Haoran Peng
  5. Chenyuan Yang
  6. Maxwell Nye
  7. Augustus Odena
  8. Xinyun Chen

In Prompting & Reasoning

  1. Denny Zhou
  2. Xinyun Chen
  3. Noah D. Goodman
  4. Quoc V. Le
  5. Weizhu Chen
  6. Jian-Guang Lou
  7. Dale Schuurmans
  8. Nick Haber

Citations in the corpus