Neural Guided Constraint Logic Programming for Program Synthesis
Abstract
Synthesizing programs using example input/outputs is a classic problem in artificial intelligence. We present a method for solving Programming By Example (PBE) problems by using a neural model to guide the search of a constraint logic programming system called miniKanren. Crucially, the neural model uses miniKanren's internal representation as input; miniKanren represents a PBE problem as recursive constraints imposed by the provided examples. We explore Recurrent Neural Network and Graph Neural Network models. We contribute a modified miniKanren, drivable by an external agent, available at https://github.com/xuexue/neuralkanren. We show that our neural-guided approach using constraints can synthesize programs faster in many cases, and importantly, can generalize to larger problems.
Cite
@article{arxiv.1809.02840,
title = {Neural Guided Constraint Logic Programming for Program Synthesis},
author = {Lisa Zhang and Gregory Rosenblatt and Ethan Fetaya and Renjie Liao and William E. Byrd and Matthew Might and Raquel Urtasun and Richard Zemel},
journal= {arXiv preprint arXiv:1809.02840},
year = {2018}
}
Comments
To appear in NIPS 2018