Evolving a Domain-Specific Language to Speed Up Program Synthesis

Bachelor Thesis (2022)
Author(s)

P.I. Tempelman (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

Sebastijan Dumančić – Mentor (TU Delft - Algorithmics)

G. Smaragdakis – Graduation committee member (TU Delft - Cyber Security)

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2022 Philip Tempelman
More Info
expand_more
Publication Year
2022
Language
English
Copyright
© 2022 Philip Tempelman
Graduation Date
23-06-2022
Awarding Institution
Delft University of Technology
Project
['CSE3000 Research Project']
Programme
['Computer Science and Engineering']
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Program synthesis is used in various ways to automate repetitive tasks or to generate software automatically. Search-based program synthesis constitutes searching the space of candidate programs created from a given language. However, this form of program synthesis is very expensive in terms of computing power. By optimising the synthesiser’s parameters on certain tasks, program synthesis can be made more efficient on other similar tasks. One of these parameters is the domain-specific language. Using a genetic algorithm, an optimised language was evolved for three different domains. This resulted in unnecessary language predicates being phased out and commonly used structures being introduced as new language predicates. Overall, using these evolved languages made program synthesis faster for the tasks in all three domains.

Files

License info not available