Abstract
Based on the underlying control flow graphs of programs, model checking can be applied to software for effective verification. However, state space explosion forms a major bottleneck that blocks the development of software model checking. Undoubtedly, how to achieve proper abstract models of programs is a key problem. In this paper, instead of the traditional abstraction-refinement method, we present a new abstract model checking approach for efficient verification of software in large scale by utilizing SOFL hierarchy. Within this approach, programs are verified from the high-level to low-level structures, and the state space throughout the verification can be effectively controlled.
This work is supported in part by Hosei University HIF Fellowship, Okawa Foundation, NSFC Grant (No. 61003078, 61272117, 61133001 and 60910004), 973 Program of China Grant (No. 2010CB328102), and ISN Lab Grant No. ISN1102001.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 52–71. Springer, Heidelberg (1982)
Quielle, J.P., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: Dezani-Ciancaglini, M., Montanari, U. (eds.) Programming 1982. LNCS, vol. 137, pp. 337–351. Springer, Heidelberg (1982)
Clarke, E.M., Grumber, O., Peled, D.: Model Checking. MIT Press (2000)
Jhala, R., Majumdar, R.: Software model checking. ACM Comput. Surv. 41(4) (2009)
Beyer, D., Henzinger, T.A., Jhala, R., Majumdar, R.: The software model checker Blast. Software Tools for Technology Transfer 9(5-6), 505–525 (2007)
Corbett, J., Dwyer, M., Hatcliff, J., Pasareanu, C., Robby, L.S., Zheng, H.: Bandera: Extracting finite-state models from Java source code. In: ICSE 2000: Software Engineering, pp. 439–448 (2000)
Havelund, K., Pressburger, T.: Model checking Java programs using Java Pathfinder. Software Tools for Technology Transfer (STTT) 2(4), 72–84 (2000)
Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 154–169. Springer, Heidelberg (2000)
Clarke, E.M., Gupta, A., Strichman, O.: SAT Based Counterexample-Guided Abstraction-Refinement. IEEE Trans. Computer Aided Design 23(7), 1113–1123 (2004)
Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-Guided Abstraction Refinement for Symbolic Model Checking. J. ACM 50(5), 752–794 (2003)
Saïdi, H., Shankar, N.: Abstract and model check while you prove. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 443–454. Springer, Heidelberg (1999)
Dwyer, M.B., Hatcliff, J.: Slicing Software for Model Construction. In: PEPM 1999, pp. 105–118 (1999)
Godefroid, P., Wolper, P.: A Partial Approach to Model Checking. Inf. Comput. 110(2), 305–326 (1994)
Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic Model Checking: 1020 States and Beyond. In: LICS 1990, pp. 428–439 (1990)
Biere, A., Cimatti, A., Clarke, E.M., Strichman, O., Zhu, Y.: Bounded model checking. Advances in Computers 58, 118–149 (2003)
Tian, C., Duan, Z.: Making Abstraction-Refinement Efficient in Model Checking. In: Fu, B., Du, D.-Z. (eds.) COCOON 2011. LNCS, vol. 6842, pp. 402–413. Springer, Heidelberg (2011)
He, F., Song, X., Hung, W.N.N., Gu, M., Sun, J.: Integrating Evolutionary Computation with Abstraction Refinement for Model Checking. IEEE Trans. Computers 59(1), 116–126 (2010)
Liu, S., Nagoya, F., Chen, Y., Goya, M., McDermid, J.A.: An Automated Approach to Specification-Based Program Inspection. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785, pp. 421–434. Springer, Heidelberg (2005)
Liu, S.: Formal Engineering for Industrial Software Development Using the SOFL Method. Springer, Berlin, ISBN 3-540-20602-7
Liu, S., McDermid, J.A., Chen, Y.: A Rigorous Method for Inspection of Model-Based Formal Specifications. IEEE Transactions on Reliability 59(4), 667–684 (2010)
Holzmann, G.J.: The Model Checker Spin. IEEE Trans. on Software Engineering 23(5), 279–295 (1997)
Pnueli, A.: The temporal logic of programs. In: Proceedings of the 18th IEEE Symposium on Foundations of Computer Science, pp. 46–67. IEEE, New York (1977)
Kripke, S.A.: Semantical analysis of modal logic I: Normal propositional calculi. Z. Math. Logik Grund. Math. 9, 67–96 (1963)
D’Silva, V., Kroening, D., Weissenbacher, G.: A Survey of Automated Techniques for Formal Software Verification. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 27(7), 1165–1178 (2008), doi:10.1109/TCAD.2008.923410
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tian, C., Liu, S., Duan, Z. (2013). Abstract Model Checking with SOFL Hierarchy. In: Liu, S. (eds) Structured Object-Oriented Formal Language and Method. SOFL 2012. Lecture Notes in Computer Science, vol 7787. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39277-1_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-39277-1_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-39276-4
Online ISBN: 978-3-642-39277-1
eBook Packages: Computer ScienceComputer Science (R0)