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

Angelo Ferrando
(University of Genova)
Rafael C. Cardoso
(The University of Manchester)

Runtime Verification is a lightweight formal verification technique. It is used to verify at runtime whether the system under analysis behaves as expected. The expected behaviour is usually formally specified by means of properties, which are used to automatically synthesise monitors. A monitor is a device that, given a sequence of events representing a system execution, returns a verdict symbolising the satisfaction or violation of the formal property. Properties that can (resp. cannot) be verified at runtime by a monitor are called monitorable and non-monitorable, respectively. In this paper, we revise the notion of monitorability from a practical perspective, where we show how non-monitorable properties can still be used to generate partial monitors, which can partially check the properties. Finally, we present the implications both from a theoretical and practical perspectives.

In Marie Farrell and Matt Luckcuck: Proceedings Third Workshop on Formal Methods for Autonomous Systems (FMAS 2021), Virtual, 21st-22nd of October 2021, Electronic Proceedings in Theoretical Computer Science 348, pp. 38–53.
Published: 21st October 2021.

ArXived at: bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to:
For website issues: