当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Liquid Resource Types
arXiv - CS - Programming Languages Pub Date : 2020-06-29 , DOI: arxiv-2006.16233
Tristan Knoth, Di Wang, Adam Reynolds, Jan Hoffmann, and Nadia Polikarpova

This article presents liquid resource types, a technique for automatically verifying the resource consumption of functional programs. Existing resource analysis techniques trade automation for flexibility -- automated techniques are restricted to relatively constrained families of resource bounds, while more expressive proof techniques admitting value-dependent bounds rely on handwritten proofs. Liquid resource types combine the best of these approaches, using logical refinements to automatically prove precise bounds on a program's resource consumption. The type system augments refinement types with potential annotations to conduct an amortized resource analysis. Importantly, users can annotate data structure declarations to indicate how potential is allocated within the type, allowing the system to express bounds with polynomials and exponentials, as well as more precise expressions depending on program values. We prove the soundness of the type system, provide a library of flexible and reusable data structures for conducting resource analysis, and use our prototype implementation to automatically verify resource bounds that previously required a manual proof.

中文翻译:

液体资源类型

本文介绍了流动资源类型,这是一种自动验证功能程序资源消耗的技术。现有的资源分析技术以自动化换取灵活性——自动化技术仅限于相对受限的资源界限系列,而更具表现力的证明技术承认价值依赖界限依赖于手写证明。流动资源类型结合了这些方法中的优点,使用逻辑改进来自动证明程序资源消耗的精确界限。类型系统通过潜在的注释来增强细化类型,以进行摊销资源分析。重要的是,用户可以注释数据结构声明以指示如何在类型内分配潜力,允许系统用多项式和指数表示边界,以及根据程序值更精确的表达式。我们证明了类型系统的健全性,提供了一个灵活且可重用的数据结构库来进行资源分析,并使用我们的原型实现来自动验证以前需要手动证明​​的资源边界。
更新日期:2020-07-03
down
wechat
bug