Abstraction Functions as Types: Modular Verification of Cost and Behavior in Dependent Type Theory
Harrison Grodin, Runming Li, Robert Harper
摘要
Software development depends on the use of libraries whose public specifications inform client code and impose obligations on private implementations; it follows that verification at scale must also be modular, preserving such abstraction. Hoare's influential methodology uses abstraction functions to demonstrate the coherence between such concrete implementations and their abstract specifications. However, the Hoare methodology relies on a conventional separation between implementation and specification, providing no linguistic support for ensuring that this convention is obeyed.
This paper proposes a synthetic account of Hoare's methodology within univalent dependent type theory by encoding the data of abstraction functions within types themselves. This is achieved via a phase distinction, which gives rise to a gluing construction that renders an abstraction function as a type and a pair of modalities that fracture a type into its concrete and abstract parts. A noninterference theorem governing the phase distinction characterizes the modularity guarantees provided by the theory.
This approach scales to verification of cost, allowing the analysis of client cost relative to a cost-aware specification. A monadic sealing effect facilitates modularity of cost, permitting an implementation to be upper-bounded by its specification in cases where private details influence observable cost. The resulting theory supports modular development of programs and proofs in a manner that hides private details of no concern to clients while permitting precise specifications of both the cost and behavior of programs.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
它引用的顶会 Paper4
- The fire triangle: how to mix substitution, dependent elimination, and effectsPierre-Marie Pédrot, Nicolas TabareauPOPL 2020 · 被引用 42 次
- A cost-aware logical frameworkYue Niu, Jonathan Sterling, Harrison Grodin, Robert HarperPOPL 2022 · 被引用 23 次
- Internalizing representation independence with univalenceCarlo Angiuli, Evan Cavallo, Anders Mörtberg, Max ZeunerPOPL 2021 · 被引用 18 次
- Decalf: A Directed, Effectful Cost-Aware Logical FrameworkHarrison Grodin, Yue Niu, Jonathan Sterling, Robert HarperPOPL 2024 · 被引用 11 次
相关 Paper
- Reasoning about External CallsSophia Drossopoulou, Julian Mackay, Susan Eisenbach, James NobleOOPSLA 2025
- Staged Specification Logic for Verifying Higher-Order Imperative ProgramsDarius Foo, Yahui Song, Wei-Ngan ChinFM 2024 · 被引用 1 次
- A unifying type-theory for higher-order (amortized) cost analysisVineet Rajani, Marco Gaboardi, Deepak Garg, Jan HoffmannPOPL 2021 · 被引用 26 次
- A Metalanguage for Cost-Aware Denotational SemanticsYue Niu, Robert HarperLICS 2023 · 被引用 5 次
- A HAT Trick: Automatically Verifying Representation Invariants using Symbolic Finite AutomataZhe Zhou, Qianchuan Ye, Benjamin Delaware, Suresh JagannathanPLDI 2024 · 被引用 7 次
