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

πŸ“… 2026-05-22
πŸ“ˆ Citations: 0
✨ Influential: 0
πŸ“„ PDF
πŸ€– AI Summary
Existing program synthesis approaches fail to produce valid programs when specifications involving nonlinear real arithmetic (NRA) are unrealizable. This work proposes the first synthesis framework capable of handling arbitrary NRA specifications over rational inputs and outputs, generating correct programs whenever the specification is satisfiable and reliably reporting unsolvability otherwise. By integrating formal verification, exact rational arithmetic, syntax-guided synthesis (SyGuS), and a tailored search strategy, the method achieves completeness for the single-output-variable caseβ€”a first in the fieldβ€”and reveals intricate connections between synthesis feasibility and deep problems in number theory. The prototype tool NQSynth successfully synthesizes programs on benchmarks beyond the reach of current SyGuS solvers, demonstrating superior performance even on realizable specifications.
πŸ“ Abstract
We study the problem of synthesizing programs from nonlinear real arithmetic (NRA) specifications. Existing techniques, such as syntax-guided synthesis (SyGuS), fail to synthesize programs when the specification is unrealizable. We argue this is unsatisfactory in many situations, and aim to synthesize programs from arbitrary NRA specifications, such that for any input, the synthesized program either produces outputs satisfying the specification or reports non-existence of any such output. To avoid rounding errors inherent in floating-point arithmetic, we restrict our programs to work on rational inputs and outputs. We first show that our variant of the synthesis problem is as hard as a long-standing open problem in number theory, and that synthesizing loop-free programs from arbitrary NRA specifications with rational inputs and outputs is impossible in general. Second, we present a sound and complete synthesis algorithm for the case where the specification involves a single output variable. We also show that for realizable specifications, a program generated by SyGuS for NRA (real inputs and outputs) serves as a solution to our problem, where inputs and outputs are rationals. Third, we provide a sound (but necessarily incomplete) synthesis algorithm for the general case of specifications. We have implemented our approach in a prototype tool called NQSynth that solves many benchmarks beyond the reach of state-of-the-art SyGuS tools, even when we render the specifications realizable.
Problem

Research questions and friction points this paper is trying to address.

program synthesis
non-linear real arithmetic
unrealizable specifications
rational inputs and outputs
specification realizability
Innovation

Methods, ideas, or system contributions that make the work stand out.

program synthesis
nonlinear real arithmetic
unrealizable specifications
rational arithmetic
sound and complete algorithm
πŸ”Ž Similar Papers