We’re sorry, something doesn't seem to be working properly.

Please try refreshing the page. If that doesn't work, please contact support so we can address the problem.

Skip to main content
Log in

BMC via on-the-fly determinization

    We’re sorry, something doesn't seem to be working properly.

    Please try refreshing the page. If that doesn't work, please contact support so we can address the problem.

  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

This paper develops novel bounded model checking (BMC) techniques for asynchronous parallel systems. The aim is to increase the efficiency of BMC by exploiting the inherent concurrency in such systems. This added efficiency is gained by covering more reachable states within a given bound using two techniques. Firstly, a nonstandard execution model, step executions, where multiple actions can take place simultaneously is applied. Secondly, the number of executions the system can have is reduced by modeling the execution of the system components as if they were determinized. This determinization technique also enables the removal of the internal transitions of the components. Step executions can be further restricted to a subclass called process executions without losing any reachable states.

The paper presents a translation scheme for BMC of reachability properties. The translation is from an asynchronous system where the components are modeled as labeled transition systems (LTSs) to a propositional formula. The models of the formula correspond to the step executions of the original system where each component is replaced with its determinized counterpart. The formula for step executions can be easily extended in such a way that its models correspond to the process executions of the system. The translation scheme has been implemented and some experimental comparisons performed. The results show that the bound needed to detect a violation of a reachability property is, for step and process executions, in most cases lower than in interleaving executions and that the running time of the model checker using process executions is smaller than of that using steps. Moreover, the performance compares favorably to a state-of-the-art interleaving BMC implementation in the NuSMV system.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Biere A, Cimatti A, Clarke E, Zhu Y (1999) Symbolic model checking without BDDs. In: Tools and Algorithms for the Construction and Analysis of Systems (TACAS’1999). Lecture notes in computer science, vol 1579. Springer, Berlin Heidelberg New York, pp 193–207

  2. Biere A, Clarke E, Raimi R, Zhu Y (2000) Verifying safety properties of a PowerPC microprocessor using symbolic model checking without BDDs. In: Formal Methods in Computer Aided Design. Lecture notes in computer science, vol 1633. Springer, Berlin Heidelberg New York, pp 60–71

  3. Bjesse P, Leonard T, Mokkedem A (2001) Finding bugs in Alpha microprocessor using satisfiability solvers. In: Proceedings of the 13th international conference of computer aided verification (CAV’2001). Lecture notes in computer science, vol 2102. Springer, Berlin Heidelberg New York, pp 454–464

  4. Cimatti A, Clarke EM, Giunchiglia E, Giunchiglia F, Pistore M, Roveri M, Sebastiani R, Tacchella A (2002) NuSMV 2: An opensource tool for symbolic model checking. In: Proceedings of the 14th international conference on computer-aided verification (CAV’2002), July 2002. Lecture notes in computer science, vol 2404. Springer, Berlin Heidelberg New York, pp 359–364

  5. Cimatti A, Pistore M, Roveri M, Sebastiani R (2002) Integrating BDD-based and SAT-based symbolic model checking. In: Proceedings of the 4th international workshop on frontiers of combining systems, April 2002

  6. Corbett JC (1996) Evaluating deadlock detection methods for concurrent software. IEEE Trans Softw Eng 22(3):161–180

    Article  Google Scholar 

  7. Diekert V, Métivier Y (1997) Partial commutation and traces. In: Handbook of formal languages, vol 3. Springer, Berlin Heidelberg New York, pp 457–534

  8. Heljanko K (2001) Bounded reachability checking with process semantics. In: Proceedings of the 12th international conference on concurrency theory (CONCUR’2001), August 2001, pp 218–232

  9. Heljanko K, Niemelä I (2003) Bounded LTL model checking with stable models. Theory Pract Logic Programm 3(4&5):519–550

  10. Holzmann GJ (1991) Design and validation of computer protocols. Prentice Hall, Upper Saddle River, NJ

  11. Junttila TA (2003) Boolean circuit tools (including BCZChaff), May. http://www.tcs.hut.fi/tjunttil/circuits

  12. Junttila TA, Niemelä I (2000) Towards an efficient tableau method for boolean circuit satisfiability testing. In: 1st internatinal conference on computational logic (CL 2000), London, July 2000. Lecture notes in artificial intelligence, vol 1861. Springer, Berlin Heidelberg New York, pp 553–567

  13. Jussila T (2003) A BMC tool translating LTSs to boolean circuits, May. http://www.tcs.hut.fi/tjussila/otf

  14. Latvala T (2003) Efficient model checking of safety properties. In: 10th international SPIN workshop on model checking software. Lecture notes in computer science, vol 2648. Springer, Berlin Heidelberg New York, pp 74–88

  15. Melzer S, Römer S (1997) Deadlock checking using net unfoldings. In: Proceeding of the 9th international conference on computer aided verification (CAV’97), June 1997. Lecture notes in computer science, vol 1254. Springer, Berlin Heidelberg New York, pp 352–363

  16. Moskewicz M, Madigan Y, Zhao L, Zhang L, Malik S (2001) Chaff: engineering an efficient SAT solver. In: 39th conference on design automation, July 2001

  17. Papadimitriou C, Lewis H (1981) Elements of the theory of computation. Prentice Hall, Upper Saddle River, NJ

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Toni Jussila.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Jussila, T., Heljanko, K. & Niemelä, I. BMC via on-the-fly determinization. Int J Softw Tools Technol Transfer 7, 89–101 (2005). https://doi.org/10.1007/s10009-004-0178-1

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-004-0178-1

Keywords

Navigation