Decentralized Runtime Verification for LTL Properties Using Global

by   M. Ali Dorosty, et al.

Runtime verification is the process of verifying critical behavioral properties in big complex systems, where formal verification is not possible due to state space explosion. There have been several attempts to design efficient algorithms for runtime verification. Most of these algorithms have a formally defined correctness property as a reference and check whether the system consistently meets the demands of the property or it fails to satisfy the property at some point in runtime. LTL is a commonly used language for defining these kinds of properties and is also the language of focus in this paper. One of the main target systems for runtime verification are distributed systems, where the system consists of a number of processes connecting to each other using asynchronous message passing. There are two approaches for runtime verification in distributed systems. The first one consists of centralized algorithms, where all processes send their events to a specific decision-making process, which keeps track of all the events to evaluate the specified property. The second approach consists of distributed algorithms, where processes check the specified property collaboratively. Centralized algorithms are simple, but usually involve sending a large number of messages to the decision-making process. They also suffer from the problem of single point of failure, as well as high traffic loads towards one process. Distributed algorithms, on the other hand, are usually more complicated, but once implemented, offer more efficiency. In this paper, we focus on a class of asynchronous distributed systems, where each process can change its own local state at any arbitrary time and completely independent of others, while all processes share a global clock. We propose a sound and complete algorithm for decentralized runtime verification of LTL properties in these systems.


page 1

page 2

page 3

page 4


Decentralized Runtime Verification for LTL Properties Using Global Clock

Runtime verification is the process of verifying critical behavioral pro...

Formalizing the Execution Context of Behavior Trees for Runtime Verification of Deliberative Policies

Our research aims to enable automated property verification of deliberat...

Towards Partial Monitoring: It is Always too Soon to Give Up

Runtime Verification is a lightweight formal verification technique. It ...

Formal Verification of Robustness and Resilience of Learning-Enabled State Estimation Systems for Robotics

This paper presents a formal verification guided approach for a principl...

Runtime Verification over Out-of-order Streams

We present an approach for verifying systems at runtime. Our approach ta...

Stream-based Decentralized Runtime Verification

Industrial Control Systems (ICS) are often built from geographically dis...

Decentralized Stream Runtime Verification for Timed Asynchronous Networks

We study the problem of monitoring distributed systems where computers c...

Please sign up or login with your details

Forgot password? Click here to reset