PLLGMay 17, 2019

Overfitting in Synthesis: Theory and Practice (Extended Version)

arXiv:1905.07457v329 citations
Originality Highly original
AI Analysis

This addresses a fundamental limitation in program synthesis tools, offering a practical improvement for developers and researchers in automated software engineering.

The paper investigates overfitting in syntax-guided synthesis (SyGuS) tools, showing that increased grammar expressiveness degrades performance due to overfitting, and proposes hybrid enumeration to outperform the 2018 SyGuS competition winner with a 5× mean speedup.

In syntax-guided synthesis (SyGuS), a synthesizer's goal is to automatically generate a program belonging to a grammar of possible implementations that meets a logical specification. We investigate a common limitation across state-of-the-art SyGuS tools that perform counterexample-guided inductive synthesis (CEGIS). We empirically observe that as the expressiveness of the provided grammar increases, the performance of these tools degrades significantly. We claim that this degradation is not only due to a larger search space, but also due to overfitting. We formally define this phenomenon and prove no-free-lunch theorems for SyGuS, which reveal a fundamental tradeoff between synthesizer performance and grammar expressiveness. A standard approach to mitigate overfitting in machine learning is to run multiple learners with varying expressiveness in parallel. We demonstrate that this insight can immediately benefit existing SyGuS tools. We also propose a novel single-threaded technique called hybrid enumeration that interleaves different grammars and outperforms the winner of the 2018 SyGuS competition (Inv track), solving more problems and achieving a $5\times$ mean speedup.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes