Refinement types decorate types with assertions that enable automatic verification. Like assertions, refinements are limited to binders that are in scope, and hence, cannot express higher-order specifications. Ghost variables circumvent this limitation but are prohibitively tedious to use as the programmer must divine and explicate their values at all call-sites. We introduce Implicit Refinement Types which turn ghost variables into implicit pair and function types, in a way that lets the refinement typechecker automatically synthesize their values at compile time. Implicit Refinement Types further take advantage of refinement type information, allowing them to be used as a lightweight verification tool, rather than merely as a technique to automate programming tasks. We evaluate the utility of Implicit Refinement Types by showing how they enable the modular specification and automatic verification of various higher-order examples including stateful protocols, access control, and resource usage.


翻译:与断言一样,改进仅限于范围广、因此无法表达更高顺序规格的捆绑物。 幽灵变量绕过这一限制,但却令人无法忍受地使用,因为程序设计者必须在所有呼叫站点施展其价值。 我们引入了将幽灵变量变成隐含对和功能类型的隐性精细类型,使精细类型检查器能够在编译时自动合成其价值。 隐性精细精细类型进一步利用精细类型信息,允许它们用作轻量级核查工具,而不仅仅是将编程任务自动化的一种技术。我们评估了不完全精细类型的作用,展示了它们如何使模块规格和自动核查各种更高顺序的例子,包括状态协议、访问控制和资源使用。

0
下载
关闭预览

相关内容

【干货书】Python参考手册,210页pdf
专知会员服务
65+阅读 · 2021年4月30日
专知会员服务
162+阅读 · 2020年1月16日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
164+阅读 · 2019年10月12日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
41+阅读 · 2019年10月9日
量化金融强化学习论文集合
专知
14+阅读 · 2019年12月18日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
已删除
将门创投
3+阅读 · 2019年5月6日
CCF A类 | 顶级会议RTSS 2019诚邀稿件
Call4Papers
10+阅读 · 2019年4月17日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
18+阅读 · 2018年12月24日
Adversarial Variational Bayes: Unifying VAE and GAN 代码
CreateAMind
7+阅读 · 2017年10月4日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
0+阅读 · 2021年6月25日
Arxiv
19+阅读 · 2021年6月15日
The Measure of Intelligence
Arxiv
9+阅读 · 2019年11月5日
Arxiv
8+阅读 · 2018年11月27日
Arxiv
3+阅读 · 2018年2月20日
VIP会员
最新内容
世界模型入门:从序贯决策到通用智能体
专知会员服务
5+阅读 · 10月24日
军事域更好使用人工智能的实用指南
专知会员服务
9+阅读 · 10月22日
《衡量语言模型中的作战规划能力》
专知会员服务
14+阅读 · 10月20日
Maven智能系统:帕兰提尔军事人工智能平台详解
专知会员服务
16+阅读 · 10月20日
《测试自动化框架在敏捷软件开发中的角色》
专知会员服务
8+阅读 · 10月20日
俄罗斯如何拦截乌克兰无人机与巡航导弹
专知会员服务
12+阅读 · 10月15日
《武器-目标分配问题:精确与近似求解算法》
专知会员服务
19+阅读 · 10月15日
相关资讯
量化金融强化学习论文集合
专知
14+阅读 · 2019年12月18日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
已删除
将门创投
3+阅读 · 2019年5月6日
CCF A类 | 顶级会议RTSS 2019诚邀稿件
Call4Papers
10+阅读 · 2019年4月17日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
18+阅读 · 2018年12月24日
Adversarial Variational Bayes: Unifying VAE and GAN 代码
CreateAMind
7+阅读 · 2017年10月4日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员