Capítulo de livro Revisado por pares

Efficient Runtime Verification of First-Order Temporal Properties

2018; Springer Science+Business Media; Linguagem: Inglês

10.1007/978-3-319-94111-0_2

ISSN

1611-3349

Autores

Klaus Havelund, Doron Peled,

Tópico(s)

Logic, programming, and type systems

Resumo

Runtime verification allows monitoring the execution of a system against a temporal property, raising an alarm if the property is violated. In this paper we present a theory and system for runtime verification of a first-order past time linear temporal logic. The first-order nature of the logic allows a monitor to reason about events with data elements. While runtime verification of propositional temporal logic requires only a fixed amount of memory, the first-order variant has to deal with a number of data values potentially growing unbounded in the length of the execution trace. This requires special compactness considerations in order to allow checking very long executions. In previous work we presented an efficient use of BDDs for such first-order runtime verification, implemented in the tool DejaVu. We first summarize this previous work. Subsequently, we look at the new problem of dynamically identifying when data observed in the past are no longer needed, allowing to reclaim the data elements used to represent them. We also study the problem of adding relations over data values. Finally, we present parts of the implementation, including a new concept of user defined property macros.

Referência(s)