Abstract
We present a methodology for constructing abstractions and refining them by analyzing counter-examples. We also present a uniform verification method that combines abstraction, model-checking and deductive verification. In particular, it shows how to use the abstract system in a deductive proof even when the abstract model does not satisfy the specification and when it simulates the concrete system with respect to a weaker notion of simulation than Milner’s.
ERIMAG is a research laboratory associated with CNRS, Université Joseph Fourier and Institut Nationale Polytechnique de Grenoble
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
P. Abdulla, A. Bouajjani, B. Jonsson, and M. Nilsson. Handling Global Conditions in Parameterized System Verification. In N. Halbwachs and D. Peled, editors, CAV’ 99, volume 1633 of LNCS, pages 134-145. Springer-Verlag, 1999.
A. Annichini, A. Bouajjani, Y. Lakhnech, and M. Sighireanu. Analyzing fair parametric extended automata. In P. Cousot, editor, Proceedings of the International Symposium on Static Analysis, volume 2126 of lncs. springer, 2001.
F. Balarin and A. Sangivanni-Vincentelli. An iterative approach to language containment. In 5th Workshop on Computer-Aided Verification (CAV93). LNCS 697, Springer Verlag, June 1993.
K. Baukus, S. Bensalem, Y. Lakhnech, and K. Stahl. Abstracting WS1S Systems to Verify Parameterized Networks. In S. Graf and M. Schwartzbach, editors, TACAS’00, volume 1785 of LNCS. Springer-Verlag, 2000.
K. Baukus, Y. Lakhnech, and K. Stahl. Verification of parameterized networks. Journal of Universal Computer Science, 7(2), 2001.
S. Bensalem and Y. Lakhnech. Automatic generation of invariants. Formal Methods in System Design, 15(1):75–92, July 1999.
S. Bensalem, Y. Lakhnech, and S. Owre. Computing abstractions of infinite state systems automatically and compositionally. In A. J. Hu and M. Y. vardi, editors, Computer Aided Verification, volume 1427 of LNCS, pages 319-331. SpringerVerlag, 1998.
S. Bensalem, Y. Lakhnech, and S. Owre. Invest: A tool for the verification of invariants. In A. J. Hu and M. Y. vardi, editors, Computer Aided Verification, volume 1427 of LNCS, pages 505-510. Springer-Verlag, 1998.
S. Bensalem, Y. Lakhnech, and H. Saidi. Automatic generation of invariants. 996.
N. Bjørner, A. Browne, and Z. Manna. Automatic generation of invariants and intermediate assertions. Theoretical Computer Science, 173(1):49–87, 1997.
A. Bouajjani, S. Bensalem, C. Loiseaux, and J. Sifakis. Property preserving simulations. In Workshop on Computer-Aided Verification (CAV), Montréal. LNCS 630, June 1992.
A. Bouajjani, J. C. Fernandez, and N. Halbwachs. Minimal model generation. In Workshop on Computer-aided Verification. Rutgers — American Mathematical Society, Association for Computing Machinery, June 1990.
A. Bouajjani, Y. Lakhnech, and S. Yovine. Model checking for extended timed temporal logics. In B. Jonsson and J. Parrow, editors, 4th International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems FTRTFT’96, volume 1135 of LNCS, pages 306-326. Springer-Verlag, 1996.
E. Clarke, O. Grumberg, S. Jha, Y. Lu, and H. Veith. Counterexample-guided abstraction refinement. In Computer Aided Verification, LNCS, pages 154-169. Springer-Verlag, 2000.
E. Clarke, O. Grumberg, and D. Long. Model checking and abstraction. ACM Transactions on Programming Languages and Systems, 16(5):1512–1542, Sept. 1994.
M. A. Colon and T. E. Uribe. Generating finite-state abstractions of reactive systems using decision procedures. Lecture Notes in Computer Science, 1427:293–304, 1998.
J. C. Corbett, M. B. Dwyer, J. Hatcliff, S. Laubach, C. S. Pasareanu, Robby, and H. Zheng. Bandera: Extracting finite-state models from java source code. In 22nd International Conference on Software Engineering, 2000.
P. Cousot and R. Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In 4th POPL, Jan. 1977.
P. Cousot and R. Cousot. Systematic design of program analysis framework. In Proc. 6th ACM Symp. on Principle of Programming Languages, 1979.
P. Cousot and R. Cousot. Constructing program invariance proof methods. In Int. Worksh. on Program Construction, Chateau Bonas. INRIA, France, 1980.
D. Dams. Abstract interpretation and partition refinement for model checking. Phd thesis, Technical University of Eindhoven, July 1996.
D. Dams, O. Grumberg, and R. Gerth. Generation of reduced models for checking fragments of CTL. In Proceedings of CAV’93, Crete (GR), volume 697, pages 479-490. Lecture Notes in Computer Science, 1993.
S. Das, D. Dill, and S. Park. Experience with predicate abstraction. In 11th International Conference on Computer-Aided Verification.
J. de Bakker. Mathematical Theory of Program Cortrectness. Prentice-Hall, NJ, 1980.
J. Dingel and T. Filkorn. Model checking for infinite state systems using data abstraction, assumption-committment style reasoning and theorem proving. In Proc. of 7th CAV 95, Liège. LNCS 939, Springer Verlag, 1995.
S. Graf. Verification of a distributed cache memory by using abstractions. In Conference on Computer Aided Verification CAV’94, Stanford. LNCS 818, Springer Verlag, June 1994. a largely improved and extended version appeared in Distributed Computing.
S. Graf. Characterization of a sequentially consistent memory and verification of a cache memory by abstraction. Distributed Computing, 12, 1999. accepted for publication since 1995.
S. Graf and C. Loiseaux. Program verification using compositional abstraction. In TAPSOFT 93, joint conference CAAP/FASE. LNCS 668, Springer Verlag, Apr. 1993.
S. Graf and C. Loiseaux. A tool for symbolic program verification and abstraction. In Conference on Computer Aided Verification CAV 93, Heraklion Crete. LNCS 697, Springer Verlag, 1993.
S. Graf and H. Saidi. Construction of abstract state graphs with pvs. In Conference on Computer Aided Verification CAV’97, Haifa, volume 1254 of LNCS, June 1997.
N. Halbwachs, Y.-E. Proy, and P. Raymond. Verification of linear hybrid systems by means of convex approximations. In International Static Analysis Symposium, SAS’94, Namur (Belgium), September 1994.
J. Hatcliff, M. B. Dwyer, S. Laubach, and D. Schmidt. Staging static analyses using abstraction-based program specialization. In Principles of Declarative Programming: 10th International Symposium, PLILP’98, LNCS 1490, 1998.
K. Havelund and N. Shankar. Experiments in theorem proving and model checking for protocol verification. In Proceedings of Formal Methods in Europe’96, 1996.
M. R. Henzinger, T. A. Henzinger, and P. W. Kopke. Computing simulations on finite and infinite graphs. In 36th Annual Symposium on Foundations of Computer Science (FOCS’95), pages 453-462, Los Alamitos, Oct. 1995. IEEE Computer Society Press.
B. Jeannet, N. Halbwachs, and P. Raymond. Dynamic partitioning in analyses of numericalproperties. In Static Analysis Symposium, SAS’99, Venezia (Italy), Sept. 1999.
R. Kurshan. Analysis of discrete event coordination. In REX Workshop on Stepwise Refinement of Distributed Systems, Mook. LNCS 430, Springer Verlag, 1989.
R. Kurshan. Computer-Aided Verification of Coordinating processes, the automata theoretic approach. Princeton Series in Computer Science. Princeton University Press, 1994.
Y. Lakhnech, S. Bensalem, S. Berezin, and S. Owre. Incremental verification by abstraction. In TACAS 2001, volume 2031 of lncs, 2001.
K. Larsen. Modal specifications. In Workshop on Automatic Verification Methods for Finite State Systems, Grenoble. LNCS 407, Springer Verlag, 1989.
K. G. Larsen, B. Steffen, and C. Weise. A constraint oriented proof methodology. In Workshop on Tools and Algorithms for the Construction and Analysis of Systems, TACAS’95, pages 17-40. LNCS vol. 1019, 1995.
D. Lee and M. Yannakakis. Online minimization of transition systems (extended abstract). In Proceedings of the Twenty-Fourth Annual ACM Symposium on the Theory of Computing, pages 264-274, Victoria, British Columbia, Canada, 4–6 May 1992.
D. Lesens and H. Säïdi. Automatic verification of parameterized networks of processes by abstraction. In Proceedings of the 2nd International Workshop on the Verification of Infinite State Systems (INFINITY’97, Bologna, Italy), July 1997.
C. Loiseaux, S. Graf, J. Sifakis, A. Bouajjani, and S. Bensalem. Property preserving abstractions for the verification of concurrent systems. Formal Methods in System Design, Vol 6, Iss 1, January 1995, 1995.
Z. Manna and A. Pnueli. The temporal Logic of reactive and concurrent systems, Volume 2: Verification, 1995. Springer Verlag, 1995.
Z. Manna and A. Pnueli. Verification of parameterized programs. In E. Bürger, editor, Specification and Validation Methods, pages 167–230. Oxford University Press, Oxford, 1995.
R. Milner. An algebraic definition of simulation between programs. In Proc. Second Int. Joint Conf. on Artificial Intelligence, pages 481-489. BCS, 1971.
R. Milner. A calculus of communication systems. In LNCS 92. Springer Verlag, 1980.
O. Müller and T. Nipkow. Combining model checking and deduction for I/O-automata. In Tools and Algorithms for the Construction and Analysis of Systems, volume 1019 of LNCS, 1995.
K. S. Namjoshi and R. P. Kurshan. Syntactic program transformations for automatic abstraction. In Computer Aided Verification, LNCS, pages 435-449. Springer-Verlag, 2000.
S. Owre, J. Rushby, N. Shankar, and M. Srivas. PVS: Combining specification, proof checking and model-checking. In CAV’96, volume 1102 of LNCS, 1196.
D. Park. Concurrency and automata on infinite sequences. In 5th GI-Conference on Theoretical Computer Science, number 104. LNCS, 1981.
H. Sipma, T. Uribe, and Z. Manna. Deductive model checking. In R. Alur and T. Henzinger, editors, 8th International Conference on Computer Aided Verification, volume 1102 of LNCS, pages 208-219. Springer-Verlag, 1996.
J. X. Su, D. L. Dill, and C. Barrett. Automatic generation of invariants in processor verification. In FMCAD’ 96, volume 1166 of LNCS, 1996.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Bensalem, S., Graf, S., Lakhnech, Y. (2003). Abstraction as the Key for Invariant Verification. In: Dershowitz, N. (eds) Verification: Theory and Practice. Lecture Notes in Computer Science, vol 2772. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39910-0_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-39910-0_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21002-3
Online ISBN: 978-3-540-39910-0
eBook Packages: Springer Book Archive