Developing Model Checkers Using PAT

  • Yang Liu
  • Jun Sun
  • Jin Song Dong
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6252)


During the last two decades, model checking has emerged as an effective system analysis technique complementary to simulation and testing. Many model checking algorithms and state space reduction techniques have been proposed. Although it is desirable to have dedicated model checkers for every language (or application domain), implementing one with effective reduction techniques is rather challenging. In this work, we present a generic and extensible framework PAT, which facilitates users to build customized model checkers. PAT provides a library of state-of-art model checking algorithms as well as support for customizing language syntax, semantics, state space reduction techniques, graphic user interfaces, and even domain specific abstraction techniques. Based on this design, model checkers for concurrent systems, real-time systems, probabilistic systems and Web Services are developed inside the PAT framework, which demonstrates the practicality and scalability of our approach.


Model Check Concurrent System Language Feature Symbolic Model Check Bound Model Check 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    PAT: Process Analysis Toolkit,
  2. 2.
    Ball, T., Cook, B., Levin, V., Rajamani, S.K.: SLAM and Static Driver Verifier: Technology Transfer of Formal Methods inside Microsoft. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 1–20. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  3. 3.
    Cimatti, A., Clarke, E.M., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R., Tacchella, A.: NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 359–364. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  4. 4.
    Dwyer, M.B., Hatcliff, J., Hoosier, M., Robby: Building Your Own Software Model Checker Using the Bogor Extensible Model Checking Framework. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 148–152. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  5. 5.
    Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Wiley, Chichester (2003)Google Scholar
  6. 6.
    Liu, Y., Chen, W., Liu, Y.A., Sun, J.: Model Checking Lineariability via Refinement. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 321–337. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Liu, Y., Pang, J., Sun, J., Zhao, J.: Efficient Verification of Population Ring Protocols in PAT. In: TASE 2009, pp. 81–89 (2009)Google Scholar
  8. 8.
    Liu, Y., Sun, J., Dong, J.S.: Scalable Multi-Core Model Checking Fairness Enhanced Systems. In: ICFEM 2009, pp. 426–445 (December 2009)Google Scholar
  9. 9.
    Magee, J., Kramer, J.: Concurrency: State Models & Java Programs. Wiley, Chichester (1999)zbMATHGoogle Scholar
  10. 10.
    Roscoe, A.W.: Model-checking CSP. In: A Classical Mind: Essays in Honour of C.A.R. Hoare, pp. 353–378 (1994)Google Scholar
  11. 11.
    Sun, J., Liu, Y., Dong, J.S.: Model Checking CSP Revisited: Introducing a Process Analysis Toolkit. In: ISoLA 2008, pp. 307–322. Springer, Heidelberg (2008)Google Scholar
  12. 12.
    Sun, J., Liu, Y., Dong, J.S., Chen, C.Q.: Integrating Specification and Programs for System Modeling and Verification. In: TASE 2009, pp. 127–135. IEEE Computer Society, Los Alamitos (2009)Google Scholar
  13. 13.
    Sun, J., Liu, Y., Dong, J.S., Pang, J.: PAT: Towards Flexible Verification under Fairness. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 702–708. Springer, Heidelberg (2009)Google Scholar
  14. 14.
    Sun, J., Liu, Y., Dong, J.S., Sun, J.: Bounded Model Checking of Compositional Processes. In: TASE 2008, pp. 23–30. IEEE Computer Society, Los Alamitos (2008)Google Scholar
  15. 15.
    Sun, J., Liu, Y., Dong, J.S., Wang, H.H.: Verifying Stateful Timed CSP using Implicit Clocks and Zone Abstraction. In: ICFEM 2009, pp. 581–600 (December 2009)Google Scholar
  16. 16.
    Sun, J., Liu, Y., Roychoudhury, A., Liu, S., Dong, J.S.: Fair Model Checking of Parameterized Systems. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 123–139. Springer, Heidelberg (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Yang Liu
    • 1
  • Jun Sun
    • 1
  • Jin Song Dong
    • 1
  1. 1.School of ComputingNational University of SingaporeSingapore

Personalised recommendations