论文

SEDCoT:通过符号执行和增量调试增强基于 LLM 的 COBOL 代码翻译

SEDCoT: Enhancing LLM-Based COBOL Code Translation via Symbolic Execution and Delta Debugging

摘要

COBOL 在银行、保险和政府基础设施中仍然至关重要。然而,由于过时的技术、稀疏的文档和开发人员退休,维护变得越来越具有挑战性,需要将代码翻译成 C 等现代语言。传统的基于规则的转编译器产生的输出难以阅读和维护,而通用 大语言模型 (LLM) 的正确性并不理想,因为 COBOL 是一种具有独特逻辑模式的低资源语言。为了弥补这一差距,我们提出了 SEDCoT,一种新颖的 COBOL 到 C 的转换框架。 SEDCoT 首先利用 LLM 进行初始翻译,然后将符号执行与 LLM 指导相结合以生成测试套件并迭代修复语义差异。最后,它集成了增量调试,以最大限度地减少失败测试,​​形成简洁的反例,从而加速自动代码修复。在公共 COBOL-to-C 数据集上评估 SEDCoT 表明,它的性能比最先进的基线至少高 12%,同时生成的翻译比基于规则的替代方案具有更高的可读性。