An Event-based Compositional Reasoning Approach for Concurrent Reactive Systems

10/18/2018
by   Yongwang Zhao, et al.
0

Reactive systems are composed of a well defined set of input events that the system reacts with by executing an associated handler to each event. In concurrent environments, event handlers can interact with the execution of other programs such as hardware interruptions in preemptive systems, or other instances of the reactive system in multicore architectures. State of the art rely-guarantee based verification frameworks only focus on imperative programs, being difficult to capture in the rely and guarantee relations interactions with possible infinite sequences of event handlers, and the input arguments to event handlers. In this paper, we propose the formalisation in Isabelle/HOL of an event-based rely-guarantee approach for concurrent reactive systems. We develop a Pi-Core language which incorporates a concurrent imperative and system specification language by `events', and we build a rely-guarantee proof system for Pi-Core and prove its soundness. Our approach can deal with multicore and interruptible concurrency. We use two case studies to show this: an interruptible controller for stepper motors and an ARINC 653 multicore kernel, and prove the functional correctness and preservation of invariants of them in Isabelle/HOL.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/17/2023

Rely-guarantee Reasoning about Concurrent Reactive Systems: The PiCore Framework, Languages Integration and Applications

The rely-guarantee approach is a promising way for compositional verific...
research
07/27/2020

Automated Verification of Reactive and Concurrent Programs by Calculation

Reactive programs combine traditional sequential programming constructs ...
research
03/30/2018

Reactive Supervisory Control of Open Discrete-event Systems

Traditional supervisory control theory of discrete-event systems mainly ...
research
09/17/2023

Rely-guarantee Reasoning about Concurrent Memory Management: Correctness, Safety and Security

Formal verification of concurrent operating systems (OSs) is challenging...
research
07/09/2019

Handling localisation in rely/guarantee concurrency: An algebraic approach

The rely/guarantee approach of Jones extends Hoare logic with rely and g...
research
10/07/2008

The meaning of concurrent programs

The semantics of assignment and mutual exclusion in concurrent and multi...
research
03/27/2018

Harmonizing Signals and Events with a Lightweight Extension to Java

The current demands for seamless connections with the surrounding enviro...

Please sign up or login with your details

Forgot password? Click here to reset