DeepAI AI Chat
Log In Sign Up

Bidirectional Runtime Enforcement of First-Order Branching-Time Properties

by   Luca Aceto, et al.

Runtime enforcement is a dynamic analysis technique that instruments a monitor with a system in order to ensure its correctness as specified by some property. This paper explores bidirectional enforcement strategies for properties describing the input and output behaviour of a system. We develop an operational framework for bidirectional enforcement and use it to study the enforceability of the safety fragment of Hennessy-Milner logic with recursion (sHML). We provide an automated synthesis function that generates correct monitors from sHML formulas, and show that this logic is enforceable via a specific type of bidirectional enforcement monitors called action disabling monitors.


page 1

page 2

page 3

page 4


On Runtime Enforcement via Suppressions

Runtime enforcement is a dynamic analysis technique that uses monitors t...

Developing Theoretical Foundations for Runtime Enforcement

The ubiquitous reliance on software systems increases the need for ensur...

Bidirectional Typing

Bidirectional typing combines two modes of typing: type checking, which ...

Synbit: Synthesizing Bidirectional Programs using Unidirectional Sketches

We propose a technique for synthesizing bidirectional programs from the ...

Adventures in Monitorability: From Branching to Linear Time and Back Again

This paper establishes a comprehensive theory of runtime monitorability ...

Program Sketching with Live Bidirectional Evaluation

We present Sketch-n-Myth, a technique for completing program sketches wh...

An Operational Guide to Monitorability

Monitorability delineates what properties can be verified at runtime. Al...