Modular verification of Ada library units

C. Marceau, W. Polak
{"title":"Modular verification of Ada library units","authors":"C. Marceau, W. Polak","doi":"10.1109/CMPASS.1992.235764","DOIUrl":null,"url":null,"abstract":"Modular verification of Ada library units enables programmers to write and verify small program units and to compose them with minimal additional effort into larger correct programs. Penelope is a prototype verification environment for Ada that supports separate verification of program units and their composition. The authors have extended Penelope to enable verification of larger Ada programs, consisting of multiple compilation units. They discuss two major issues that arise from the composition of program modules. The first is ensuring that the composition itself is correct, that is, that assumptions made by one module about another indeed hold. The elaboration of Ada packages poses new problems, which are described along with the solution adopted. A novel technique for reducing the amount of annotation required from the user is described. The second issue is maintaining consistency between the various modules without incurring excessive overhead. The way in which a set of modules is kept consistent depends on the structure of the language. The method, called separate verification, is closely modeled on the technique of separate compilation used in Ada. How Ada techniques can be adapted for a verification environment is discussed.<<ETX>>","PeriodicalId":153913,"journal":{"name":"COMPASS `92 Proceedings of the Seventh Annual Conference on Computer Assurance","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1992-06-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"COMPASS `92 Proceedings of the Seventh Annual Conference on Computer Assurance","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CMPASS.1992.235764","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Modular verification of Ada library units enables programmers to write and verify small program units and to compose them with minimal additional effort into larger correct programs. Penelope is a prototype verification environment for Ada that supports separate verification of program units and their composition. The authors have extended Penelope to enable verification of larger Ada programs, consisting of multiple compilation units. They discuss two major issues that arise from the composition of program modules. The first is ensuring that the composition itself is correct, that is, that assumptions made by one module about another indeed hold. The elaboration of Ada packages poses new problems, which are described along with the solution adopted. A novel technique for reducing the amount of annotation required from the user is described. The second issue is maintaining consistency between the various modules without incurring excessive overhead. The way in which a set of modules is kept consistent depends on the structure of the language. The method, called separate verification, is closely modeled on the technique of separate compilation used in Ada. How Ada techniques can be adapted for a verification environment is discussed.<>
Ada库单元的模块化验证
Ada库单元的模块化验证使程序员能够编写和验证小程序单元,并以最小的额外努力将它们组合成更大的正确程序。Penelope是Ada的原型验证环境,它支持对程序单元及其组成进行单独验证。作者扩展了Penelope,使其能够验证由多个编译单元组成的更大的Ada程序。他们讨论了程序模块组成中出现的两个主要问题。首先是确保组成本身是正确的,也就是说,一个模块对另一个模块所做的假设确实成立。Ada包的细化带来了新的问题,本文将对这些问题与所采用的解决方案一起进行描述。描述了一种用于减少用户所需注释量的新技术。第二个问题是在不产生过多开销的情况下维护各个模块之间的一致性。一组模块保持一致的方式取决于语言的结构。这种方法被称为单独验证,它与Ada中使用的单独编译技术密切相关。讨论了如何将Ada技术应用于验证环境
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信