paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Inductive Program Synthesis via Iterative Forward-Backward Abstract Interpretation

通过迭代前向-后向抽象解释的归纳程序合成
PLDI 7(PLDI)2023匹配度 3/10 · 论文属于程序合成与抽象解释方向,虽与程序分析/形式化方法相关,但未涉及 LLM/Agent、浮点程序分析或贝叶斯程序分析,与画像中 PL 与 AI/LLM 交叉的核心问题不直接匹配。引用 15 inbox
Yongho Yoon, Woosuk Lee, Kwangkeun Yi
crossref: 2026-09-10

AI 速览

一句话:提出交替迭代前向与后向抽象解释来剪枝搜索空间,显著提升归纳程序合成效果。

基于示例的归纳程序合成面临程序搜索空间过大的核心挑战。已有工作虽引入抽象解释进行剪枝,但大多仅使用前向抽象解释,未能充分发挥其潜力。本文提出一种新方法:对部分程序交替迭代地执行前向与后向抽象解释。前向解释由输入推导程序可能输出,后向解释由输出反推可能输入;两者交替进行可有效判定每个部分程序的任一补全是否能满足给定输入-输出示例。作者将该方法应用于标准的语法引导合成(SyGuS)框架,从而支持多种归纳合成任务。实现后在既有工作的基准集上评估,实验表明借助精细的抽象解释技术,该方法显著优于当前最先进的方法。

问题
基于示例的归纳程序合成搜索空间巨大,而现有抽象解释方法仅使用前向解释,剪枝能力有限。
方法
对部分程序交替迭代执行前向与后向抽象解释,以前向推导可能输出、后向反推可能输入,从而判断其补全能否满足输入-输出示例,并集成到 SyGuS 框架中。
评估
在先前工作的基准集上实现并评估,与最先进方法比较,实验结果显示性能显著更优。
原文摘要(Abstract)

A key challenge in example-based program synthesis is the gigantic search space of programs. To address this challenge, various work proposed to use abstract interpretation to prune the search space. However, most of existing approaches have focused only on forward abstract interpretation, and thus cannot fully exploit the power of abstract interpretation. In this paper, we propose a novel approach to inductive program synthesis via iterative forward-backward abstract interpretation. The forward abstract interpretation computes possible outputs of a program given inputs, while the backward abstract interpretation computes possible inputs of a program given outputs. By iteratively performing the two abstract interpretations in an alternating fashion, we can effectively determine if any completion of each partial program as a candidate can satisfy the input-output examples. We apply our approach to a standard formulation, syntax-guided synthesis (SyGuS), thereby supporting a wide range of inductive synthesis tasks. We have implemented our approach and evaluated it on a set of benchmarks from the prior work. The experimental results show that our approach significantly outperforms the state-of-the-art approaches thanks to the sophisticated abstract interpretation techniques.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot1997,
  title = {Inductive Program Synthesis via Iterative Forward-Backward Abstract Interpretation},
  author = {Yongho Yoon and Woosuk Lee and Kwangkeun Yi},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {7},
  number = {PLDI},
  year = {2023},
  doi = {10.1145/3591288}
}