Automated program verification made SYMPLAR: symbolic permissions for lightweight automated reasoning

K. Bierhoff
{"title":"Automated program verification made SYMPLAR: symbolic permissions for lightweight automated reasoning","authors":"K. Bierhoff","doi":"10.1145/2048237.2048242","DOIUrl":null,"url":null,"abstract":"Research in automated program verification against specifications written in first-order logic has come a long way. Ever-faster Satisfiability Modulo Theories (SMT) solvers [Barrett et al. 2010] promise to verify program instructions quickly against specifications. Unfortunately, aliasing still prevents automated program verification tools from easily and soundly verifying interesting programs. This paper introduces the use of symbolic permissions as the basis for sound automated program verification. Symbolic permissions provide a simple alias control mechanism with expressiveness similar to the well-known fractional permissions [Boyland 2003]. The paper shows that symbolic permissions can be enforced with a linear refinement typechecking procedure. Once permissions are checked, aliasing can essentially be ignored for the purposes of program verification, which allows taking full advantage of SMT solvers for doing the heavy verification lifting. The paper shows that a verification tool based on symbolic permissions can easily verify a design pattern with inherent aliasing challenges.","PeriodicalId":168332,"journal":{"name":"SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software","volume":"167 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-10-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2048237.2048242","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13

Abstract

Research in automated program verification against specifications written in first-order logic has come a long way. Ever-faster Satisfiability Modulo Theories (SMT) solvers [Barrett et al. 2010] promise to verify program instructions quickly against specifications. Unfortunately, aliasing still prevents automated program verification tools from easily and soundly verifying interesting programs. This paper introduces the use of symbolic permissions as the basis for sound automated program verification. Symbolic permissions provide a simple alias control mechanism with expressiveness similar to the well-known fractional permissions [Boyland 2003]. The paper shows that symbolic permissions can be enforced with a linear refinement typechecking procedure. Once permissions are checked, aliasing can essentially be ignored for the purposes of program verification, which allows taking full advantage of SMT solvers for doing the heavy verification lifting. The paper shows that a verification tool based on symbolic permissions can easily verify a design pattern with inherent aliasing challenges.
自动程序验证使SYMPLAR:符号权限用于轻量级自动推理
针对用一阶逻辑编写的规范的自动程序验证的研究已经取得了长足的进展。更快的可满足模理论(SMT)求解器[Barrett等人,2010]承诺根据规范快速验证程序指令。不幸的是,混叠仍然会阻碍自动程序验证工具轻松而可靠地验证有趣的程序。本文介绍了使用符号权限作为良好的自动化程序验证的基础。符号权限提供了一种简单的别名控制机制,其表达性类似于众所周知的分数权限[Boyland 2003]。本文表明,符号权限可以通过线性细化类型检查过程来实现。一旦检查了权限,为了程序验证的目的,混叠基本上可以被忽略,这允许充分利用SMT求解器来完成繁重的验证工作。本文表明,基于符号权限的验证工具可以很容易地验证具有内在混叠挑战的设计模式。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信