Abstract
Program synthesis is the mechanised construction of software. One of the main difficulties is the efficient exploration of the very large solution space, and tools often require a user-provided syntactic restriction of the search space. We propose a new approach to program synthesis that combines the strengths of a counterexample-guided inductive synthesizer with those of a theory solver, exploring the solution space more efficiently without relying on user guidance. We call this approach CEGIS(
T
T
), where
T
T
is a first-order theory. In this paper, we focus on one particular challenge for program synthesizers, namely the generation of programs that require non-trivial constants. This is a fundamentally difficult task for state-of-the-art synthesizers. We present two exemplars, one based on Fourier-Motzkin (FM) variable elimination and one based on first-order satisfiability. We demonstrate the practical value of CEGIS(
T
T
) by automatically synthesizing programs for a set of intricate benchmarks.
T
T
), where
T
T
is a first-order theory. In this paper, we focus on one particular challenge for program synthesizers, namely the generation of programs that require non-trivial constants. This is a fundamentally difficult task for state-of-the-art synthesizers. We present two exemplars, one based on Fourier-Motzkin (FM) variable elimination and one based on first-order satisfiability. We demonstrate the practical value of CEGIS(
T
T
) by automatically synthesizing programs for a set of intricate benchmarks.
Original language | English |
---|---|
Title of host publication | Computer Aided Verification |
Editors | Hana Chockler, Georg Weissenbacher |
Publisher | Springer Nature |
Pages | 270-288 |
Number of pages | 19 |
ISBN (Electronic) | 978-3-319-96145-3 |
ISBN (Print) | 978-3-319-96144-6 |
DOIs | |
Publication status | Published - 18 Jul 2018 |
Event | International Conference on Computer Aided Verification - Oxford, United Kingdom Duration: 14 Jul 2018 → 17 Jul 2018 Conference number: 30 http://cavconference.org/2018/ |
Publication series
Name | Lecture Notes in Computer Science |
---|---|
Publisher | Springer Nature |
Volume | 10981 |
ISSN (Print) | 0302-9743 |
ISSN (Electronic) | 1611-3349 |
Conference
Conference | International Conference on Computer Aided Verification |
---|---|
Abbreviated title | CAV 2018 |
Country/Territory | United Kingdom |
City | Oxford |
Period | 14/07/18 → 17/07/18 |
Internet address |
Research Groups and Themes
- Programming Languages