Skip to main content

Automatic Error Localization for Software Using Deductive Verification

  • Conference paper
Hardware and Software: Verification and Testing (HVC 2014)

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

Included in the following conference series:

Abstract

Even competent programmers make mistakes. Automatic verification can detect errors, but leaves the frustrating task of finding the erroneous line of code to the user. This paper presents an automatic approach for identifying potential error locations in software. It is based on a deductive verification engine, which detects errors in functions annotated with pre- and post-conditions. Using an automatic theorem prover, our approach finds expressions in the code that can be modified such that the program satisfies its specification. Scalability is achieved by analyzing each function in isolation. We have implemented our approach in the widely used Frama-C framework and present first experimental results.

This work was supported by the European Commission through project STANCE (31775) and the Austrian Science Fund (FWF) through project RiSE (S11406-N23).

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. Bloem, R., Drechsler, R., Fey, G., Finder, A., Hofferek, G., Könighofer, R., Raik, J., Repinski, U., Sülflow, A.: foREnSiC– an automatic debugging environment for C programs. In: Biere, A., Nahir, A., Vos, T. (eds.) HVC 2012. LNCS, vol. 7857, pp. 260–265. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  2. Cuoq, P., Kirchner, F., Kosmatov, N., Prevosto, V., Signoles, J., Yakobowski, B.: Frama-C - A software analysis perspective. In: Eleftherakis, G., Hinchey, M., Holcombe, M. (eds.) SEFM 2012. LNCS, vol. 7504, pp. 233–247. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  3. Debroy, V., Wong, W.E.: Using mutation to automatically suggest fixes for faulty programs. In: ICST 2010. IEEE (2010)

    Google Scholar 

  4. Griesmayer, A., Staber, S., Bloem, R.: Automated fault localization for C programs. Electr. Notes Theor. Comput. Sci. 174(4), 95–111 (2007)

    Article  Google Scholar 

  5. Jones, J.A., Harrold, M.J.: Empirical evaluation of the tarantula automatic fault-localization technique. In: ASE 2005. ACM (2005)

    Google Scholar 

  6. Jose, M., Majumdar, R.: Cause clue clauses: error localization using maximum satisfiability. In: PLDI 2011, pp. 437–446. ACM (2011)

    Google Scholar 

  7. Könighofer, R., Bloem, R.: Automated error localization and correction for imperative programs. In: FMCAD 2011, IEEE (2011)

    Google Scholar 

  8. Könighofer, R., Toegl, R., Bloem, R.: Automatic error localization for software using deductive verification. CoRR, abs/1409.4637 (2014)

    Google Scholar 

  9. Larus, J.R., Ball, T., Das, M., DeLine, R., Fähndrich, M., Pincus, J.D., Rajamani, S.K., Venkatapathy, R.: Righting software. IEEE Softw. 21(3), 92–100 (2004)

    Article  Google Scholar 

  10. Reiter, R.: A theory of diagnosis from first principles. Art. Int. 32(1), 57–95 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  11. Siemens benchmark suite, http://pleuma.cc.gatech.edu/aristotle/Tools/subjects

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Könighofer, R., Toegl, R., Bloem, R. (2014). Automatic Error Localization for Software Using Deductive Verification. In: Yahav, E. (eds) Hardware and Software: Verification and Testing. HVC 2014. Lecture Notes in Computer Science, vol 8855. Springer, Cham. https://doi.org/10.1007/978-3-319-13338-6_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-13338-6_8

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-13337-9

  • Online ISBN: 978-3-319-13338-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics