Assumption-based Runtime Verification
| dc.contributor.author | Cimatti, Alessandro | en |
| dc.contributor.author | Tian, Chun | en |
| dc.contributor.author | Tonetta, Stefano | en |
| dc.date.accessioned | 2026-01-03T16:41:40Z | |
| dc.date.available | 2026-01-03T16:41:40Z | |
| dc.date.issued | 2022 | en |
| dc.description.abstract | Runtime Verification is a lightweight automatic verification technique. We introduce Assumption-Based Runtime Verification framework, which is capable for monitoring partially observable systems. The framework leverages assumptions on the behaviors of the systems under scrutiny for reasoning on their the non-observable or future behaviors. The specification is expressed in Propositional Linear Temporal Logic (LTL) with both future and past temporal operators, while assumptions are described in Fair Kripke Structures. Static or dynamic sets of observables are supported. The monitors are also resettable, i.e. being able to evaluate the specification at arbitrary positions of the input trace. We present the formalism of the framework and a series of monitoring algorithms which can be efficiently implemented by Binary Decision Diagrams. As a by-product, we also present a new automata-based monitor construction for Past-time LTL, an LTL variant with only past temporal operators. We give proofs for the correctness of all involved algorithms. The framework is implemented in NuRV, an extension of the nuXmv model checker. It synthesizes implicit or explicit monitors which can be deployed in online or offline modes. The explicit monitors are embeddable code in programming languages including C, C++, Java and Common Lisp. In particular, monitors can be generated as SMV models, whose correctness and other properties can be verified in nuXmv. Using a benchmark from Dwyer’s LTL patterns, we show the efficiency of the symbolic approach and the generated monitors, and the feasibility and effectiveness of the approach. Some monitors are shown to be predictive under certain assumptions. | en |
| dc.description.sponsorship | This work has been partly supported by the project “AI@TN” funded by the Autonomous Province of Trento, and by the PNRR project FAIR - Future AI Research (PE00000013), under the NRRP MUR program funded by the NextGenerationEU. | en |
| dc.description.status | Peer-reviewed | en |
| dc.format.extent | 48 | en |
| dc.identifier.issn | 0925-9856 | en |
| dc.identifier.other | ORCID:/0000-0002-2777-9443/work/186126142 | en |
| dc.identifier.scopus | 85150738761 | en |
| dc.identifier.uri | https://hdl.handle.net/1885/733803471 | |
| dc.language.iso | en | en |
| dc.rights | Publisher Copyright: © 2023, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature. | en |
| dc.source | Formal Methods in System Design | en |
| dc.subject | Linear Temporal Logic | en |
| dc.subject | Partial observability | en |
| dc.subject | Predictive semantics | en |
| dc.subject | Resettable monitors | en |
| dc.subject | Runtime Verification | en |
| dc.title | Assumption-based Runtime Verification | en |
| dc.type | Journal article | en |
| dspace.entity.type | Publication | en |
| local.bibliographicCitation.lastpage | 324 | en |
| local.bibliographicCitation.startpage | 277 | en |
| local.contributor.affiliation | Cimatti, Alessandro; Fondazione Bruno Kessler | en |
| local.contributor.affiliation | Tian, Chun; Fondazione Bruno Kessler | en |
| local.contributor.affiliation | Tonetta, Stefano; Fondazione Bruno Kessler | en |
| local.identifier.citationvolume | 60 | en |
| local.identifier.doi | 10.1007/s10703-023-00416-z | en |
| local.identifier.pure | a592d9ce-7045-410f-af72-bfeaece52bd6 | en |
| local.identifier.url | https://www.scopus.com/pages/publications/85150738761 | en |
| local.type.status | Published | en |