paperbot · PL 论文追踪

RSS

Liquidate your assets: reasoning about resource usage in liquid Haskell

POPL 4(POPL)2019
Martin A. T. Handley, Niki Vazou, Graham Hutton

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

Liquid Haskell is an extension to the type system of Haskell that supports formal reasoning about program correctness by encoding logical properties as refinement types. In this article, we show how Liquid Haskell can also be used to reason about program efficiency in the same setting. We use the system's existing verification machinery to ensure that the results of our cost analysis are valid, together with custom invariants for particular program contexts to ensure that the results of our analysis are precise. To illustrate our approach, we analyse the efficiency of a wide range of popular data structures and algorithms, and in doing so, explore various notions of resource usage. Our experience is that reasoning about efficiency in Liquid Haskell is often just as simple as reasoning about correctness, and that the two can naturally be combined.

链接与引用

DOI 原文 ·

BibTeX
@article{paperbot568,
  title = {Liquidate your assets: reasoning about resource usage in liquid Haskell},
  author = {Martin A. T. Handley and Niki Vazou and Graham Hutton},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {4},
  number = {POPL},
  year = {2019},
  doi = {10.1145/3371092}
}