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