当前位置: X-MOL 学术ACM Trans. Program. Lang. Syst. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
CSim 2
ACM Transactions on Programming Languages and Systems ( IF 1.3 ) Pub Date : 2021-02-10 , DOI: 10.1145/3436808
David Sanan 1 , Yongwang Zhao 2 , Shang-Wei Lin 1 , Liu Yang 1
Affiliation  

To make feasible and scalable the verification of large and complex concurrent systems, it is necessary the use of compositional techniques even at the highest abstraction layers. When focusing on the lowest software abstraction layers, such as the implementation or the machine code, the high level of detail of those layers makes the direct verification of properties very difficult and expensive. It is therefore essential to use techniques allowing to simplify the verification on these layers. One technique to tackle this challenge is top-down verification where by means of simulation properties verified on top layers (representing abstract specifications of a system) are propagated down to the lowest layers (that are an implementation of the top layers). There is no need to say that simulation of concurrent systems implies a greater level of complexity, and having compositional techniques to check simulation between layers is also desirable when seeking for both feasibility and scalability of the refinement verification. In this article, we present CSim 2 a (compositional) rely-guarantee-based framework for the top-down verification of complex concurrent systems in the Isabelle/HOL theorem prover. CSim 2 uses CSimpl, a language with a high degree of expressiveness designed for the specification of concurrent programs. Thanks to its expressibility, CSimpl is able to model many of the features found in real world programming languages like exceptions, assertions, and procedures. CSim 2 provides a framework for the verification of rely-guarantee properties to compositionally reason on CSimpl specifications. Focusing on top-down verification, CSim 2 provides a simulation-based framework for the preservation of CSimpl rely-guarantee properties from specifications to implementations. By using the simulation framework, properties proven on the top layers (abstract specifications) are compositionally propagated down to the lowest layers (source or machine code) in each concurrent component of the system. Finally, we show the usability of CSim 2 by running a case study over two CSimpl specifications of an Arinc-653 communication service. In this case study, we prove a complex property on a specification, and we use CSim 2 to preserve the property on lower abstraction layers.

中文翻译:

模拟模拟 2

为了使大型复杂并发系统的验证变得可行和可扩展,即使在最高抽象层也有必要使用组合技术。当关注最低的软件抽象层时,例如实现或机器代码,这些层的高度细节使得直接验证属性变得非常困难和昂贵。因此,必须使用允许简化这些层上的验证的技术。应对这一挑战的一种技术是自上而下的验证其中通过在顶层验证的模拟属性(代表系统的抽象规范)向下传播到最低层(即顶层的实现)。无需说并发系统的模拟意味着更高级别的复杂性,并且在寻求细化验证的可行性和可扩展性时,还需要使用组合技术来检查层之间的模拟。在这篇文章中,我们介绍CSim 2 一个(组合的)基于依赖保证的框架,用于自上而下的验证Isabelle/HOL 定理证明器中的复杂并发系统。CSim 2 使用 CSimpl,一种具有高度表达性的语言,专为并发程序的规范而设计。由于其可表达性,CSimpl 能够对现实世界编程语言中的许多特性进行建模,例如异常、断言和过程。CSim 2 提供了一个框架,用于验证依赖保证属性以在 CSimpl 规范上进行组合推理。专注于自上而下的验证,CSim 2 提供了一个基于模拟的框架,用于保存从规范到实现的 CSimpl 依赖保证属性。通过使用模拟框架,在顶层(抽象规范)上证明的属性被组合地传播到系统每个并发组件中的最低层(源代码或机器代码)。最后,我们展示了可用性CSim 2 通过对 Arinc-653 通信服务的两个 CSimpl 规范运行案例研究。在这个案例研究中,我们证明了规范上的一个复杂属性,我们使用CSim 2 保留较低抽象层的属性。
更新日期:2021-02-10
down
wechat
bug