Checking Refinement of Asynchronous Programs against Context-Free Specifications

Pascal Baumann, Moses Ganardi, R. Majumdar, R. Thinniyam, Georg Zetzsche
{"title":"Checking Refinement of Asynchronous Programs against Context-Free Specifications","authors":"Pascal Baumann, Moses Ganardi, R. Majumdar, R. Thinniyam, Georg Zetzsche","doi":"10.48550/arXiv.2306.13058","DOIUrl":null,"url":null,"abstract":"In the language-theoretic approach to refinement verification, we check that the language of traces of an implementation all belong to the language of a specification. We consider the refinement verification problem for asynchronous programs against specifications given by a Dyck language. We show that this problem is EXPSPACE-complete -- the same complexity as that of language emptiness and for refinement verification against a regular specification. Our algorithm uses several technical ingredients. First, we show that checking if the coverability language of a succinctly described vector addition system with states (VASS) is contained in a Dyck language is EXPSPACE-complete. Second, in the more technical part of the proof, we define an ordering on words and show a downward closure construction that allows replacing the (context-free) language of each task in an asynchronous program by a regular language. Unlike downward closure operations usually considered in infinite-state verification, our ordering is not a well-quasi-ordering, and we have to construct the regular language ab initio. Once the tasks can be replaced, we show a reduction to an appropriate VASS and use our first ingredient. In addition to the inherent theoretical interest, refinement verification with Dyck specifications captures common practical resource usage patterns based on reference counting, for which few algorithmic techniques were known.","PeriodicalId":266158,"journal":{"name":"International Colloquium on Automata, Languages and Programming","volume":"81 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Colloquium on Automata, Languages and Programming","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.48550/arXiv.2306.13058","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

In the language-theoretic approach to refinement verification, we check that the language of traces of an implementation all belong to the language of a specification. We consider the refinement verification problem for asynchronous programs against specifications given by a Dyck language. We show that this problem is EXPSPACE-complete -- the same complexity as that of language emptiness and for refinement verification against a regular specification. Our algorithm uses several technical ingredients. First, we show that checking if the coverability language of a succinctly described vector addition system with states (VASS) is contained in a Dyck language is EXPSPACE-complete. Second, in the more technical part of the proof, we define an ordering on words and show a downward closure construction that allows replacing the (context-free) language of each task in an asynchronous program by a regular language. Unlike downward closure operations usually considered in infinite-state verification, our ordering is not a well-quasi-ordering, and we have to construct the regular language ab initio. Once the tasks can be replaced, we show a reduction to an appropriate VASS and use our first ingredient. In addition to the inherent theoretical interest, refinement verification with Dyck specifications captures common practical resource usage patterns based on reference counting, for which few algorithmic techniques were known.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
根据上下文无关的规范检查异步程序的改进
在精化验证的语言理论方法中,我们检查实现的跟踪语言是否都属于规范的语言。我们根据Dyck语言给出的规范考虑异步程序的细化验证问题。我们展示了这个问题是EXPSPACE-complete的——与语言空性和针对常规规范的细化验证的复杂性相同。我们的算法使用了几种技术成分。首先,我们证明了Dyck语言中是否包含有状态的简洁描述向量相加系统(VASS)的可复盖性语言是expspace完备的。其次,在证明的更技术性的部分,我们定义了单词的排序,并展示了一个向下的闭包结构,该结构允许用常规语言替换异步程序中每个任务的(与上下文无关的)语言。与通常在无限状态验证中考虑的向下闭包操作不同,我们的排序不是一个很好的准排序,我们必须从头开始构造正则语言。一旦任务可以被替换,我们显示一个适当的VASS的缩减,并使用我们的第一个成分。除了固有的理论兴趣之外,Dyck规范的精化验证捕获了基于引用计数的常见实际资源使用模式,而很少有算法技术已知。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Integer Linear-Exponential Programming in NP by Quantifier Elimination On Finding Constrained Independent Sets in Cycles Checking Refinement of Asynchronous Programs against Context-Free Specifications A General Framework for Learning-Augmented Online Allocation On Semantically-Deterministic Automata
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1