Score: 1

Synthesiz3 This: an SMT-Based Approach for Synthesis with Uncomputable Symbols

Published: April 23, 2025 | arXiv ID: 2504.16536v3

By: Petra Hozzová, Nikolaj Bjørner

Potential Business Impact:

Makes computers write code from math problems.

Business Areas:
Simulation Software

Program synthesis is the task of automatically constructing a program conforming to a given specification. In this paper we focus on synthesis of single-invocation recursion-free functions conforming to a specification given as a logical formula in the presence of uncomputable symbols (i.e., symbols used in the specification but not allowed in the resulting function). We approach the problem via SMT-solving methods: we present a quantifier elimination algorithm using model-based projections for both total and partial function synthesis, working with theories of uninterpreted functions and linear arithmetic and their combination. For this purpose we also extend model-based projection to produce witnesses for these theories. Further, we present procedures tailored for the case of uniquely determined solutions. We implemented a prototype of the algorithms using the SMT-solver Z3, demonstrating their practical efficiency compared to the state of the art.

Page Count
11 pages

Category
Computer Science:
Logic in Computer Science