Decidable Synthesis of Programs with Uninterpreted Functions

10/22/2019
by   Paul Krogmeier, et al.
0

We identify a decidable synthesis problem for a class of programs of unbounded size with conditionals and iteration that work over infinite data domains. The programs in our class use uninterpreted functions and relations, and abide by a restriction called coherence that was recently identified to yield decidable verification. We formulate a powerful grammar-restricted (syntax-guided) synthesis problem for coherent uninterpreted programs and show the problem to be decidable. We identify its precise complexity, which is doubly exponential in the set of program variables and linear in the size of the grammar. The decision procedure uses tree automata which accept finite syntax trees of all correct programs. It checks that each of the infinitely many executions for a given program is correct using a finite memory streaming congruence closure algorithm. We also study variants of uninterpreted program synthesis: synthesis of transition systems with lower complexity (EXPTIME), synthesis of recursive programs, and synthesis of Boolean programs. We also show undecidability results that argue the necessity of our restrictions.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/14/2019

Proving Unrealizability for Syntax-Guided Synthesis

Proving Unrealizability for Syntax-Guided Synthesis We consider the pr...
research
11/01/2018

Decidable Verification of Uninterpreted Programs

verifying uninterpreted programs---programs that work over arbitrary da...
research
10/24/2019

What's Decidable About Program Verification Modulo Axioms?

We consider the decidability of the verification problem of programs mod...
research
07/24/2018

Bounded Synthesis of Reactive Programs

Most algorithms for the synthesis of reactive systems focus on the const...
research
05/11/2018

Leveraging Grammar and Reinforcement Learning for Neural Program Synthesis

Program synthesis is the task of automatically generating a program cons...
research
09/01/2023

Amortizing Pragmatic Program Synthesis with Rankings

In program synthesis, an intelligent system takes in a set of user-gener...
research
01/27/2020

Unsupervised Program Synthesis for Images using Tree-Structured LSTM

Program synthesis has recently emerged as a promising approach to the im...

Please sign up or login with your details

Forgot password? Click here to reset