4.2 Article

Automated verification of reactive and concurrent programs by calculation

出版社

ELSEVIER SCIENCE INC
DOI: 10.1016/j.jlamp.2021.100681

关键词

-

资金

  1. CyPhyAssure project, EPSRC grant [EP/S001190/1]
  2. RoboCalc project, EPSRC [EP/M025756/1]
  3. Royal Academy of Engineering
  4. EPSRC [EP/M025756/1] Funding Source: UKRI

向作者/读者索取更多资源

This paper presents an algebraic verification strategy for concurrent reactive programs with a large or infinite state space, involving novel operators and an associated equation theory. The method can calculate denotational semantics of reactive programs, facilitate automated proof, and support iterative programs and parallel composition..
Reactive programs combine traditional sequential programming constructs with primitives to allow communication with other concurrent agents. They are ubiquitous in modern applications, ranging from components systems and web services, to cyber-physical systems and autonomous robots. In this paper, we present an algebraic verification strategy for concurrent reactive programs, with a large or infinite state space. We define novel operators to characterise interactions and state updates, and an associated equational theory. With this we can calculate a reactive program's denotational semantics, and thereby facilitate automated proof. Of note is our reasoning support for iterative programs with reactive invariants, based on Kleene algebra, and for parallel composition. We illustrate our strategy by verifying a reactive buffer. Our laws and strategy are mechanised in Isabelle/UTP, our implementation of Hoare and He's Unifying Theories of Programming (UTP) framework, to provide soundness guarantees and practical verification support. (C) 2021 Elsevier Inc. All rights reserved.

作者

我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。

评论

主要评分

4.2
评分不足

次要评分

新颖性
-
重要性
-
科学严谨性
-
评价这篇论文

推荐

暂无数据
暂无数据