Two Generalisations of Roşu and Chen’s Trace Slicing Algorithm A
Clemens Ballarin
5th International Conference, RV 2014, Toronto. Published in B. Bonakdarpour and S.A. Smolka, RV 2014, LNCS 8734, pages 15–30, 2014 ©

Abstract

Roşu and Chen's algorithm is at the core of the JavaMOP runtime verification tool.  The paper presents significant generalisations over the original algorithm while maintaining its unprecedented performance.

Roşu and Chen’s trace analysis algorithm identifies activity streams in a monitored application based on data (such as memory locations) and groups events accordingly into slices. It can be generalised to assign several such activity streams to the same slice, even if data is unrelated. This is useful for monitoring scheduling algorithms, which linearise activity streams that are not necessarily related. The algorithm can be generalised further to impose constraints on the generated slices such that, for example, each trace relates a high-priority activity to a low-priority activity. There are no limitations on constraints other than that constraint solvers efficient enough for runtime analysis need to be available.

 

Download: PDF icon PDF