Skip to main content

Counter-Example Based Predicate Discovery in Predicate Abstraction

  • Conference paper
  • First Online:
Formal Methods in Computer-Aided Design (FMCAD 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2517))

Included in the following conference series:

Abstract

The application of predicate abstraction to parameterized systems requires the use of quantified predicates. These predicates cannot be found automatically by existing techniques and are tedious for the user to provide. In this work we demonstrate a method of discovering most of these predicates automatically by analyzing spurious abstract counter-example traces. Since predicate discovery for unbounded state systems is an undecidable problem, it can fail on some problems. The method has been applied to a simplified version of the Ad hoc On-Demand Distance Vector Routing protocol where it successfully discovers all required predicates.

This work was supported by National Science Foundation under grant number 0121403 and DARPA contract 00-C-8015. The content of this paper does not necessarily reflect the position or the policy of the Government and no official endorsement should be inferred.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. David L. Dill Aaron Stump, Clark W. Barrett. CVC: a cooperating validity checker. In Conference on Computer Aided Verification, Lecture notes in Computer Science. Springer-Verlag, 2002.

    Google Scholar 

  2. R. Alur, A. Itai, R.P. Kurshan, and M. Yannakakis. Timing verification by successive approximation. Information and Computation 118(1), pages 142–157, 1995.

    Article  MATH  MathSciNet  Google Scholar 

  3. F. Balarin and A. L. Sangiovanni-Vincentelli. An iterative approach to language containment. In 5th International Conference on Computer-Aided Verification, pages 29–40. Springer-Verlag, 1993.

    Google Scholar 

  4. Thomas Ball and Sriram K. Rajamani. The SLAM project: debugging system software via static analysis. In Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 1–3. ACM Press, 2002.

    Google Scholar 

  5. Saddek Bensalem, Yassine Lakhnech, and Sam Owre. InVeSt: A tool for the verification of invariants. In 10th International Conference on Computer-Aided Verification, pages 505–510. Springer-Verlag, 1998.

    Google Scholar 

  6. Karthikeyan Bhargavan, Davor Obradovic, and Carl A. Gunter. Formal verification of standards for distance vector routing protocols, August 1999. Presented in the Recent Research Session at Sigcomm 1999.

    Google Scholar 

  7. Edmund M. Clarke, Orna Grumberg, Somesh Jha, Yuan Lu, and Helmut Veith. Counterexample-guided abstraction refinement. In Computer Aided Verification, pages 154–169. Springer-Verlag, 2000.

    Google Scholar 

  8. Michael A. Colón and Tomás E. Uribe. Generating finite-state abstractions of reactive systems using decision procedures. In Conference on Computer-Aided Verification, volume 1427 of Lecture Notes in Computer Science, pages 293–304. Springer-Verlag, 1998.

    Chapter  Google Scholar 

  9. Satyaki Das and David L. Dill. Successive approximation of abstract transition relations. In Proceedings of the Sixteenth Annual IEEE Symposium on Logic in Computer Science, pages 51–60. IEEE Computer Society, 2001. June 2001, Boston, USA.

    Google Scholar 

  10. C. Flanagan and S. Qadeer. Predicate abstraction for software verification. In Proceedings of the 29th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM Press, 2002.

    Google Scholar 

  11. Susanne Graf and Hassen Saïdi. Construction of abstract state graphs with PVS. In Orna Grumberg, editor, Conference on Computer Aided Verification, volume 1254 of Lecture notes in Computer Science, pages 72–83. Springer-Verlag, 1997. June 1997, Haifa, Israel.

    Google Scholar 

  12. Yassine Lakhnech, Saddek Bensalem, Sergey Berezin, and Sam Owre. Incremental verification by abstraction. In T. Margaria and W. Yi, editors, Tools and Algorithms for the Construction and Analysis of Systems: 7th International Conference, TAC AS 2001, pages 98–112, Genova, Italy, 2001. Springer-Verlag.

    Google Scholar 

  13. D. Lessens and Hassen Saïdi. Automatic verification of parameterized networks of processes by abstraction. Electronic Notes of Theoretical Computer Science (ENTCS), 1997.

    Google Scholar 

  14. Z. Manna and A. Pnueli. Temporal Verification of Reactive Systems: Safety. Springer-Verlag, 1995.

    Google Scholar 

  15. Charles E. Perkins and Elizabeth M. Royer. Ad Hoc On-Demand Distance Vector (AODV) Routing. In Workshop on Mobile Computing Systems and Applications, pages 90–100. ACM Press, February 1999.

    Google Scholar 

  16. Charles E. Perkins, Elizabeth M. Royer, and Samir Das. Ad Hoc On-Demand Distance Vector (AODV) Routing. Available at http://www.ietf.org/internet-drafts/draft-ietf-manet-aodv-05.txt, 2000.

  17. A. P. Sistla and S. M. German. Reasoning with many processes. In Symp. on Logic in Computer Science, Ithaca, pages 138–152. IEEE Computer Society, June 1987.

    Google Scholar 

  18. Rupak Majumdar Thomas A Henzinger, Ranjit Jhala and Gregoire Sutre. Lazy abstraction. In Proceedings of the 29th ACM SIGPLAN-SIGACT Conference on Principles of Programming Languages. ACM Press, 2002.

    Google Scholar 

  19. A. Tiwari, H. Rueβ, H. Saïdi, and N. Shankar. A technique for invariant generation. In Tiziana Margaria and Wang Yi, editors, TACAS 2001-Tools and Algorithms for the Construction and Analysis of Systems, volume 2031 of Lecture Notes in Computer Science, pages 113–127, Genova, Italy, apr 2001. Springer-Verlag.

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Das, S., Dill, D.L. (2002). Counter-Example Based Predicate Discovery in Predicate Abstraction. In: Aagaard, M.D., O’Leary, J.W. (eds) Formal Methods in Computer-Aided Design. FMCAD 2002. Lecture Notes in Computer Science, vol 2517. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36126-X_2

Download citation

  • DOI: https://doi.org/10.1007/3-540-36126-X_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-00116-4

  • Online ISBN: 978-3-540-36126-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics