Two Generalisations of Roşu and Chen’s Trace Slicing Algorithm A

  • Clemens Ballarin
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8734)


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.


Asynchronous events constraint solving runtime monitoring scheduling trace slicing 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    aicas GmbH, Karlsruhe, Germany: JamaicaVM 6.3 User Manual (2014)Google Scholar
  2. 2.
    Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press (1998)Google Scholar
  3. 3.
    Barringer, H., Falcone, Y., Havelund, K., Reger, G., Rydeheard, D.: Quantified event automata: Towards expressive and efficient runtime monitors. In: Giannakopoulou, D., Méry, D. (eds.) FM 2012. LNCS, vol. 7436, pp. 68–84. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  4. 4.
    Bodden, E.: J-LO A tool for runtime-checking of temporal assertions. Diplomarbeit, RWTH Aachen (2005)Google Scholar
  5. 5.
    Burns, A., Wellings, A.: Real-Time Systems and Programming Languages, 3rd edn. Addison Wesley (2001)Google Scholar
  6. 6.
    Decker, N., Leucker, M., Thoma, D.: Monitoring modulo theories. In: Ábrahám, E., Havelund, K. (eds.) TACAS 2014. LNCS, vol. 8413, pp. 341–356. Springer, Heidelberg (2014)Google Scholar
  7. 7.
    Jacobson, N.: Basic Algebra I, 2nd edn. Freeman (1985)Google Scholar
  8. 8.
    Leucker, M., Schallhart, C.: A brief account of runtime verification. The Journal of Logic and Algebraic Programming 78(5), 293–303 (2009)CrossRefzbMATHGoogle Scholar
  9. 9.
    Maler, O., Nickovic, D., Pnueli, A.: From MITL to timed automata. In: Asarin, E., Bouyer, P. (eds.) FORMATS 2006. LNCS, vol. 4202, pp. 274–289. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
    Marriott, K., Stuckey, P.J.: Programming with Constraints. MIT Press (1998)Google Scholar
  11. 11.
    Roşu, G., Chen, F.: Semantics and algorithms for parametric monitoring. Logical Methods in Computer Science 8(1:9), 1–47 (2012)Google Scholar
  12. 12.
    Stolz, V.: Temporal assertions for sequential and concurrent programs. Ph.D. thesis, RWTH Aachen, also Technical Report AIB-2007-15 (2006)Google Scholar
  13. 13.
    Wellings, A.: Concurrent and Real-Time Programming in Java. Wiley (2004)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Clemens Ballarin
    • 1
  1. 1.aicas GmbHKarlsruheGermany

Personalised recommendations