Symbolic Causality Checking Using Bounded Model Checking

In precursory work we have developed causality checking, a fault localization method for concurrent system models relying on the Halpern and Pearl counterfactual model of causation that identifies ordered occurrences of system events as being causal for the violation of non-reachability properties. Our first implementation of causality checking relies on explicit-state model checking. In this paper we propose a symbolic implementation of causality checking based on bounded model checking BMC and SAT solving. We show that this BMC-based implementation is efficient for large and complex system models. The technique is evaluated on industrial size models and experimentally compared to the existing explicit state causality checking implementation. BMC-based causality checking turns out to be superior to the explicit state variant in terms of runtime and memory consumption for very large system models.

[1]  Florian Leitner-Fischer,et al.  QuantUM: Quantitative Safety Analysis of UML Models , 2011, QAPL.

[2]  Marco Bozzano,et al.  Improving System Reliability via Model Checking: The FSAP/NuSMV-SA Safety Analysis Platform , 2003, SAFECOMP.

[3]  Florian Leitner-Fischer,et al.  Causality Checking for Complex System Models , 2013, VMCAI.

[4]  Marco Pistore,et al.  NuSMV 2: An OpenSource Tool for Symbolic Model Checking , 2002, CAV.

[5]  Alex Groce,et al.  SPECIAL S ECTION O N T OOLS A ND A LGORITHMS F OR THE C ONSTRUCTION A ND A NALYSIS O F S YSTEMS , 2005 .

[6]  Florian Leitner-Fischer,et al.  Probabilistic fault tree synthesis using causality computation , 2013, Int. J. Crit. Comput. Based Syst..

[7]  Christel Baier,et al.  Principles of Model Checking (Representation and Mind Series) , 2008 .

[8]  Marc de Jonge,et al.  The SpinJa Model Checker , 2010, SPIN.

[9]  Marco Bozzano,et al.  Symbolic Fault Tree Analysis for Reactive Systems , 2007, ATVA.

[10]  Florian Leitner-Fischer,et al.  SpinCause: a tool for causality checking , 2014, SPIN.

[11]  Jean-Baptiste Raclet,et al.  Causality Analysis in Contract Violation , 2010, RV.

[12]  Matthias Kuntz,et al.  From Probabilistic Counterexamples via Causality to Fault Trees , 2011, SAFECOMP.

[13]  Joseph Y. Halpern,et al.  Causes and explanations: A structural-model approach , 2000 .

[14]  Husain Aljazzar,et al.  Safety Analysis of an Airbag System Using Probabilistic FMEA and Probabilistic Counterexamples , 2009, 2009 Sixth International Conference on the Quantitative Evaluation of Systems.

[15]  Marco Pistore,et al.  Nusmv version 2: an opensource tool for symbolic model checking , 2002, CAV 2002.

[16]  Donald Nute,et al.  Counterfactuals , 1975, Notre Dame J. Formal Log..

[17]  Shin Nakajima,et al.  The SPIN Model Checker : Primer and Reference Manual , 2004 .

[18]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[19]  Florian Leitner-Fischer,et al.  On the Relationship of Event Order Logic and Linear Temporal Logic , 2014 .

[20]  Florian Leitner-Fischer,et al.  Causality Checking of Safety-Critical Software and Systems , 2015 .

[21]  Florian Leitner-Fischer,et al.  Analysis of an Airport Surveillance Radar using the QuantUM approach , 2012 .

[22]  W E Vesely,et al.  Fault Tree Handbook , 1987 .

[23]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[24]  Christel Baier,et al.  Principles of model checking , 2008 .

[25]  Joseph Y. Halpern,et al.  Causes and Explanations: A Structural-Model Approach. Part I: Causes , 2000, The British Journal for the Philosophy of Science.

[26]  Ilan Beer,et al.  Explaining Counterexamples Using Causality , 2009, CAV.