We present a method for example-guided synthesis of higher-order functional pro- grams. Given a set of input-output examples, our method synthesizes a program in a functional language with higher-order combinators like map and fold. The synthesized program is guaranteed to be the simplest program in the language to fit the examples. Our approach combines three technical ideas: inductive generalization, deduction, and enumerative search. First, we generalize the input-output examples into hypotheses about the structure of the target program. For each hypothesis, we use deduction to infer new input-output examples for the missing subexpressions. This leads to a new subproblem where the goal is to synthesize expressions within each hypothesis....
We developed an efficient, analytical approach for learning recursive functional programs from examp...
Formal synthesis is the process of generating a program satisfying a high-level formal specification...
Search based synthesis has emerged as a powerful tool in program synthesis, the process of automatic...
We present a method for example-guided synthesis of functional programs over recursive data structur...
We describe an approach to the inductive synthesis of recursive equations from input/output-examples...
An equational approach to the synthesis of functional and logic programs is taken. Typically, a targ...
A key challenge of existing program synthesizers is ensuring that the synthesized program generalize...
Abstract. Input-output examples are a simple and accessible way of describing program behaviour. Pro...
Abstract. In this paper we present a comparison of several inductive program-ming (IP) systems. IP a...
Building systems that can synthesize programs from natural specifications (such as examples or langu...
Thesis (Ph.D.)--University of Washington, 2017-06Programming by examples (PBE), or inductive program...
An equational approach to the synthesis of functional and logic programs is taken. Typically, a targ...
AbstractIn designing a new algorithm we usually begin with considering a number of examples and then...
An equational approach to the synthesis of functional and logic program is taken. Typically, the syn...
Inductive program synthesis, from input/output examples, can provide an opportunity to automatically...
We developed an efficient, analytical approach for learning recursive functional programs from examp...
Formal synthesis is the process of generating a program satisfying a high-level formal specification...
Search based synthesis has emerged as a powerful tool in program synthesis, the process of automatic...
We present a method for example-guided synthesis of functional programs over recursive data structur...
We describe an approach to the inductive synthesis of recursive equations from input/output-examples...
An equational approach to the synthesis of functional and logic programs is taken. Typically, a targ...
A key challenge of existing program synthesizers is ensuring that the synthesized program generalize...
Abstract. Input-output examples are a simple and accessible way of describing program behaviour. Pro...
Abstract. In this paper we present a comparison of several inductive program-ming (IP) systems. IP a...
Building systems that can synthesize programs from natural specifications (such as examples or langu...
Thesis (Ph.D.)--University of Washington, 2017-06Programming by examples (PBE), or inductive program...
An equational approach to the synthesis of functional and logic programs is taken. Typically, a targ...
AbstractIn designing a new algorithm we usually begin with considering a number of examples and then...
An equational approach to the synthesis of functional and logic program is taken. Typically, the syn...
Inductive program synthesis, from input/output examples, can provide an opportunity to automatically...
We developed an efficient, analytical approach for learning recursive functional programs from examp...
Formal synthesis is the process of generating a program satisfying a high-level formal specification...
Search based synthesis has emerged as a powerful tool in program synthesis, the process of automatic...