Yanxin Lu, Data-driven Program Completion

Slides

In this work, we present a data-driven method for program synthesis. Specifically, we focus on the problem of automatically completing a partial program given a specification represented by a set of unit test cases. The problem of program synthesis has been studied for more than 20 years. As the idea of big data is getting popular, recently people have been focusing on data-driven methods where a large number of programs is used to do program synthesis. Our contribution is using a large number of source code to automatically complete a partial program such that the resulting program passes a set predefined unit test cases. We also come up with a set of heuristics to reduce the search space and initial experiment shows that we are able to automatically complete a partial binary search algorithm efficiently. Future work includes extending the algorithm to work with more benchmark problems and continuing to reduce the search space.