Skip to main content

Transformations for model checking distributed java programs

  • Conference paper
  • First Online:
Book cover Model Checking Software (SPIN 2001)

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

Included in the following conference series:

Abstract

This paper describes three program transformations that extend the scope of model checkers for Java programs to include distributed programs, i.e., multi-process programs. The transformations combine multiple processes into a single process, replace remote method invocations (RMIs) with local method invocations that simulate RMIs, and replace cryptographic operations with symbolic counterparts.

This work is supported in part by NSF under Grant CCR-9876058 and by ONR under grants N00014-99-1-0132, N00014-99-1-0358, and N00014-01-1-0109.

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. Guillaume Brat, Klaus Havelund, Seung-Joon Park, and Willem Visser. Model checking programs. In IEEE International Conference on Auto-mated Software Engineering (ASE), September 2000.

    Google Scholar 

  2. A. D. Birrell and B. J. Nelson. Implementing remote procedure calls. ACM Transactions on Computer Systems, 2:39–59, February 1984.

    Article  Google Scholar 

  3. James C. Corbett, Matthew Dwyer, John Hatcliff, Corina Pasareanu, Robby, Shawn Laubach, and Hongjun Zheng. Bandera: Extracting finite-state models from Java source code. In Proc. 22nd International Conference on Software Engineering (ICSE), June 2000.

    Google Scholar 

  4. Thomas Cormen, Charles Leiserson, and Ronald Rivest. Introduction to Algorithms. MIT Press and McGraw-Hill, 1990.

    Google Scholar 

  5. Markus Dahm. Byte code engineering with the JavaClass API. Technical Report B-17-98, Institut für Informatik, Freie Universität Berlin, 1999. Available via http://www.inf.fu-berlin.de/~dahm/JavaClass/.

  6. Leslie Lamport. The temporal logic of actions. ACM Transactions on Programming Languages and Systems, 16(3):872–923, May 1994.

    Article  Google Scholar 

  7. Gavin Lowe. Breaking and fixing the Needham-Schroeder public-key protocol using FDR. In Proc. Workshop on Tools and Algorithms for The Construction and Analysis of Systems (TACAS), volume 1055 of Lecture Notes in Computer Science, pages 147–166. Springer-Verlag, 1996.

    Google Scholar 

  8. John C. Mitchell, Mark Mitchell, and Ulrich Stern. Automated analysis of cryptographic protocols using Murø. In Proc. 18th IEEE Symposium on Research in Security and Privacy, pages 141–153. IEEE Computer Society Press, 1997.

    Google Scholar 

  9. Dahlia Malkhi and Michael Reiter. Secure and scalable replication in phalanx. In 17th IEEE Symposium on Reliable Distributed Systems (SRDS), pages 51–60, October 1998.

    Google Scholar 

  10. David Y.W. Park, Ulrich Stern, Jens U. Skakkebaek, and David L. Dill. Java model checking. In Proc. First International Workshop on Automated Program Analysis, Testing, and Verification, 2000.

    Google Scholar 

  11. Scott D. Stoller. Model-checking multi-threaded distributed Java programs. In Proc. 7th Int’l. SPIN Workshop on Model Checking of Software, volume 1885 of Lecture Notes in Computer Science, pages 224–243. Springer-Verlag, August 2000.

    Chapter  Google Scholar 

  12. John Whaley and Martin Rinard. Compositional pointer and escape analysis for Java programs. In Proc. ACM Conference on Object-Oriented Systems, Languages and Applications (OOPSLA), pages 187–206. ACM Press, October 1999. Appeared in ACM SIGPLAN Notices 34(10).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Stoller, S.D., Liu, Y.A. (2001). Transformations for model checking distributed java programs. In: Dwyer, M. (eds) Model Checking Software. SPIN 2001. Lecture Notes in Computer Science, vol 2057. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45139-0_12

Download citation

  • DOI: https://doi.org/10.1007/3-540-45139-0_12

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42124-5

  • Online ISBN: 978-3-540-45139-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics