paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Normalization by evaluation for modal dependent type theory

模态依赖类型理论的求值规范化
JFP vol.332023匹配度 2/10 · 该论文属于模态依赖类型论与规范化求值证明的纯 PL 理论工作,虽与形式化验证/类型系统相关,但不涉及用户核心关注的 LLM/Agent、静态分析、浮点程序分析或贝叶斯程序分析。其 Agda 机化与 Haskell 抽取有一定工程性,但未回应用户当前追踪的 PL↔AI 交叉问题。引用 8 inbox
JASON Z. S. HU, JUNYOUNG JANG, BRIGITTE PIENTKA
crossref: 2026-09-10

AI 速览

一句话:提出模态依赖类型论 Mint,并给出其模块化、可机化的求值规范化证明与算法。

本文提出 Kripke 风格的模态依赖类型论 Mint,将依赖类型与必然模态结合,把 Pfenning–Davies 的模态 λ-演算扩展到完整的 Martin-Löf 类型论,从而涵盖系统 K、T、K4 与 S4 的依赖类型变体,并支持宇宙层级、归纳类型与大消除。论文给出基于无类型域模型的模块化可靠且完备的求值规范化(NbE)证明;该证明无需修改即可适用于上述四种模态系统,并导出可直接实现的规范化算法。作者还在 Agda 中完整机化模型与 NbE 证明,并抽取 Haskell 实现,以强化结果的可信度。

问题
如何为同时具有依赖类型和 Kripke 风格必然模态的类型论提供统一的规范化证明,并覆盖 K、T、K4 与 S4 等模态系统。
方法
采用基于无类型域模型的求值规范化(NbE),为 Mint 构造模块化的可靠且完备证明,并在 Agda 中机化、抽取 Haskell 实现。
评估
在理论层面给出可靠性与完备性证明,并通过 Agda 机化验证所有模型和证明,同时从证明中抽取可执行的 Haskell 规范化算法。
原文摘要(Abstract)

Abstract We present the Kripke-style modal type theory, Mint , which combines dependent types and the necessity modality. It extends the Kripke-style modal lambda-calculus by Pfenning and Davies to the full Martin-Löf type theory. As such it encompasses dependently typed variants of system K , T , K 4, and S 4. Further, Mint seamlessly supports a full universe hierarchy, usual inductive types, and large eliminations. In this paper, we give a modular sound and complete normalization-by-evaluation (NbE) proof for Mint based on an untyped domain model, which applies to all four aforementioned modal systems without modification. This NbE proof yields a normalization algorithm for Mint, which can be directly implemented. To further strengthen our results, our models and the NbE proof are fully mechanized in Agda and we extract a Haskell implementation of our NbE algorithm from it.

链接与引用

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

BibTeX
@article{paperbot2145,
  title = {Normalization by evaluation for modal dependent type theory},
  author = {JASON Z. S. HU and JUNYOUNG JANG and BRIGITTE PIENTKA},
  journal = {Journal of Functional Programming},
  volume = {33},
  year = {2023},
  doi = {10.1017/s0956796823000060}
}