SMT-Based Theorem Verification for Testing-Based Formal Verification

Kenta Sugai, H. Hosobe, Shaoying Liu
{"title":"SMT-Based Theorem Verification for Testing-Based Formal Verification","authors":"Kenta Sugai, H. Hosobe, Shaoying Liu","doi":"10.1145/3457784.3457823","DOIUrl":null,"url":null,"abstract":"Testing-based formal verification with symbolic execution (TBFV-SE) checks whether programs correctly implement their formal specification. Given a formal specification and a program, it first derives a theorem expressing the correctness property of the executed program paths and then formally verifies the validity of the theorem. However, such theorems still need to be verified manually due to the lack of a tool support for dealing with expressions involved. In this paper, we propose a method for automatically verifying theorems for TBFV-SE. This method uses an SMT solver to check whether a theorem is valid. For this purpose, the method converts the conditions in the theorems written in the SOFL specification language into appropriate constraints that are supported by the SMT solver. We present a tool to support the method, and present two case studies to demonstrate how the tool works in the context of Java programs and SOFL specifications.","PeriodicalId":373716,"journal":{"name":"Proceedings of the 2021 10th International Conference on Software and Computer Applications","volume":"6 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-02-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2021 10th International Conference on Software and Computer Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3457784.3457823","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Testing-based formal verification with symbolic execution (TBFV-SE) checks whether programs correctly implement their formal specification. Given a formal specification and a program, it first derives a theorem expressing the correctness property of the executed program paths and then formally verifies the validity of the theorem. However, such theorems still need to be verified manually due to the lack of a tool support for dealing with expressions involved. In this paper, we propose a method for automatically verifying theorems for TBFV-SE. This method uses an SMT solver to check whether a theorem is valid. For this purpose, the method converts the conditions in the theorems written in the SOFL specification language into appropriate constraints that are supported by the SMT solver. We present a tool to support the method, and present two case studies to demonstrate how the tool works in the context of Java programs and SOFL specifications.
基于测试的形式验证的基于smt的定理验证
基于测试的符号执行形式验证(TBFV-SE)检查程序是否正确地实现了它们的形式规范。在给定形式规范和程序的情况下,首先推导出一个表示所执行程序路径正确性的定理,然后形式化地验证该定理的有效性。然而,由于缺乏处理相关表达式的工具支持,这些定理仍然需要手工验证。本文提出了一种自动验证TBFV-SE定理的方法。该方法使用SMT求解器来检查定理是否有效。为此,该方法将用SOFL规范语言编写的定理中的条件转换为SMT求解器支持的适当约束。我们提供了一个工具来支持该方法,并提供了两个案例研究来演示该工具如何在Java程序和SOFL规范的上下文中工作。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信