Keywords: programming by example, program synthesis, neural program synthesis, types
TL;DR: We propose method to incorporate programming types into a neural program synthesis approach for programming by example.
Abstract: We propose a method to incorporate programming types into a neural program synthesis approach for programming by example (PBE). We introduce Typed Neuro-Symbolic Program Synthesis (TNSPS), and test it in a functional programming context to empirically verify whether type information helps to improve generalization in neural synthesizers on limited-size datasets. Our TNSPS model builds upon the existing Neuro-Symbolic Program Synthesis (NSPS) model, by incorporating information on types of input-output examples, of grammar production rules, as well as of the next node to expand in the program. Additionally, we introduce a generation method for programs written in a limited subset of the Haskell language. Our experiments show that incorporating type information using TNSPS improves the accuracy of the synthesized programs. This suggests that hybrid approaches that use both neural synthesis and strong type-checking is a fruitful research line.