Originally published here.
Search Based Software Engineering – 9th International Symposium, SSBSE 2017, Paderborn, Germany, September 9-11, 2017, Proceedings
Authors:
Vineeth Kashyap, Rebecca Swords, Eric M. Schulte and David Melski
Abstract:
MUSYNTH takes a draft C program with “holes”, a test suite, and optional simple hints—that together specify a desired functionality—and performs program synthesis to auto-complete the holes. First, MUSYNTH leverages a similar-code-search engine to find potential “donor” code (similar to the required functionality) from a corpus. Second, MUSYNTH applies various synthesis mutations in an evolutionary loop to find and modify the donor code snippets to fit the input context and produce the expected functionality. This paper focuses on the latter, and our preliminary evaluation shows that MUSYNTH’s combination of type-based heuristics, simple hints, and evolutionary search are each useful for efficient program synthesis.