[论文解读] Towards Univalent Reference Types: The Impact of Univalence on Denotational Semantics
本文在一种扩展了可换性公理的不相容性保护同伦类型理论中,为高阶引用类型引入了指称语义,表明可换性公理强制了堆对称性下的不变性,并在无需显式等式公理的情况下实现了新的程序等价性,例如置换不变性和表示无关性。其关键贡献在于,可换性公理自动验证了在标准集合层级类型理论中不可证明的等式。
We develop a denotational semantics for general reference types in an impredicative version of guarded homotopy type theory, an adaptation of synthetic guarded domain theory to Voevodsky's univalent foundations. We observe for the first time the profound impact of univalence on the denotational semantics of mutable state. Univalence automatically ensures that all computations are invariant under symmetries of the heap -- a bountiful source of program equivalences. In particular, even the most simplistic univalent model enjoys many new equations that do not hold when the same constructions are carried out in the universes of traditional set-level (extensional) type theory.
研究动机与目标
- 在一种可换性、不相容性保护的同伦类型理论中,为一般引用类型开发指称语义。
- 研究可换性如何影响可变状态和基于堆的计算的语义。
- 证明可换性公理自动验证诸如堆置换不变性和表示无关性等程序等价性。
- 通过整合可换性基础,扩展先前对保护递归和引用类型的模型。
- 为更抽象、等式更丰富的命令式和面向对象计算模型奠定基础。
提出的方法
- 使用带有可换性基础的不相容性保护同伦类型理论(gHoTT)作为元语言。
- 应用合成保护域理论来建模递归和高阶引用类型。
- 采用带有两个关键公理的可换性引用类型:分配置换公理与表示无关性公理。
- 构建一个模型,其中可换性公理将仅在内存单元置换上不同的堆视为相等。
- 利用可换类型在对称性下保持不变的特性,因此同构的堆在命题上相等。
- 依赖于一个推测的保护立方装配模型,其中包含一个小型、集合反射性、保护的子范畴,记为 Inj。
实验结果
研究问题
- RQ1可换性如何影响可变引用类型的指称语义?
- RQ2与经典模型相比,在可换性模型中,高阶存储的哪些新程序等价性出现?
- RQ3可换性是否能在无需显式等式公理的情况下强制实现堆置换和表示同构下的不变性?
- RQ4支持可换性引用类型的不相容性保护 HoTT 模型需要满足什么条件?
- RQ5可换性语义如何支持更抽象的可变状态模型,例如局部存储?
主要发现
- 可换性公理自动确保计算在堆对称性下的不变性,从而产生在扩展性类型理论中不可推导出的新程序等价性。
- 由于可换性公理将不同分配顺序创建的堆识别为相等,因此分配置换公理成立。
- 通过在堆之间的等价关系上传播,表示无关性得到验证,使得同构的表示可互换。
- 该模型验证了诸如 (ℓ←alloc "hello"; ret 10) = ret 10 的等式,反映了局部存储行为。
- 该语义比全局存储模型具有更强的等式,接近于局部存储抽象。
- 该框架实现了数据抽象定理中的“精确相等”,超越了观察等价性。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。