Suitability of Synduce for non-linear arithmetic benchmarks in this setting

Ascertain whether the recursive function synthesizer Synduce (Farzan and Nicolet, 2021) can successfully synthesize recursive programs for the offline-to-online conversion tasks studied in this paper, especially those involving heavy non-linear arithmetic, or determine that Synduce is fundamentally unsuitable for such benchmarks by establishing formal limitations or counterexamples.

Background

The paper compares its approach with prior recursive program synthesis tools, including Synduce, which synthesizes recursive functions from a reference implementation but requires a user-provided recursion skeleton. The authors attempted to apply Synduce to their domain of synthesizing online algorithms from offline implementations.

Despite providing the ground-truth recursion skeleton, the authors report that Synduce did not work on some simple examples (e.g., arithmetic mean) and conjecture that its difficulties may stem from heavy use of non-linear arithmetic in their benchmarks. Validating or refuting this conjecture would clarify the applicability of Synduce to tasks with substantial non-linear arithmetic and delineate the tool’s limitations in this setting.

References

Furthermore, even when we tried to manually supply Synduce with the ground truth recursion skeleton, we were unable to get it work on some of our simple examples, such as arithmetic mean. We conjecture that Synduce is not suitable for our setting because of the heavy use of non-linear arithmetic in these benchmarks.

From Batch to Stream: Automatic Generation of Online Algorithms  (2404.04743 - Wang et al., 2024) in Section: Related Work