FM2021Top-tier venue
HStriver: A Very Functional Extensible Tool for the Runtime Verification of Real-Time Event Streams
Felipe Gorostiaga, César Sánchez
Abstract
We present HStriver, an extensible stream runtime verification tool for event streams. The tool consists of a runtime verification engine for (1) real-time events streams where individual observations and verdicts can occur at arbitrary times, and (2) rich data in the observations and verdicts. This rich setting allows, for example, encoding as HStriver specifications quantitative semantics of logics like STL, including different notions of robustness.
The keystone of stream runtime verification (SRV) is the clean separation between temporal dependencies and data computations. To encode the data values and computations involved in the monitoring process we borrow (almost) arbitrary data-types from Haskell. These types are transparently lifted to the specification language and incorporated in the engine, so they can be used as the types of the inputs (observations), outputs (verdicts), and intermediate streams. The resulting extensible language is then embedded, alongside the temporal evaluation engine (which is agnostic to the types) into Haskell as an embedded Domain Specific Langauge (eDSL). Morever, the availability of functional features in the specification language enables the direct implementation of desirable features in HStriver like parametrization (using functions that return stream specifications), etc. The resulting tool is a flexible and extensible stream runtime verification engine for real-time streams. We illustrate the use of the tool on many sophisticated real-time specifications, including realistic signal temporal logic (STL) properties of existing designs.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 50f206cc-98a9-459d-8d6e-ea22e7a01313Cited by top-tier papers2
- Stream TypesJoseph W. Cutler, Christopher Watson, Emeka Nkurumeh, Phillip Hilliard et al.PLDI 2024 · 7 citations
- Pacing Types for Asynchronous Stream EquationsFlorian Kohn, Arthur Correnson, Jan Baumeister, Bernd FinkbeinerFM 2026
Related papers
- General Anticipatory Runtime VerificationRaik Hipler, Hannes Kallwies, Martin Leucker, César SánchezCAV 2024
- Quantitative Monitoring of Signal First-Order LogicMarek Chalupa, Thomas A. Henzinger, N. Ege Saraç, Emily YuFM 2026
- REDriver: Runtime Enforcement for Autonomous VehiclesYang Sun, Christopher M. Poskitt, Xiaodong Zhang, Jun SunICSE 2024 · 5 citations
- Online Causation Monitoring of Signal Temporal LogicZhenya Zhang, Jie An, Paolo Arcaini, Ichiro HasuoCAV 2023 · 10 citations
- StreamQL: a query language for processing streaming time seriesLingkun Kong, Konstantinos MamourasOOPSLA 2020 · 8 citations
