paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Denotation-based Compositional Compiler Verification

基于指称语义的组合式编译器验证
TOPLAS 48(1)2026匹配度 3/10 · 该论文属于编译器形式验证与指称语义方向,虽与PL/形式验证背景相关,但没有涉及用户核心关注的LLM/Agent辅助静态分析或形式化验证、浮点程序分析、贝叶斯程序分析等交叉方向。其组合验证框架与工业落地兴趣有一定间接参考价值,但整体不匹配当前研究画像。引用 0 inbox
Zhang Cheng, Jiyang Wu, Di Wang, Qinxiang Cao
crossref: 2026-09-10

AI 速览

一句话:提出基于指称语义与行为精化的编译器验证框架,通过语义链接和精化代数实现从子语句、函数到模块及整程序的组合验证。

编译器验证的理想性质是组合性:程序编译正确性可由子结构(语句、函数、模块)逐步推出,但很难实现。本文提出基于指称语义的编译器验证框架,替代以往基于小步操作语义和模拟关系的方法。语义函数将语法组件映射到由多个行为集合组成的语义域,并通过源与目标语义域间的行为精化确立编译正确性。主要贡献包括开放模块的指称语义、新的语义链接算子,以及统一多种行为精化的精化代数,使验证结构化且可组合。该形式化连接传统幂域指称语义与编译器验证需求。作者将其用于验证 CompCert 前端及命令式语言原型的典型优化,结果表明从子语句到语句、函数到模块、模块到程序的组合性均可实现。

问题
编译器验证很难做到组合性:整体程序的编译正确性难以由其子结构(语句、函数、模块)的正确性逐步推出;已有方法多依赖小步操作语义和模拟关系。
方法
提出基于指称语义的验证框架:用语义函数把语法组件映射到由多个行为集合组成的语义域,通过源与目标语义域之间的行为精化建立编译正确性,并引入开放模块指称语义、语义链接算子和精化代数。
评估
作者将框架用于验证 CompCert 前端以及命令式语言原型上的典型优化,结果表明子语句到语句、函数到模块、模块到整程序的组合性验证均有效。
原文摘要(Abstract)

A desired but challenging property of compiler verification is compositionality, in the sense that the compilation correctness of a program can be deduced incrementally from that of its substructures ranging from statements, functions, and modules. This article proposes a novel compiler verification framework based on denotational semantics for better compositionality, compared to previous approaches based on small-step operational semantics and simulation theories. Our denotational semantics is defined by semantic functions that map a syntactic component to a semantic domain composed of multiple behavioral sets , with compiler correctness established through behavior refinement between the semantic domains of the source and target programs. The main contributions of this article include proposing a denotational semantics for open modules, a novel semantic linking operator, and a refinement algebra that unifies various behavior refinements, making compiler verification structured and compositional. Furthermore, our formalization captures the full meaning of a program and bridges the gap between traditional power-domain-based denotational semantics and the practical needs of compiler verification. We apply our denotation-based framework to verify the front-end of CompCert and typical optimizations on simple prototypes of imperative languages. Our results demonstrate that the compositionality from sub-statements to statements, from functions to modules, and from modules to the whole program can be effectively achieved.

链接与引用

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

BibTeX
@article{abs-2404-17297,
  title = {Denotation-based Compositional Compiler Verification},
  author = {Zhang Cheng and Jiyang Wu and Di Wang and Qinxiang Cao},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {48},
  number = {1},
  year = {2026},
  doi = {10.1145/3797874}
}