Autoencoders as Tools for Program Synthesis
This work addresses the challenge of program synthesis for industry-grade languages, which is an incremental advancement in the field of code generation and optimization.
The paper tackles the open problem of complete program synthesis for industry-grade programming languages by introducing a variational autoencoder model that leverages the tree structure of code and integrates with gradient-free optimization methods, such as evolutionary techniques, to generate programs that maximize fitness functions like passing test cases.
Recently there have been many advances in research on language modeling of source code. Applications range from code suggestion and completion to code summarization. However, complete program synthesis of industry-grade programming languages remains an open problem. In this work, we introduce and experimentally validate a variational autoencoder model for program synthesis of industry-grade programming languages. This model makes use of the inherent tree structure of code and can be used in conjunction with gradient free optimization techniques like evolutionary methods to generate programs that maximize a given fitness function, for instance, passing a set of test cases. A demonstration is avaliable at https://tree2tree.app