Advertisement

An Efficient Algorithm for Computing Causal Trace Sets in Causality Checking

  • Martin KölblEmail author
  • Stefan LeueEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11781)

Abstract

Causality Checking [LL13a] has been proposed as a finite state space exploration technique which computes ordered sequences of events that are considered to cause the violation of a reachability property. A crucial point in the implementation of Causality Checking is the computation and storage of all minimal counterexamples found during state space exploration. We refer to the set of all minimal counterexamples as a causal trace set. However, the Duplicate State Prefix Matching (DSPM) Algorithm that is currently used in Causality Checking only under-approximates the causal trace set. As we argue, without the approximation the DSPM algorithm is inefficient. We propose the, to the best of our knowledge, first efficient algorithm that precisely computes a causal trace set, avoiding approximation, called Causal Trace Backward Search (CTBS). We compare the DSPM and CTBS algorithms with respect to their worst case complexities, and by applying them to several case studies.

References

  1. [AL10]
    Aljazzar, H., Leue, S.: Directed explicit state-space search in the generation of counterexamples for stochastic model checking. IEEE Trans. Softw. Eng. 36(1), 37–60 (2010)CrossRefGoogle Scholar
  2. [BHK+15]
    Beer, A., Heidinger, S., Kühne, U., Leitner-Fischer, F., Leue, S.: Symbolic causality checking using bounded model checking. In: Fischer, B., Geldenhuys, J. (eds.) SPIN 2015. LNCS, vol. 9232, pp. 203–221. Springer, Cham (2015).  https://doi.org/10.1007/978-3-319-23404-5_14CrossRefGoogle Scholar
  3. [BK+08]
    Baier, C., Katoen, J.-P., et al.: Principles of Model Checking. MIT Press (2008)Google Scholar
  4. [dJR10]
    de Jonge, M., Ruys, T.C.: The SpinJa model checker. In: van de Pol, J., Weber, M. (eds.) SPIN 2010. LNCS, vol. 6349, pp. 124–128. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-16164-3_9CrossRefGoogle Scholar
  5. [ES12]
    Edelkamp, S., Schrödl, S.: Heuristic Search - Theory and Applications. Academic Press (2012)Google Scholar
  6. [Fre60]
    Fredkin, E.: Trie memory. Commun. ACM 3(9), 490–499 (1960)CrossRefGoogle Scholar
  7. [Hal15]
    Halpern, J.Y.: A modification of the Halpern-Pearl definition of causality. In: IJCAI, pp. 3022–3033. AAAI Press (2015)Google Scholar
  8. [HK06]
    Hansen, H., Kervinen, A.: Minimal counterexamples in o(n log n) memory and o(n\(^2\)) time. In: ACSD, pp. 133–142. IEEE Computer Society (2006)Google Scholar
  9. [HKD09]
    Han, T., Katoen, J.-P., Damman, B.: Counterexample generation in probabilistic model checking. IEEE Trans. Softw. Eng. 35(2), 241–257 (2009)CrossRefGoogle Scholar
  10. [Hol04]
    Holzmann, G.J.: The SPIN Model Checker - Primer and Reference Manual. Addison-Wesley (2004)Google Scholar
  11. [HP05]
    Halpern, J.Y., Pearl, J.: Causes and explanations: a structural-model approach Part I: causes. Br. J. Phil. Sci. 56(4), 843–887 (2005)CrossRefGoogle Scholar
  12. [KL18]
    Kölbl, M., Leue, S.: Automated functional safety analysis of automated driving systems. In: Howar, F., Barnat, J. (eds.) FMICS 2018. LNCS, vol. 11119, pp. 35–51. Springer, Cham (2018).  https://doi.org/10.1007/978-3-030-00244-2_3CrossRefGoogle Scholar
  13. [Lei15]
    Leitner-Fischer, F.: Causality checking of safety-critical software and systems. Ph.D. thesis, University of Konstanz, Germany (2015)Google Scholar
  14. [LL11]
    Leitner-Fischer, F., Leue, S.: Quantum: quantitative safety analysis of UML models. In: QAPL, volume 57 of EPTCS, pp. 16–30 (2011)CrossRefGoogle Scholar
  15. [LL13a]
    Leitner-Fischer, F., Leue, S.: Causality checking for complex system models. In: Giacobazzi, R., Berdine, J., Mastroeni, I. (eds.) VMCAI 2013. LNCS, vol. 7737, pp. 248–267. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-35873-9_16CrossRefzbMATHGoogle Scholar
  16. [LL13b]
    Leitner-Fischer, F., Leue, S.: Probabilistic fault tree synthesis using causality computation. IJCCBS 4(2), 119–143 (2013)CrossRefGoogle Scholar
  17. [LL14]
    Leitner-Fischer, F., Leue, S.: SpinCause: a tool for causality checking. In: SPIN, pp. 117–120. ACM (2014)Google Scholar
  18. [Obj17]
    Object Management Group: OMG Systems Modeling Language, Specification 1.5 (2017). http://www.omg.org/spec/SysML
  19. [SB05]
    Schuppan, V., Biere, A.: Shortest counterexamples for symbolic model checking of LTL with past. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 493–509. Springer, Heidelberg (2005).  https://doi.org/10.1007/978-3-540-31980-1_32CrossRefzbMATHGoogle Scholar
  20. [VGRH02]
    Vesely, W.E., Goldberg, F.F., Roberts, N.H., Haasl, D.F.: Fault Tree Handbook (2002)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.University of KonstanzKonstanzGermany

Personalised recommendations