Cutting Corners on Uncertainty: Zonotope Abstractions for Stream-based Runtime Monitoring
Bernd Finkbeiner, Martin Fränzle, Florian Kohn, Paul Kröger
TL;DR
The paper addresses bounded-memory runtime monitoring of RLola specifications under sensor calibration and measurement noise. It combines symbolic semantics to represent the infinite slack-variable space with zonotopes as a bounded-memory over-approximation domain, enabling sound monitoring independent of trace length. The authors formalize the symbolic evaluation, introduce zonotope-based state pruning, and compare several over-approximation strategies, showing that the choice of method materially affects precision and false positives. This approach provides a practical, scalable framework for robust online monitoring of safety-critical systems under uncertainty, with implications for both design-time specifications and runtime verification tools.
Abstract
Stream-based monitoring assesses the health of safety-critical systems by transforming input streams of sensor measurements into output streams that determine a verdict. These inputs are often treated as accurate representations of the physical state, although real sensors introduce calibration and measurement errors. Such errors propagate through the monitor's computations and can distort the final verdict. Affine arithmetic with symbolic slack variables can track these errors precisely, but independent measurement noise introduces a fresh slack variable upon each measurement event, causing the monitor's state representation to grow without bound over time. Therefore, any bounded-memory monitoring algorithm must unify slack variables at runtime in a way that generates a sound approximation. This paper introduces zonotopes as an abstract domain for online monitoring of RLola specifications. We demonstrate that zonotopes precisely capture the affine state of the monitor and that their over-approximation produces a sound bounded-memory monitor. We present a comparison of different zonotope over-approximation strategies in the context of runtime monitoring, evaluating their performance and false-positive rates.
