Broadening the applicability of local completeness analysis with intensional and extensional guarantees

IF 1 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS
Flavio Ascari , Roberto Bruni , Roberta Gori
{"title":"Broadening the applicability of local completeness analysis with intensional and extensional guarantees","authors":"Flavio Ascari ,&nbsp;Roberto Bruni ,&nbsp;Roberta Gori","doi":"10.1016/j.tcs.2025.115452","DOIUrl":null,"url":null,"abstract":"<div><div>Local Completeness Logic (LCL) is a proof system for program analysis rooted in abstract interpretation. The program semantics is under-approximated by any provable postcondition, like incorrectness logic does, but it is also over-approximated by a (locally) <em>complete</em> abstraction of such a postcondition, like Hoare logic does. Therefore, <em>any derivable triple</em> will either prove the program to be correct or unveil true bugs. While the completeness of a program's function with respect to an abstract domain is inherently <em>extensional</em>, LCL's rules demand the preservation of local completeness throughout the abstract interpreter's computations. This characteristic renders LCL analysis <em>intensional</em>, meaning it depends on the way the program is written. Consequently, LCL proof system may not derive all the valid triples. This paper addresses this discrepancy by: 1) designing new rules that allow one to perform part of the intensional analysis in different (complete) abstract domains whenever necessary; and 2) to compare their expressiveness. Notably, some of these new rules enable the derivation of all extensionally valid triples, thereby decoupling the set of provable properties from the way the program is written.</div></div>","PeriodicalId":49438,"journal":{"name":"Theoretical Computer Science","volume":"1054 ","pages":"Article 115452"},"PeriodicalIF":1.0000,"publicationDate":"2025-07-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Theoretical Computer Science","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0304397525003901","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0

Abstract

Local Completeness Logic (LCL) is a proof system for program analysis rooted in abstract interpretation. The program semantics is under-approximated by any provable postcondition, like incorrectness logic does, but it is also over-approximated by a (locally) complete abstraction of such a postcondition, like Hoare logic does. Therefore, any derivable triple will either prove the program to be correct or unveil true bugs. While the completeness of a program's function with respect to an abstract domain is inherently extensional, LCL's rules demand the preservation of local completeness throughout the abstract interpreter's computations. This characteristic renders LCL analysis intensional, meaning it depends on the way the program is written. Consequently, LCL proof system may not derive all the valid triples. This paper addresses this discrepancy by: 1) designing new rules that allow one to perform part of the intensional analysis in different (complete) abstract domains whenever necessary; and 2) to compare their expressiveness. Notably, some of these new rules enable the derivation of all extensionally valid triples, thereby decoupling the set of provable properties from the way the program is written.
扩大了具有内延保证和外延保证的局部完备性分析的适用性
局部完备逻辑是一种基于抽象解释的程序分析证明体系。程序语义被任何可证明的后置条件所低估,就像不正确逻辑一样,但它也被这种后置条件的(局部)完全抽象所过度逼近,就像Hoare逻辑一样。因此,任何可衍生的三元组要么证明程序是正确的,要么揭示真正的错误。虽然程序功能相对于抽象域的完备性本质上是外延的,但LCL的规则要求在整个抽象解释器的计算过程中保持局部完备性。这个特性使得LCL分析具有内向性,这意味着它依赖于程序的编写方式。因此,LCL证明系统不能推导出所有的有效三元组。本文通过以下方式解决了这一差异:1)设计新的规则,允许人们在必要时在不同(完整)抽象领域中执行部分内涵分析;2)比较他们的表达能力。值得注意的是,其中一些新规则允许推导所有扩展有效的三元组,从而将可证明的属性集与程序的编写方式解耦。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
Theoretical Computer Science
Theoretical Computer Science 工程技术-计算机:理论方法
CiteScore
2.60
自引率
18.20%
发文量
471
审稿时长
12.6 months
期刊介绍: Theoretical Computer Science is mathematical and abstract in spirit, but it derives its motivation from practical and everyday computation. Its aim is to understand the nature of computation and, as a consequence of this understanding, provide more efficient methodologies. All papers introducing or studying mathematical, logic and formal concepts and methods are welcome, provided that their motivation is clearly drawn from the field of computing.
×
引用
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学术文献互助群
群 号:604180095
Book学术官方微信