In face of the unwieldiness of non-monotonic logic engines, or Prolog/CLP meta interpreters as they are commonly used for model based reasoning and diagnosis, this paper proposes a simple, but effective improvement for performing the complex diagnostic task. The chosen approach is twofold: firstly, the problem of contradicting first order system descriptions with a set of observations is reduced to propositional logic using the notion of symptoms, and secondly, the determination of conflict sets and minimal diagnoses is mapped to a problem whose technical solution has experienced a sheer boost over the past years, namely k-satisfiability using state-of-the-art SAT-solvers. Since the involved problems are (mostly) \(\mathcal{NP}\)-complete, the ideas for additional improvements for a more diagnosis-specific SAT-solver are also sketched and their implementation by means of a non-destructive solver, LSAT, evaluated.


model based reasoning model based diagnosis SAT-solving system monitoring formal specification 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ali, M., Veneris, A., Safarpour, S., Abadir, M., Drechsler, R., Smith, A.: Debugging Sequential Circuits Using Boolean Satisfiability. In: 5th International Workshop on Microprocessor Test and Verification (MTV 2004), Austin (2004)Google Scholar
  2. 2.
    Baumgartner, P., Fröhlich, P., Furbach, U., Nejdl, W.: Semantically Guided Theorem Proving for Diagnosis Applications, pp. 460–465Google Scholar
  3. 3.
    Baumgartner, P., Fröhlich, P., Furbach, U., Nejdl, W.: Tableaux for Diagnosis Applications. Technical Report 23–96, Universität Koblenz-Landau, Institut für Informatik, Rheinau 1, D-56075 Koblenz (1996)Google Scholar
  4. 4.
    Ben-Eliyahu-Zohary, R.: Yet some more complexity results for default logic. Artificial Intelligence 139(1), 1–20 (2002)MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Davis, M., Logemann, G., Loveland, D.: A machine program for theorem-proving. Communications of the ACM 5(7), 394–397 (1962)MATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    de Kleer, J., Williams, B.C.: Diagnosing multiple faults. Artificial Intelligence 32(1), 97–130 (1987)MATHCrossRefGoogle Scholar
  7. 7.
    Eiter, T., Lukasiewicz, T.: Complexity results for explanations in the structural-model approach. Artif. Intell. 154(1-2), 145–198 (2004)MATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Greiner, R., Smith, B.A., Wilkerson, R.W.: A correction to the algorithm in Reiter’s theory of diagnosis. Artificial Intelligence 41, 79–88 (1989)MATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Håkansson, J., Jonsson, B., Lundqvist, O.: Generating online test oracles from temporal logic specifications. STTT 4(4), 456–471 (2003)Google Scholar
  10. 10.
    Havelund, K., Rosu, G.: Monitoring Java Programs with Java PathExplorer. Electronic Notes Theoretical Computer Science 55(2) (2001)Google Scholar
  11. 11.
    Havelund, K., Rosu, G.: Synthesizing Monitors for Safety Properties. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 342–356. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  12. 12.
    Kim, Y.C., Saluja, K.K., Agrawal, V.D.: Multiple faults: Modeling, simulation and test. In: Proceedings of the 2002 conference on Asia South Pacific design automation/VLSI Design, p. 592. IEEE Computer Society, Los Alamitos (2002)Google Scholar
  13. 13.
    Li, C.M., Anbulagan: Look-ahead versus look-back for satisfiability problems. In: Smolka, G. (ed.) CP 1997. LNCS, vol. 1330, pp. 341–355. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  14. 14.
    Li, L., Jiang, Y.F.: Computing minimal hitting sets with genetic algorithms. Algorithmica 32(1), 95–106 (2002)MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Lynce, I., Marques-Silva, J.P.: Efficient data structures for backtrack search SAT solvers. In: Proceedings of the 5th International Symposium on the Theory and Applications of Satisfiability Testing (SAT) (May 2002)Google Scholar
  16. 16.
    McCarthy, J.: Circumscription — a form of non-monotonic reasoning. Artificial Intelligence 13, 27–39 (1980)MATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an Efficient SAT Solver. In: Proceedings of the 38th Design Automation Conference (DAC 2001) (2001)Google Scholar
  18. 18.
    Nonnengart, A., Weidenbach, C.: Computing small clause normal forms. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, ch. 6, vol. I, pp. 335–367. Elsevier Science B.V., Amsterdam (2001)CrossRefGoogle Scholar
  19. 19.
    Reiter, R.: A theory of diagnosis from first principles. Artificial Intelligence 32(1), 57–95 (1987)MATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Torasso, P., Console, L., Portinale, L., Dupré, D.T.: On the role of abduction. ACM Comput. Surv. 27(3), 353–355 (1995)CrossRefGoogle Scholar
  21. 21.
    Traon, Y.L., Ouabdesselam, F., Robach, C., Baudry, B.: From diagnosis to diagnosability: axiomatization, measurement and application. J. Syst. Softw. 65(1), 31–50 (2003)CrossRefGoogle Scholar
  22. 22.
    Vatan, F.: The complexity of the diagnosis problem. Technical Support Package (TSP) NPO-30315, NASA Jet Propulsion Laboratory (April 2002)Google Scholar
  23. 23.
    Veneris, A.: Fault Diagnosis and Logic Debugging Using Boolean Satisfiability. In: Fourth International Workshop on Microprocessor Test and Verification Common Challenges and Solutions, Austin, Texas (May 2003)Google Scholar
  24. 24.
    Zhang, H.: SATO: an efficient propositional prover. In: McCune, W. (ed.) CADE 1997. LNCS (LNAI), vol. 1249, pp. 272–275. Springer, Heidelberg (1997)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Andreas Bauer
    • 1
  1. 1.Institut für InformatikTechnische Universität MünchenGarching b. MünchenGermany

Personalised recommendations