pith. sign in

arxiv: 1802.04428 · v1 · pith:XBI7VRI7new · submitted 2018-02-13 · 💻 cs.PL · cs.LO

Reconciling Enumerative and Symbolic Search in Syntax-Guided Synthesis

classification 💻 cs.PL cs.LO
keywords synthesisframeworksearchproceduressymbolicsyntax-guidedconcolicfragments
0
0 comments X
read the original abstract

Syntax-guided synthesis aims to find a program satisfying semantic specification as well as user-provided structural hypothesis. For syntax-guided synthesis there are two main search strategies: concrete search, which systematically or stochastically enumerates all possible solutions, and symbolic search, which interacts with a constraint solver to solve the synthesis problem. In this paper, we propose a concolic synthesis framework which combines the best of the two worlds. Based on a decision tree representation, our framework works by enumerating tree heights from the smallest possible one to larger ones. For each fixed height, the framework symbolically searches a solution through the counterexample-guided inductive synthesis approach. To compensate the exponential blow-up problem with the concolic synthesis framework, we identify two fragments of synthesis problems and develop purely symbolic and more efficient procedures. The two fragments are decidable as these procedures are terminating and complete. We implemented our synthesis procedures and compared with state-of-the-art synthesizers on a range of benchmarks. Experiments show that our algorithms are promising.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.

Forward citations

Cited by 1 Pith paper

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score.

  1. Program Synthesis for Non-Linear Real Arithmetic: Going Beyond Realizability

    cs.PL 2026-05 unverdicted novelty 7.0

    Presents sound and complete synthesis algorithm for single-output NRA specs over rationals, sound algorithm for general case, and shows general loop-free synthesis is impossible, with NQSynth tool outperforming SyGuS.