paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Archmage and CompCertCast: End-to-End Verification Supporting Integer-Pointer Casting

Archmage 与 CompCertCast:支持整数-指针转换的端到端验证
POPL 9(POPL)2025匹配度 3/10 · 论文属于程序验证与编译形式化,尤其关注整数-指针转换的端到端验证,与用户画像中的形式化验证有弱交集;但它不涉及 LLM/Agent、静态分析工具在 ML/Agentic 程序中的应用、浮点程序分析或贝叶斯程序分析,因此与核心研究方向匹配度较低。引用 1 inbox
Yonghyun Kim, Minki Cho, Jaehyung Lee, Jinwoo Kim, Taeyoung Yoon, Youngju Song, Chung-Kil Hur
crossref: 2026-09-10

AI 速览

一句话:提出 Archmage 内存模型框架及 CompCertCast 编译链与源级逻辑,首次实现含整数-指针转换程序的实用端到端验证。

现有支持整数-指针转换的形式化内存模型并非为端到端验证设计,既无法支持某些重要的源级编码模式、难以论证部分后端优化,也缺少用于程序验证的源级逻辑。本文提出 Archmage:一个面向端到端验证的整数-指针转换框架,支持广泛的源级编码模式、后端优化,并给出形式化的 out-of-memory 概念。基于 Archmage,作者构建了 CompCertCast——将 Archmage 接入 CompCert 的扩展,为含整数-指针转换的程序提供完整经验证的编译链;同时提出 Archmage logic——用于推理整数-指针转换的源级逻辑。设计上缓解了形式化支持带来的开销,并通过验证一个基于 xor 的链表实现展示该逻辑的有效性。该工作给出了首个实用的、面向含整数-指针转换程序的端到端验证链。

问题
既有形式化内存模型虽支持整数-指针转换,但未面向端到端验证设计,缺少源级程序逻辑,且不能支持某些源级编码模式或论证部分后端优化。
方法
提出 Archmage 框架,定义形式化 out-of-memory,并基于它实现完整经验证编译链 CompCertCast 与源级推理逻辑 Archmage logic。
评估
通过验证一个基于 xor 的链表实现来展示 Archmage logic 的有效性,并说明 CompCertCast 在形式化支持整数-指针转换时缓解了额外开销。
原文摘要(Abstract)

Although there have been many approaches for developing formal memory models that support integerpointer casts, previous approaches share the drawback that they are not designed for end-to-end verification ,failing to support some important source-level coding patterns, justify some backend optimizations, or lack a source-level logic for program verification. This paper presents Archmage, a framework for integer-pointer casting designed for end-to-end verification,supporting a wide range of source-level coding patterns, backend optimizations, and a formal notion of out-ofmemory. To facilitate end-to-end verification via Archmage, we also present two systems based on Archmage: CompCertCast, an extension of CompCert with Archmage to bring a full verified compilation chain to integer-pointer casting programs, and Archmage logic, a source-level logic for reasoning about integerpointer casts. We design CompCertCast such that the overhead from formally supporting integer-pointer casts is mitigated, and illustrate the effectiveness of Archmage logic by verifying an xor-based linked-list implementation, Together, our paper presents the first practical end-to-end verification chain for programs containing integer-pointer casts.

链接与引用

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

BibTeX
@article{KimCLKYSH25,
  title = {Archmage and CompCertCast: End-to-End Verification Supporting Integer-Pointer Casting},
  author = {Yonghyun Kim and Minki Cho and Jaehyung Lee and Jinwoo Kim and Taeyoung Yoon and Youngju Song and Chung-Kil Hur},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {POPL},
  year = {2025},
  doi = {10.1145/3704881}
}