WikiEdge:ArXiv-2408.12212/methods
跳转到导航
跳转到搜索
这篇论文介绍了一种新颖的程序合成方法,该方法将复杂的功能任务分解为更简单的关系合成子任务。以下是这部分的主要内容:
- 程序合成的目标:
- 程序合成的目标是自动从一组输入输出示例中生成计算机程序。
- 传统方法:
- 传统方法通过搜索一系列函数或动作来将输入映射到输出。
- 关系分解方法:
- 作者提出的关键贡献是将复杂的功能合成任务分解为更简单的关系合成子任务。通过将每个训练输入输出示例分解为一组事实,并尝试学习它们之间的关系。
- 关系表示:
- 通过将输入和输出列表分解为事实的形式,例如输入列表分解为 in(I,V) 形式的事实,输出列表分解为 out(I,V) 形式的事实,其中每个事实表示输出值在索引 I 处是 V。
- 归纳逻辑编程(ILP):
- 使用现成的归纳逻辑编程系统来展示这种方法的有效性。ILP的目标是找到能够根据背景知识和示例泛化的程序。
- 实验评估:
- 结果:
- 实验结果表明,关系表示可以胜过功能表示,并且使用关系编码的现成ILP系统可以胜过特定领域的解决方案。