skip to main content
10.1145/1924520.1924525acmotherconferencesArticle/Chapter ViewAbstractPublication PagesecoopConference Proceedingsconference-collections
research-article

Procedure-modular verification of control flow safety properties

Published:22 June 2010Publication History

ABSTRACT

This paper describes a novel technique for fully automated procedure-modular verification of Java programs equipped with method-local and global assertions that specify safety properties of sequences of method invocations. Modularity of verification is achieved by relativizing the correctness of global properties on the local properties rather than on the implementations of methods, and is based on the construction of maximal models. Tool support is provided by means of ProMoVer, a tool that is essentially a wrapper around a previously developed tool set for compositional verification of control flow safety properties, where program data is abstracted away completely. We evaluate the technique on a small but realistic case study.

References

  1. Doclet overview. http://java.sun.com/j2se/1.3/docs/tooldocs/javadoc/overview.html.Google ScholarGoogle Scholar
  2. R. Alur, M. Arenas, P. Barcelo, K. Etessami, N. Immerman, and L. Libkin. First-order and temporal logics for nested words. In Logic in Computer Science (LICS '07), pages 151--160, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. R. Alur and S. Chaudhuri. Temporal reasoning for procedural programs. In Verification, Model Checking, and Abstract Interpretation (VMCAI '10), volume 5944 of LNCS, pages 45--60. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. R. Alur, K. Etessami, and P. Madhusudan. A temporal logic for nested calls and returns. In Tools and Algorithms for the Analysis and Construction of Software (TACAS '04), volume 2998 of LNCS, pages 467--481. Springer, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  5. R. Cleaveland, J. Parrow, and B. Steffen. A semantics based verification tool for finite state systems. In International Symposium on Protocol Specification, Testing and Verification, pages 287--302. North-Holland Publishing Co., 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. C. Flanagan, K. R. M. Leino, M. Lillibridge, G. Nelson, J. B. Saxe, and R. Stata. Extended static checking for java. In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '02), pages 234--245, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. Goldman and S. Katz. MAVEN: Modular aspect verification. In Tools and Algorithms for the Construction and Analysis of Systems (TACAS '07), volume 4424 of LNCS, pages 308--322. Springer, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Gurov and M. Huisman. Reducing behavioural to structural properties of programs with procedures. In Verification, Model Checking, and Abstract Interpretation (VMCAI '09), volume 5403 of LNCS, pages 136--150. Springer, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. D. Gurov, M. Huisman, and C. Sprenger. Compositional verification of sequential programs with procedures. Information and Computation, 206(7):840--868, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. E. Hubbers and E. Poll. Transactions and non-atomic api methods in java card: specification ambiguity and strange implementation behaviours.Google ScholarGoogle Scholar
  11. S. Kiefer, S. Schwoon, and D. Suwimonteerabuth. Moped - a model-checker for pushdown systems. http://www.informatik.uni-stuttgart.de/fmi/szs/tools/moped/.Google ScholarGoogle Scholar
  12. D. Kozen. Results on the propositional μ-calculus. Theoretical Computer Science, 27:333--354, 1983.Google ScholarGoogle ScholarCross RefCross Ref
  13. G. T. Leavens, E. Poll, C. Clifton, Y. Cheon, C. Ruby, D. R. Cok, P. Müller, J. Kiniry, and P. Chalin. JML Reference Manual, Feb. 2007. Department of Computer Science, Iowa State University. Available from http://www.jmlspecs.org.Google ScholarGoogle Scholar
  14. P. Müller. Modular Specification and Verification of Object-Oriented Programs, volume 2262 of LNCS. Springer, 2002.Google ScholarGoogle Scholar
  15. S. Soleimanifard, D. Gurov, and M. Huisman. ProMoVer, a tool for procedure-modular verification: A tool web interface. http://www.csc.kth.se/~siavashs/ProMoVer/promover.php.Google ScholarGoogle Scholar
  16. C. Stirling. Modal and Temporal Logics of Processes. Springer, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. R. Vallée-Rai, L. Hendren, V. Sundaresan, P. Lam, E. Gagnon, and P. Co. Soot - a Java Optimization Framework. In CASCON '99, pages 125--135, 1999.Google ScholarGoogle Scholar

Index Terms

  1. Procedure-modular verification of control flow safety properties

              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 Other conferences
                FTFJP '10: Proceedings of the 12th Workshop on Formal Techniques for Java-Like Programs
                June 2010
                66 pages
                ISBN:9781450305402
                DOI:10.1145/1924520

                Copyright © 2010 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 ACM 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: 22 June 2010

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article

                Acceptance Rates

                Overall Acceptance Rate51of75submissions,68%

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader