Abstract
The method of Invisible Invariants provides a way to verify safety properties of infinite parameterized classes of finite-state systems using finite-state model checking techniques. This paper looks at invisible invariants from the point of view of abstract interpretation. Viewed in this way, the method suggests a generic strategy for computing abstract fixed points in the case where the best abstract transformer has a high computational cost. This strategy requires only that we can reasonably segregate the infinite concrete state space into finite subsets of increasing size or complexity. We observe that in domains for which the computation of the best abstract transformer may require an exponential number of calls to a theorem prover, we can sometimes reduce the number of theorem prover calls to just one, without sacrificing accuracy.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Arons, T., Pnueli, A., Ruah, S., Xu, J., Zuck, L.D.: Parameterized verification with automatically computed inductive assertions. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, p. 221–234 Springer, Heidelberg (2001)
Berdine, J., Cook, B., Ishtiaq, S.: SLAyer: Memory safety for systems-level code. Technical Report 144848, MSR (2010); To appear in CAV 2011 (2011)
Balaban, I., Fang, Y., Pnueli, A., Zuck, L.D.: IIV: An invisible invariant verifier. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 408–412. Springer, Heidelberg (2005)
Bingham, J.D.: Automatic non-interference lemmas for parameterized model checking. In: Cimatti, A., Jones, R.B. (eds.) FMCAD, pp. 1–8. IEEE, Los Alamitos (2008)
Bryant, R.E., Lahiri, S.K., Seshia, S.A.: Modeling and verifying systems using a logic of counter arithmetic with lambda expressions and uninterpreted functions. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, p. 78. Springer, Heidelberg (2002)
Balaban, I., Pnueli, A., Zuck, L.D.: Invisible safety of distributed protocols. In: Bugliesi, M., Preneel, B., Sassone, V., Wegener, I. (eds.) ICALP 2006. LNCS, vol. 4052, pp. 528–539. Springer, Heidelberg (2006)
Balaban, I., Pnueli, A., Zuck, L.D.: Shape analysis of single-parent heaps. In: Cook, B., Podelski, A. (eds.) VMCAI 2007. LNCS, vol. 4349, pp. 91–105. Springer, Heidelberg (2007)
Cousot, P., Cousot, R.: Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: POPL, pp. 238–252 (1977)
Cousot, P., Cousot, R.: Systematic design of program analysis frameworks. In: POPL, pp. 269–282 (1979)
Cousot, P.: Semantic foundations of program analysis. In: Muchnick, S.S., Jones, N.D. (eds.) Program Flow Analysis - Theory and Applications. Prentice Hall software series, pp. 303–342. Prentice Hall, Englewood Cliffs (1981)
Dingel, J.: Systematic Parallel Programming. PhD thesis, Carnegie Mellon University (1999)
Fang, Y., Piterman, N., Pnueli, A., Zuck, L.D.: Liveness with invisible ranking. STTT 8(3), 261–279 (2006)
Godefroid, P., Nori, A.V., Rajamani, S.K., Tetali, S.: Compositional may-must program analysis: unleashing the power of alternation. In: POPL, pp. 43–56 (2010)
Lahiri, S.K.: Ubounded System Verification using decision Procedure and predicate abstraction. PhD thesis, Carnegie Mellon University (2004)
Lev-Ami, T., Sagiv, S.: TVLA: A system for implementing static analyses. In: SAS 2000, pp. 280–301. Springer, Heidelberg (2000)
Lahiri, S.K., Bryant, R.E., Cook, B.: A symbolic approach to predicate abstraction. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 141–153. Springer, Heidelberg (2003)
Monniaux, D.: Automatic modular abstractions for linear constraints. In: POPL 2009, pp. 140–151. ACM, New York (2009)
Pnueli, A., Shahar, E.: The TLV system and its applications. Technical report, The Weizmann Institute (1996)
Reps, T., Sagiv, M., Yorsh, G.: Symbolic implementation of the best transformer. In: Steffen, B., Levi, G. (eds.) VMCAI 2004. LNCS, vol. 2937, pp. 252–266. Springer, Heidelberg (2004)
van Eijk, C.A.J.: Sequential equivalence checking without state space traversal. In: Proceedings of the Conference on Design, Automation and Test in Europe, DATE 1998, pp. 618–623. IEEE Computer Society, Washington, DC, USA (1998)
Yorsh, G., Ball, T., Sagiv, M.: Testing, abstraction, theorem proving: better together? In: ISSTA, pp. 145–156 (2006)
Zuck, L.D., Pnueli, A.: Model checking and abstraction to the aid of parameterized systems (a survey). Computer Languages, Systems & Structures 30(3-4), 139–169 (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
McMillan, K.L., Zuck, L.D. (2011). Invisible Invariants and Abstract Interpretation. In: Yahav, E. (eds) Static Analysis. SAS 2011. Lecture Notes in Computer Science, vol 6887. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23702-7_20
Download citation
DOI: https://doi.org/10.1007/978-3-642-23702-7_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-23701-0
Online ISBN: 978-3-642-23702-7
eBook Packages: Computer ScienceComputer Science (R0)