指令与解概率作为归纳编程的启发式方法
软件工程
2025-06-18 v1 人工智能
摘要
指令子集(IS)是可以将归纳编程(IP)搜索空间缩小数十个数量级的启发式方法。在此,我们通过引入指令概率与解概率作为额外的启发式方法来扩展IS方法。指令概率反映了一条指令在解中出现的期望,基于其在大量代码样本中出现的频率。部分解或完整解的程序解概率即为所有组成指令概率的乘积,包括重复项。我们将代码样本中不同规模程序单元所观察到的最小解概率视为解概率阈值。这些阈值在部分解构建过程中用于剪枝搜索空间,从而消除包含不可能指令组合的任何分支。我们使用大量人类代码样本对新方法进行了评估。我们测试了指令概率的两种形式:一种基于整个代码样本中的指令出现情况,另一种则分别针对每个IS测量其分布。结果表明,两种变体均能进一步大幅缩减IP搜索空间,规模可达数十个数量级,具体取决于解的大小。与IS结合使用,可实现超过100个数量级的缩减。我们还进行了交叉验证测试,以表明这些启发式方法在未见过的代码上也应有效。本文描述了该方法,并讨论了结果及未来工作的一些思路。
引用
@article{arxiv.2506.13804,
title = {Instruction and Solution Probabilities as Heuristics for Inductive Programming},
author = {Edward McDaid and Sarah McDaid},
journal= {arXiv preprint arXiv:2506.13804},
year = {2025}
}
备注
10 pages, 10 figures