【24h】

Interpretation-Based Violation Witness Validation for C: NITWIT

机译:C:NITWIT的基于解释的违反证人验证

获取原文

摘要

As software verification is gaining traction in academia and industry the number and complexity of verification tools is growing constantly. This initiated research and interest into exchangeable verification witnesses as well as tools for automated witness validation. Initial witness validators used model checkers that were amended to benefit from guidance information provided by the witness. This approach comes with substantial overhead. Second-generation execution-based validators traded speed for reduced strength in case of incomplete and non-exact witnesses. This was done by extracting test harnesses and compiling them with the original program. We present the NITWIT tool, a new interpretation-based violation witness validator for C programs that is trimmed to be fast and memory efficient. It verifies a record number of witnesses of SV-COMP'20 in the ReachSafety category. Our novel tool exchanges initial compilation overhead and optimized execution for rapid startup performance, NITWIT borrows C semantics from the compiler used for compilation. This offloads this hard-to-get-right task and enables using several compilers in parallel to inspect possible semantic differences.
机译:随着软件验证在学术界和行业中越来越受欢迎,验证工具的数量和复杂性也在不断增长。这引发了人们对可交换验证证人以及自动证人验证工具的研究和兴趣。最初的证人验证者使用了模型检查器,并对其进行了改进,以从证人提供的指导信息中受益。这种方法会带来大量开销。在证人不完整和不准确的情况下,第二代基于执行力的验证器会以速度为代价,以降低实力。这是通过提取测试工具并将其与原始程序进行编译来完成的。我们介绍了NITWIT工具,这是一种针对C程序的基于解释的新违反者验证器,该工具经过了裁剪,可以快速且高效地存储内存。它会验证ReachSafety类别中SV-COMP'20见证人的记录数量。我们的新颖工具可以交换初始编译开销和优化执行以实现快速启动性能,而NITWIT则从用于编译的编译器中借鉴了C语义。这减轻了这项难以解决的任务的负担,并允许并行使用多个编译器来检查可能的语义差异。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号