论文
未走过的路径:基于程序执行双向推理的代码评测
The Path Not Taken: Duality in Reasoning about Program Execution
摘要
大语言模型 (LLM) 在不同的编码任务中表现出了卓越的能力。然而,它们的采用需要对程序执行的真正理解,而不是依赖于表面层模式。现有的基准主要侧重于预测与特定输入(例如代码覆盖率、程序输出)相关的程序属性。因此,它们提供了动态代码推理的狭隘观点,并且容易受到数据污染。我们认为,理解程序执行需要通过两个互补的推理任务来评估其固有的二元性:(i)预测给定输入的程序观察到的行为,以及(ii)推断输入必须如何向特定的行为目标变异。这两项任务共同探索模型对执行流的因果理解。我们在 DexBench(一个包含 445 个配对实例的基准)中实例化这种二元性,并评估 13 个 LLM。我们的结果表明,双路径推理为动态代码理解提供了可靠且具有区分度的评测指标。