Distributed Explicit State Model Checking of Deadlock Freedom

  • Brad Bingham
  • Jesse Bingham
  • John Erickson
  • Mark Greenstreet
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8044)


This paper presents a practical method and associated tool for verifying deadlock freedom properties in guarded command systems. Such properties are expressed in CTL as AGEF  q where q is a set of quiescent states. We require the user to provide transitions of the system that are “helpful” in reaching quiescent states. The distributed search constructs a path consisting of helpful transitions from each reachable state to a state that is either quiescent or is known to have a path to a quiescent state. We extended the PReach model-checker with these algorithms. Performance measurements on both academic and industrial large-scale models shows that the overhead of checking deadlock-freedom compared with state-space enumeration alone is small.


distributed model checking murphi deadlock-freedom liveness 


  1. 1.
    Holt, R.C.: Some deadlock properties of computer systems. ACM Computing Surveys 4(3), 179–196 (1972)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Bingham, B., Bingham, J., de Paula, F.M., Erickson, J., Singh, G., Reitblatt, M.: Industrial strength distributed explicit state model checking. In: Parallel and Distributed Model Checking (2010)Google Scholar
  3. 3.
    Bingham, B., Bingham, J., Erickson, J.: Preach online (2013),
  4. 4.
    Dill, D.L.: The murphi verification system. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 390–393. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  5. 5.
    Stern, U., Dill, D.L.: Parallelizing the murphi verifier. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 256–278. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  6. 6.
    Clarke Jr., E.M., Grumberg, O., Peled, D.A.: Model checking. MIT Press, Cambridge (1999)Google Scholar
  7. 7.
    Hassan, Z., Bradley, A.R., Somenzi, F.: Incremental, inductive CTL model checking. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 532–547. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  8. 8.
    Park, S., Dill, D.L.: Protocol verification by aggregation of distributed transactions. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 300–310. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  9. 9.
    Barnat, J., Brim, L., Češka, M., Lamr, T.: CUDA accelerated LTL Model Checking. In: ICPADS 2009. IEEE (2009)Google Scholar
  10. 10.
    Melatti, I., Palmer, R., Sawaya, G., Yang, Y., Kirby, R.M., Gopalakrishnan, G.: Parallel and distributed model checking in eddy. Int’l. J. Softw. Tools Technol. Transf. 11(1), 13–25 (2009)CrossRefGoogle Scholar
  11. 11.
    Iwashita, H., Nakata, T., Hirose, F.: CTL model checking based on forward state traversal. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 82–87. Springer, Heidelberg (1996)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Brad Bingham
    • 1
  • Jesse Bingham
    • 2
  • John Erickson
    • 2
  • Mark Greenstreet
    • 1
  1. 1.Department of Computer ScienceUniversity of British ColumbiaCanada
  2. 2.Intel CorporationUSA

Personalised recommendations