Advertisement

ACSAR: Software Model Checking with Transfinite Refinement

  • Mohamed Nassim Seghir
  • Andreas Podelski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4595)

Abstract

ACSAR (Automatic Checker of Safety properties based on Abstraction Refinement) is a software model checker for C programs in the spirit of Blast [6], F-Soft [7], Magic [5] and Slam [1]. It is based on the counterexample-guided abstraction refinement (CEGAR) paradigm. Its specificity lies in the way it overcomes a problem common to all tools based on this paradigm. The problem arises from creating more and more spurious counterexamples by unfolding the same (while- or for-) loop over and over again; this leads to an infinite or at least too large sequence of refinement steps. The idea behind ACSAR is to abstract not just states but also the state changes induced by structured program statements, including for- and while-statements. The use of the new abstraction allows one to shortcut such a “transfinite” sequence of refinement steps.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ball, T., Rajamani, S.K.: The Slam project: debugging system software via static analysis. In: POPL, pp. 1–3 (2002)Google Scholar
  2. 2.
    Cook, B., Podelski, A., Rybalchenko, A.: Abstraction refinement for termination. In: Hankin, C., Siveroni, I. (eds.) SAS 2005. LNCS, vol. 3672, Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Daum, M., Maus, S., Schirmer, N., Nassim Seghir, M.: Integration of a software model checker into Isabelle. In: LPAR, pp. 381–395 (2005)Google Scholar
  4. 4.
    Detlefs, D., Nelson, G., Saxe, J.B.: Simplify: A theorem prover for program checking. Technical Report HPL-2003-148, HP Lab (2003)Google Scholar
  5. 5.
    Chaki, S., et al.: Modular verification of software components in C. In: ICSE, pp. 385–395 (2003)Google Scholar
  6. 6.
    Thomas, A.: Henzinger: Software verification with BLAST. In: Ball, T., Rajamani, S.K. (eds.) Model Checking Software. LNCS, vol. 2648, pp. 235–239. Springer, Heidelberg (2003)Google Scholar
  7. 7.
    Ivancic, F., Shlyakhter, I., Gupta, A., Ganaim, M.K.: Model checking C programs using F-soft. In: ICCD, pp. 297–308 (2005)Google Scholar
  8. 8.
    Jhala, R., McMillan, K.L.: A practical and complete approach to predicate refinement. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006 and ETAPS 2006. LNCS, vol. 3920, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  9. 9.
    Karr, M.: Affine relationships among variables of a program. Acta Inf. 6, 133–151 (1976)MATHCrossRefGoogle Scholar
  10. 10.
    Schirmer, N.: A verification environment for sequential imperative programs in Isabelle/HOL. In: Baader, F., Voronkov, A. (eds.) LPAR 2004. LNCS (LNAI), vol. 3452, Springer, Heidelberg (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Mohamed Nassim Seghir
    • 1
  • Andreas Podelski
    • 1
  1. 1.Universität Freiburg, Georges-Köhler-Allee 52, 79110 FreiburgGermany

Personalised recommendations