Skip to main content

Static Partial-Order Reduction of Concurrent Systems in Polynomial Time

  • Conference paper

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 17))

Abstract

We present an algorithm for attacking the state explosion problem in analyzing multithreaded programs. Our approach employs partial-order reduction and static virtual coarsening. It uses information on shared variables to generate and interleave blocks of statements.

Our algorithm performs polynomially as long as the number of shared variables is constant.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   169.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abramowitz, M., Stegun, I.A.: Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. Dover, New York (1964)

    MATH  Google Scholar 

  2. Ashcroft, E.A., Manna, Z.: Formalization of Properties of Parallel Programs. In: Meltzer, B., Michie, D. (eds.) Proc. of the Sixth Annual Machine Intelligence Workshop 1970, Edinburgh, pp. 17–41. University of Edinburgh Press (1971)

    Google Scholar 

  3. Ben-Ari, M., Burns, A.: Extreme Interleavings. IEEE Concurrency 6(3), 90–91 (1998)

    Google Scholar 

  4. Burgstaller, B., Blieberger, J., Mittermayr, R.: Static Detection of Access Anomalies in Ada95. In: Pinho, L.M., González Harbour, M. (eds.) Ada-Europe 2006. LNCS, vol. 4006, pp. 40–55. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  5. Dwyer, M.B., Hatcliff, J., Robby, Ranganath, V.P.: Exploiting Object Escape and Locking Information in Partial-Order Reductions for Concurrent Object-Oriented Programs. Formal Methods in System Design 25(2-3), 199–240 (2004)

    Article  MATH  Google Scholar 

  6. Godefroid, P.: Partial-Order Methods for the Verification of Concurrent Systems – An Approach to the State-Explosion Problem. In: Godefroid, P. (ed.) Partial-Order Methods for the Verification of Concurrent Systems. LNCS, vol. 1032. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  7. Godefroid, P.: On the Costs and Benefits of Using Partial-Order Methods for the Verification of Concurrent Systems. In: Peled, D.A., Pratt, V.R., Holzmann, G.J. (eds.) POMIV 1996: Proc. of the DIMACS workshop on Partial Order Methods in Verification, pp. 289–303. AMS Press, Inc., New York (1997)

    Google Scholar 

  8. Gueta, G., Flanagan, C., Yahav, E., Sagiv, M.: Cartesian Partial-Order Reduction. In: Bošnački, D., Edelkamp, S. (eds.) SPIN 2007. LNCS, vol. 4595, pp. 95–112. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  9. Junttila, T.: On The Symmetry Reduction Method For Petri Nets and Similar Formalisms. PhD thesis, Helsinki University of Technology (2003)

    Google Scholar 

  10. Knoop, J., Steffen, B., Vollmer, J.: Parallelism for Free: Efficient and Optimal Bitvector Analyses for Parallel Programs. ACM Transactions on Programming Languages and Systems 18(3), 268–299 (1996)

    Article  Google Scholar 

  11. Mazurkiewicz, A.: Introduction to Trace Theory. In: Diekert, V., Rozenberg, G. (eds.) The Book of Traces, pp. 3–41. World Scientific Pub. Co., Inc., Singapore (1995)

    Chapter  Google Scholar 

  12. Minea, M.: Partial Order Reduction for Verification of Timed Systems. PhD thesis, Carnegie Mellon University, Pittsburgh, PA, USA (1999)

    Google Scholar 

  13. Musuvathi, M., Qadeer, S.: Iterative Context Bounding for Systematic Testing of Multithreaded Programs. SIGPLAN Not. 42(6), 446–455 (2007)

    Article  Google Scholar 

  14. Overman, W.T.: Verification of Concurrent Systems: Function and Timing. PhD thesis, University of California, Los Angeles (1981)

    Google Scholar 

  15. Peled, D.: Combining Partial Order Reductions with On-the-fly Model-Checking. In: Dill, D.L. (ed.) CAV 1994. LNCS, vol. 818, pp. 377–390. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

  16. Pnueli, A.: Applications of Temporal Logic to the Specification and Verification of Reactive Systems: A Survey of Current Trends. In: Rozenberg, G., de Bakker, J.W., de Roever, W.-P. (eds.) Current Trends in Concurrency. LNCS, vol. 224, pp. 510–584. Springer, Heidelberg (1986)

    Chapter  Google Scholar 

  17. Valmari, A.: Eliminating Redundant Interleavings During Concurrent Program Verification. In: Odijk, E., Rem, M., Syre, J.-C. (eds.) PARLE 1989. LNCS, vol. 366, pp. 89–103. Springer, Heidelberg (1989)

    Chapter  Google Scholar 

  18. Valmari, A.: The State Explosion Problem. In: Reisig, W., Rozenberg, G. (eds.) APN 1998. LNCS, vol. 1491, pp. 429–528. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Mittermayr, R., Blieberger, J. (2008). Static Partial-Order Reduction of Concurrent Systems in Polynomial Time. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. ISoLA 2008. Communications in Computer and Information Science, vol 17. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-88479-8_44

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-88479-8_44

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-88478-1

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics