paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Trace-Guided Inductive Synthesis of Recursive Functional Programs

迹引导的递归函数式程序归纳合成
PLDI 7(PLDI)2023匹配度 2/10 · 该论文研究经典归纳程序合成,提出用递归调用迹增强版本空间代数,不涉及用户核心关注的静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析。虽然属于程序语言与形式化方法范畴,但与“PL→AI”或“AI→PL”的交叉点均不明显。引用 17 inbox
Yongwei Yuan, Arjun Radhakrishna, Roopsha Samanta
crossref: 2026-09-10

AI 速览

一句话:提出迹引导的归纳合成方法,用递归调用迹增强版本空间代数,从少量示例合成递归函数式程序。

该论文研究从输入输出示例合成递归函数式程序时面临的歧义性与泛化性挑战。作者提出一种迹引导的方法,将递归迹(即程序递归子调用)加入程序搜索空间,并设计新的版本空间代数(VSA),用于紧凑表示和高效操作相互一致的递归迹与程序对。基于该方法实现了工具 SyRup,并在先前工作的基准上进行评估。实验表明,与现有合成器相比,SyRup 不仅达到一定成功率所需示例更少,而且对示例质量更不敏感,说明递归迹的引入能有效约束搜索空间并提升归纳合成的泛化能力。

问题
从输入输出示例归纳合成递归函数式程序时,搜索空间存在严重歧义,且合成结果难以泛化到未见输入。
方法
将递归调用迹与程序一起纳入搜索空间,并设计新的版本空间代数来紧凑表示和高效操作一致的递归迹-程序对,实现为 SyRup 工具。
评估
在先前工作的合成基准上评估 SyRup,结果显示其达到一定成功率所需示例数少于现有合成器,且对示例质量的敏感性更低。
原文摘要(Abstract)

We propose a novel trace-guided approach to tackle the challenges of ambiguity and generalization in synthesis of recursive functional programs from input-output examples. Our approach augments the search space of programs with recursion traces consisting of recursive subcalls of the programs. Our method is based on a new version space algebra (VSA) for succinct representation and efficient manipulation of pairs of recursion traces and programs that are consistent with each other. We have implemented this approach in a tool called SyRup and evaluated it on benchmarks from prior work. Our evaluation demonstrates that SyRup not only requires fewer examples to achieve a certain success rate than existing synthesizers, but is also less sensitive to the quality of the examples.

链接与引用

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

BibTeX
@article{paperbot1986,
  title = {Trace-Guided Inductive Synthesis of Recursive Functional Programs},
  author = {Yongwei Yuan and Arjun Radhakrishna and Roopsha Samanta},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {7},
  number = {PLDI},
  year = {2023},
  doi = {10.1145/3591255}
}