skip to main content
10.1145/2568225.2568253acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Symbolic assume-guarantee reasoning through BDD learning

Published:31 May 2014Publication History

ABSTRACT

Both symbolic model checking and assume-guarantee reasoning aim to circumvent the state explosion problem. Symbolic model checking explores many states simultaneously and reports numerous erroneous traces. Automated assume-guarantee reasoning, on the other hand, infers contextual assumptions by inspecting spurious erroneous traces. One would expect that their integration could further improve the capacity of model checking. Yet examining numerous erroneous traces to deduce contextual assumptions can be very time-consuming. The integration of symbolic model checking and assume-guarantee reasoning is thus far from clear. In this paper, we present a progressive witness analysis algorithm for automated assume-guarantee reasoning to exploit a multitude of traces from BDD-based symbolic model checkers. Our technique successfully integrates symbolic model checking with automated assume-guarantee reasoning by directly inferring BDD's as implicit assumptions. It outperforms monolithic symbolic model checking in four benchmark problems and an industrial case study in experiments.

References

  1. R. Alur, P. Madhusudan, and W. Nam. Symbolic compositional verification by learning assumptions. In K. Etessami and S. K. Rajamani, editors, Computer Aided Verification, volume 3576 of Lecture Notes in Computer Science, pages 548–562. Springer, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. D. Angluin. Learning regular sets from queries and counterexamples. Information and Computation, 75(2):87–106, November 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. D. Beyer, T. A. Henzinger, and V. Singh. Algorithms for interface synthesis. In W. Damm and H. Hermanns, editors, Computer Aided Verification, volume 4590 of Lecture Notes in Computer Science, pages 4–19. Springer, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. B. Bollig, P. Habermehl, C. Kern, and M. Leucker. Angluin-style learning of NFA. In C. Boutilier, editor, International Joint Conferences on Artificial Intelligence, pages 1004–1009, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. A. J. N. Brad J. Cox. Object-Oriented Programming: An Evolutionary Approach. Addison-Wesley, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. N. H. Bshouty. Exact learning Boolean function via the monotone theory. Information and Computation, 123(1):146–153, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. J. R. Burch, E. M. Clarke, K. L. McMillan, D. L. Dill, and L. J. Hwang. Symbolic model checking: 10 20 states and beyond. Information and Computation, 98(2):142–170, June 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. S. Chaki, E. M. Clarke, N. Sinha, and P. Thati. Automated assume-guarantee reasoning for simulation conformance. In K. Etessami and S. K. Rajamani, editors, Computer Aided Verification, volume 3576 of Lecture Notes in Computer Science, pages 534–547. Springer, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. Chaki and O. Strichman. Optimized L ∗ -based assume-guarantee reasoning. In O. Grumberg and M. Huth, editors, Tools and Algorithms for the Construction and Analysis of Systems, volume 4424 of Lecture Notes in Computer Science, pages 276–291. Springer, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. D. Chaum. The dining cryptographers problem: Unconditional sender and recipient untraceability. Journal of Cryptology, 1(1):65–75, 1988. Google ScholarGoogle ScholarCross RefCross Ref
  11. Y.-F. Chen, E. M. Clarke, A. Farzan, F. He, M.-H. Tsai, Y.-K. Tsay, B.-Y. Wang, and L. Zhu. Comparing learning algorithms in automated assume-guarantee reasoning. In Leveraging Applications of Formal Methods, Verification and Validation (1), volume 6415 of Lecture Notes in Computer Science, pages 643–657. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Y.-F. Chen, E. M. Clarke, A. Farzan, M.-H. Tsai, Y.-K. Tsay, and B.-Y. Wang. Automated assume-guarantee reasoning through implicit learning. In T. Touili, B. Cook, and P. Jackson, editors, Computer Aided Verification, volume 6174 of Lecture Notes in Computer Science, pages 511–526. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Y.-F. Chen, A. Farzan, E. M. Clarke, Y.-K. Tsay, and B.-Y. Wang. Learning minimal separating DFA’s for compositional verification. In S. Kowalewski and A. Philippou, editors, Tools and Algorithms for the Construction and Analysis of Systems, volume 5505 of Lecture Notes in Computer Science, pages 31–45. Springer, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Y.-F. Chen and B.-Y. Wang. Learning boolean functions incrementally. In M. Parthasarathy and S. A. Seshia, editors, Computer Aided Verification, volume 7358 of Lecture Notes in Computer Science, pages 55–70. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. Cimatti, E. Clarke, F. Giunchiglia, and M. Roveri. NuSMV: a new Symbolic Model Verifier. In N. Halbwachs and D. Peled, editors, Computer Aided Verification, number 1633 in Lecture Notes in Computer Science, pages 495–499. Springer, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. E. M. Clarke, E. A. Emerson, and J. Sifakis. Model checking: Algorithmic verification and debugging. Communications of ACM, 52(11):74–84, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. E. M. Clarke, O. Grumberg, S. Jha, Y. Lu, and H. Veith. Counterexample-guided abstraction refinement for symbolic model checking. Journal of the ACM, 50(5):752–794, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. E. M. Clarke, O. Grumberg, and D. A. Peled. Model Checking. The MIT Press, Cambridge, Massachusetts, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. J. M. Cobleigh, G. S. Avrunin, and L. A. Clarke. Breaking up is hard to do: An evaluation of automated assume-guarantee reasoning. ACM Trans. Software Engineering Methodology, 17(2), 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. J. M. Cobleigh, D. Giannakopoulou, and C. S. Păsăreanu. Learning assumptions for compositional verification. In H. Garavel and J. Hatcliff, editors, Tools and Algorithms for the Construction and Analysis of Systems, volume 2619 of Lecture Notes in Computer Science, pages 331–346. Springer, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. W.-P. de Roever, F. de Boer, U. Hanneman, J. Hooman, Y. Lakhnech, M. Poel, and J. Zwiers. Concurrency Verification: Introduction to Compositional and Noncompositional Methods. Number 54 in Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. C. Flanagan and S. Qadeer. Predicate abstraction for software verification. In Principles of Programming Languages, pages 191–202. ACM, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. R. Gavaldà and D. Guijarro. Learning ordered binary decision diagrams. In K. P. Jantke, T. Shinohara, and T. Zeugmann, editors, Algorithmic Learning Theory, volume 997 of Lecture Notes in Computer Science, pages 228–238. Springer, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. M. Gheorghiu, D. Giannakopoulou, and C. S. Păsăreanu. Refining interface alphabets for compositional verification. In O. Grumberg and M. Huth, editors, Tools and Algorithms for the Construction and Analysis of Systems, volume 4424 of Lecture Notes in Computer Science, pages 292–307. Springer, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. D. Giannakopoulou and C. S. Păsăreanu. Special issue on learning techniques for compositional reasoning. Formal Methods in System Design, 32(3):173–174, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. A. Gupta, K. L. McMillan, and Z. Fu. Automated assumption generation for compositional verification. In W. Damm and H. Hermanns, editors, Computer Aided Verification, volume 4590 of Lecture Notes in Computer Science, pages 420–432. Springer, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. A. Gupta, K. L. McMillan, and Z. Fu. Automated assumption generation for compositional verification. Formal Methods in System Design, 32(3):285–301, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. T. A. Henzinger, R. Jhala, and R. Majumdar. Permissive interfaces. In Foundations of Software Engineering, ESEC/FSE-13, pages 31–40. ACM, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. M. J. Kearns and U. V. Vazirani. An Introduction to Computational Learning Theory. MIT Press, 1994. Google ScholarGoogle ScholarCross RefCross Ref
  30. B. Meyer. Object-Oriented Software Construction. Prentice Hall, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. A. Nakamura. An efficient query learning algorithm for ordered binary decision diagrams. Information and Computation, 201(2):178–198, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. W. Nam, P. Madhusudan, and R. Alur. Automatic symbolic compositional verification by learning assumptions. Formal Methods in System Design, 32(3):207–234, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. H. Sa´ıdi and S. Graf. Construction of abstract state graphs with PVS. In Grumberg, editor, Computer Aided Verification, volume 1254 of Lecture Notes in Computer Science, pages 72–83. Springer, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. R. Singh, D. Giannakopoulou, and C. S. Pasareanu. Learning component interfaces with may and must abstractions. In T. Touili, B. Cook, and P. Jackson, editors, Computer Aided Verification, volume 6174 of Lecture Notes in Computer Science, pages 527–542. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. N. Sinha and E. M. Clarke. SAT-based compositional verification using lazy learning. In W. Damm and H. Hermanns, editors, Computer Aided Verification, volume 4590 of Lecture Notes in Computer Science, pages 39–54. Springer, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. L. Théry. Proof pearl: Revisiting the mini-Rubik in Coq. In O. A. Mohamed, C. Mu˜ noz, and S. Tahar, editors, Theorem Proving in Higher Order Logics, volume 5170 of Lecture Notes in Computer Science, pages 310–319. Springer, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. R. Wang, M. Zhou, L. Yin, L. Zhang, J. Sun, G. Ming, and M. Bozga. Modeling and validation of PLC-controlled systems: A case study. In Theoretical Aspects of Software Engineering, pages 161–166. IEEE, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Symbolic assume-guarantee reasoning through BDD learning

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Conferences
                ICSE 2014: Proceedings of the 36th International Conference on Software Engineering
                May 2014
                1139 pages
                ISBN:9781450327565
                DOI:10.1145/2568225

                Copyright © 2014 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 31 May 2014

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article

                Acceptance Rates

                Overall Acceptance Rate276of1,856submissions,15%

                Upcoming Conference

                ICSE 2025

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader