Skip to main content

Abstract Error Projection

  • Conference paper
Static Analysis (SAS 2007)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4634))

Included in the following conference series:

Abstract

In this paper, we extend model-checking technology with the notion of an error projection. Given a program abstraction, an error projection divides the program into two parts: the part outside the error projection is guaranteed to be correct, while the part inside the error projection can have bugs. Subsequent automated or manual verification effort need only be concentrated on the part inside the error projection. We present novel algorithms for computing error projections using weighted pushdown systems that are sound and complete for the class of Boolean programs and discuss additional applications for these algorithms.

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. Ball, T., Naik, M., Rajamani, S.K.: From symptom to cause: localizing errors in counterexample traces. In: POPL (2003)

    Google Scholar 

  2. Ball, T., Rajamani, S.: Automatically validating temporal safety properties of interfaces. In: Dwyer, M.B. (ed.) Model Checking Software. LNCS, vol. 2057, Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  3. Ball, T., Rajamani, S.K.: Boolean programs: A model and process for software analysis. Technical Report MSR-TR-2000-14, Microsoft Research (2000)

    Google Scholar 

  4. Bouajjani, A., Esparza, J., Maler, O.: Reachability analysis of pushdown automata: Application to model checking. In: Mazurkiewicz, A., Winkowski, J. (eds.) CONCUR 1997. LNCS, vol. 1243, Springer, Heidelberg (1997)

    Google Scholar 

  5. Bouajjani, A., Esparza, J., Touili, T.: A generic approach to the static analysis of concurrent programs with procedures. In: POPL (2003)

    Google Scholar 

  6. Chaki, S., Clarke, E., Groce, A., Jha, S., Veith, H.: Modular verification of software components in C. In: ICSE (2003)

    Google Scholar 

  7. Chaki, S., Groce, A., Strichman, O.: Explaining abstract counterexamples. In: Roy, B., Meier, W. (eds.) FSE 2004. LNCS, vol. 3017, Springer, Heidelberg (2004)

    Google Scholar 

  8. Cousot, P.: Méthodes itératives de construction et d’approximation de point fixes d’opérateurs monotones sur un treillis, analyse sémantique des programmes. Thèse ès sciences mathématiques, Univ. of Grenoble (1978)

    Google Scholar 

  9. Engler, D.R., Chelf, B., Chou, A., Hallem, S.: Checking system rules using system-specific, programmer-written compiler extensions. In: OSDI (2000)

    Google Scholar 

  10. Finkel, A., Willems, B., Wolper, P.: A direct symbolic approach to model checking pushdown systems. Elec. Notes in Theoretical Comp. Sci. 9 (1997)

    Google Scholar 

  11. Henzinger, T., Jhala, R., Majumdar, R., Sutre, G.: Lazy abstraction. In: POPL (2002)

    Google Scholar 

  12. Hong, H.S., Lee, I., Sokolsky, O.: Abstract slicing: A new approach to program slicing based on abstract interpretation and model checking. In: SCAM (2005)

    Google Scholar 

  13. Jeannet, B., Serwe, W.: Abstracting call-stacks for interprocedural verification of imperative programs. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, Springer, Heidelberg (2004)

    Google Scholar 

  14. Kremenek, T., Ashcraft, K., Yang, J., Engler, D.R.: Correlation exploitation in error ranking. In: SIGSOFT FSE (2004)

    Google Scholar 

  15. Lal, A., Kidd, N., Reps, T., Touili, T.: Abstract error projection. Technical Report 1579, University of Wisconsin-Madison (January 2007)

    Google Scholar 

  16. Lal, A., Reps, T.: Improving pushdown system model checking. Technical Report 1552, University of Wisconsin-Madison (January 2006)

    Google Scholar 

  17. Massé, D.: Combining forward and backward analyses of temporal properties. In: Danvy, O., Filinski, A. (eds.) PADO 2001. LNCS, vol. 2053, Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  18. Mohri, M., Pereira, F.C.N., Riley, M.: Weighted automata in text and speech processing. In: ECAI (1996)

    Google Scholar 

  19. Mohri, M., Pereira, F.C.N., Riley, M.: The design principles of a weighted finite-state transducer library. In: Theoretical Computer Science (2000)

    Google Scholar 

  20. Qadeer, S., Wu, D.: KISS: Keep it simple and sequential. In: PLDI (2004)

    Google Scholar 

  21. Reps, T., Schwoon, S., Jha, S., Melski, D.: Weighted pushdown systems and their application to interprocedural dataflow analysis. SCP, 58 (2005)

    Google Scholar 

  22. Schwoon, S.: Model-Checking Pushdown Systems. PhD thesis, Tech. Univ. Munich (2002)

    Google Scholar 

  23. Weiser, M.: Program slicing. IEEE Trans. Software Eng. 10(4), 352–357 (1984)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Hanne Riis Nielson Gilberto Filé

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lal, A., Kidd, N., Reps, T., Touili, T. (2007). Abstract Error Projection. In: Nielson, H.R., Filé, G. (eds) Static Analysis. SAS 2007. Lecture Notes in Computer Science, vol 4634. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74061-2_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-74061-2_13

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-74061-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics