Static verification of ptolemyrely programs using openJML

J. Sánchez, Gary T. Leavens
{"title":"Static verification of ptolemyrely programs using openJML","authors":"J. Sánchez, Gary T. Leavens","doi":"10.1145/2588548.2588550","DOIUrl":null,"url":null,"abstract":"In the PtolemyRely language event types define events that, when announced, trigger the execution of handlers, passing along the triggering piece of code for its eventual execution.\n Verification of PtolemyRely programs poses some particular challenges: (1) handlers must be verified against their corresponding event declaration, (2) event announcement and next-handler invocation must be reasoned about according to PtolemyRely's semantics, (3) the body of refining statements must be checked against their specifications, etc. The original Ptolemy compiler includes run-time assertion checking for dynamic verification, but there has been no static verification tool.\n In this paper we address the challenge of static verification of PtolemyRely programs by encoding them into JML (the Java Modelling Language) and using a JML static verification tool (OpenJML) to discharge the verification obligations. We argue informally that our encoding is sound in the sense that a PtolemyRely program is valid if and only if its encoding is a valid JML program.","PeriodicalId":245301,"journal":{"name":"Workshop on Foundations of Aspect-Oriented Languages","volume":"7 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-04-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Workshop on Foundations of Aspect-Oriented Languages","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2588548.2588550","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13

Abstract

In the PtolemyRely language event types define events that, when announced, trigger the execution of handlers, passing along the triggering piece of code for its eventual execution. Verification of PtolemyRely programs poses some particular challenges: (1) handlers must be verified against their corresponding event declaration, (2) event announcement and next-handler invocation must be reasoned about according to PtolemyRely's semantics, (3) the body of refining statements must be checked against their specifications, etc. The original Ptolemy compiler includes run-time assertion checking for dynamic verification, but there has been no static verification tool. In this paper we address the challenge of static verification of PtolemyRely programs by encoding them into JML (the Java Modelling Language) and using a JML static verification tool (OpenJML) to discharge the verification obligations. We argue informally that our encoding is sound in the sense that a PtolemyRely program is valid if and only if its encoding is a valid JML program.
使用openJML静态验证托勒密程序
在PtolemyRely语言中,事件类型定义了事件,这些事件在发布时触发处理程序的执行,并为其最终执行传递触发代码段。PtolemyRely程序的验证提出了一些特殊的挑战:(1)处理程序必须根据其相应的事件声明进行验证,(2)事件声明和下一个处理程序调用必须根据PtolemyRely的语义进行推理,(3)精炼语句的主体必须根据其规范进行检查,等等。原始的托勒密编译器包括动态验证的运行时断言检查,但没有静态验证工具。在本文中,我们通过将PtolemyRely程序编码为JML (Java建模语言)并使用JML静态验证工具(OpenJML)来履行验证义务,解决了PtolemyRely程序静态验证的挑战。我们非正式地认为,我们的编码是合理的,因为托勒密程序是有效的,当且仅当它的编码是有效的JML程序。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术文献互助群
群 号:604180095
Book学术官方微信