Skip to main content
Log in

Early detection of evolving system failures and temporal conflicts using parameterized formal specifications and bounded constraint-solving

  • Original Paper
  • Published:
Innovations in Systems and Software Engineering Aims and scope Submit manuscript

Abstract

This paper describes an analysis technique for a system consisting of a collection of formal specifications. The goal of the analysis is to provide early discovery of system states from which the system will inevitably fail in the future by violating some formal specification. This goal can also be formulated as a form of temporal specification conflicts. The technique utilizes SAT-solver based bounded constraint solving within a custom search algorithm. The proposed technique is also compared to an alternative model checking of Computational Tree Logic technique. The proposed technique can assist in providing an early warning for a mission critical system such as the power grid prior to an emerging catastrophic failure.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Notes

  1. Defining it as an Expression would work too, but an instance solution reported by Kodkod provides assignments to Relations, not Expressions.

References

  1. Bjørner N, Browne A, Chang E, Colón M, Kapur A, Manna Z, Sipma HB, Uribe TE (1996) STeP: Deductive-Algorithmic Verification of Reactive and Real-time Systems. In: Proceedings of 8th International Conference Computer Aided Verification, LNCS 1102. Springer, pp 415–418

  2. Bozga M, Daws C, Maler O, Olivero A, Tripakis S, Yovine S (1998) Kronos: A Model-Checking Tool for Real-Time Systems. In: Hu AJ, Vardi MY (eds) Proceedings of 10th Internationla Conference Computer-Aided Verification, LNCS 1427. Springer, pp 546–550

  3. Burch JR, Clarke EM, McMillan KL, Dill DL, Hwang LJ (1990) Symbolic Model Checking: 10\(^{20}\) States and Beyond. In: Proceedings of 5th Annual Symposium on Logic in Computer Science, June 1990

  4. Clarke EM, Emerson EA (1981) Design and Synthesis of Synchronization Skeletons Using Branching Time Temporal Logic. In: Kozen D (ed) Proceedings of Workshop on Logic of Programs, LNCS 131. Springer, pp 52–71

  5. Drusinsky D (2000) The Temporal Rover and the ATG Rover. In: Proceedings of SPIN, (2000) Workshop, LNCS 1885. Springer, pp 323–329

  6. Drusinsky D (2006) Modeling and Verification Using UML Statecharts—A Working Guide to Reactive System Design. Elsevier, Runtime Monitoring and Execution-based Model Checking

  7. Drusinsky D (2011) Practical UML-based Specification, Validation, and Verification of Mission-critical Software. Space Exploration and Defense Software Examples in Practice. ISBN: 978-145750-494-5, Dog-Ear Publishing

  8. Drusinsky D (2014) Computer-aided discovery of formal specification behavioral requirements and requirement to implementation mappings. Innovations Syst Softw Eng 10:271–281. doi:10.1007/s11334-014-0235-1

    Article  Google Scholar 

  9. Drusinsky D, Michael JB, Shing M (2008) A visual tradeoff space for formal verification and validation techniques. IEEE Syst J 2(4):513–519

    Article  Google Scholar 

  10. Drusinsky D, Shing M (2010) Validating Quality Attribute Requirements via Execution-based Model Checking. In: Proceedings of 21st IEEE International Symposium on Rapid Systems Prototyping, George Mason University, Fairfax, VA, 8–11 June

  11. Drusinsky D, Michael JB, Otani T, Shing M (2008) Validating UML Statechart-Based Assertions Libraries for Improved Reliability and Assurance. In: Proceedings of 2nd International Conference on Secure System Integration and Reliability Improvement, Yokohama, Japan, 14–17 July, pp 47–51

  12. Gordon MJC, Melham TF (eds) (1993) Introduction to HOL: a theorem proving environment for higher order logic. Cambridge University Press, Cambridge

    MATH  Google Scholar 

  13. Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8(3):231–274

    Article  MATH  MathSciNet  Google Scholar 

  14. Havelund K, Pressburger T (2000) Model Checking Java Programs using Java PathFinder. Int J Softw Tools Technol Transf 2(4):366–381

    Article  MATH  Google Scholar 

  15. Havelund K, Rosu G (2004) An Overview of the Runtime Verification Tool Java PathExplorer. Formal Methods in System Design, vol 24. Springer, Netherlands, pp 189–215

  16. Holzmann G (1997) The Model Checker SPIN. IEEE Trans Softw Eng 23(5):279–295

    Article  MathSciNet  Google Scholar 

  17. Hopcroft JE, Ullman JD (2006) Introduction to automata theory, languages, and computation. Addison Wesley

  18. Nitsche U (1994) Propositional Linear Temporal Logic and Language Homomorphisms. In: Proceedings of 3rd International Symposium on Logical Foundations Computer Science, LNCS 813. Springer, pp 265–277

  19. Kodkod, A Constraint Solver for Relational Logic, http://alloy.mit.edu/kodkod/

  20. Larsen KG, Pettersson P, Yi W (1997) UPPAAL in a Nutshell. Int J Softw Tools Technol Transf 1(1–2):134–152

    Article  MATH  Google Scholar 

  21. Meiera A, Mundhenkb M, Thomasa M, Vollmera H (2008) The Complexity of Satisfiability for Fragments of CTL and CTL*Electronic Notes in Theoretical Computer Science, vol 223, 26 December 2008, pp 201–213

  22. NuSMV: a new symbolic model checker, http://nusmv.fbk.eu/

  23. Paulson LC (1994) Isabelle: A Generic Theorem Prover, LNCS 828. Springer

  24. Sammapun U, Lee I, Sokolsky O (2005) RT-MaC: Runtime Monitoring and Checking of Quantitative and Probabilistic Properties. In: Proceedings of 11th IEEE International Conference Embedded and Real-Time Computing Systems and Applications, pp 147–153

  25. Zhang L, Malik S (2002) The Quest for Efficient Boolean Satisfiability Solvers. In: Proceedings of 14th Conference on Computer Aided Verification (CAV2002), Copenhagen, Denmark, July, pp 17–36

Download references

Acknowledgments

This research was funded by a grant from the US Defense Threat Reduction Agency (DTRA).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Doron Drusinsky.

Additional information

This research was funded by a grant from the US Defense Threat Reduction Agency (DTRA). The views expressed in this document are those of the author and do not reflect the official policy or position of the Department of Defense or the US Government.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Drusinsky, D. Early detection of evolving system failures and temporal conflicts using parameterized formal specifications and bounded constraint-solving. Innovations Syst Softw Eng 11, 143–152 (2015). https://doi.org/10.1007/s11334-015-0244-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11334-015-0244-8

Keywords

Mathematics Subject Classification

Navigation