Skip to main content

Advertisement

SpringerLink
Log in
Menu
Find a journal Publish with us
Search
Cart
Book cover

International Conference on Fundamental Approaches to Software Engineering

FASE 2012: Fundamental Approaches to Software Engineering pp 130–145Cite as

  1. Home
  2. Fundamental Approaches to Software Engineering
  3. Conference paper
Verified Resource Guarantees for Heap Manipulating Programs

Verified Resource Guarantees for Heap Manipulating Programs

  • Elvira Albert19,
  • Richard Bubel18,
  • Samir Genaim19,
  • Reiner Hähnle18 &
  • …
  • Guillermo Román-Díez20 
  • Conference paper
  • 1548 Accesses

  • 9 Citations

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 7212)

Abstract

Program properties that are automatically inferred by static analysis tools are generally not considered to be completely trustworthy, unless the tool implementation or the results are formally verified. Here we focus on the formal verification of resource guarantees inferred by automatic cost analysis. Resource guarantees ensure that programs run within the indicated amount of resources which may refer to memory consumption, to number of instructions executed, etc. In previous work we studied formal verification of inferred resource guarantees that depend only on integer data. In realistic programs, however, resource consumption is often bounded by the size of heap-allocated data structures. Bounding their size requires to perform a number of structural heap analyses. The contributions of this paper are (i) to identify what exactly needs to be verified to guarantee sound analysis of heap manipulating programs, (ii) to provide a suitable extension of the program logic used for verification to handle structural heap properties in the context of resource guarantees, and (iii) to improve the underlying theorem prover so that proof obligations can be automatically discharged.

Keywords

  • Program Logic
  • Ranking Function
  • Dynamic Logic
  • Proof Obligation
  • Symbolic Execution

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Download conference paper PDF

References

  1. Albert, E., Arenas, P., Genaim, S., Puebla, G.: Closed-Form Upper Bounds in Static Cost Analysis. Journal of Automated Reasoning 46(2), 161–203 (2011)

    CrossRef  MathSciNet  MATH  Google Scholar 

  2. Albert, E., Arenas, P., Genaim, S., Puebla, G., Zanardini, D.: Cost Analysis of Java Bytecode. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 157–172. Springer, Heidelberg (2007)

    CrossRef  Google Scholar 

  3. Albert, E., Bubel, R., Genaim, S., Hähnle, R., Puebla, G., Román-Díez, G.: Verified Resource Guarantees using COSTA and KeY. In: Proc. of PEPM 2011, pp. 73–76. ACM Press (2011)

    Google Scholar 

  4. Ball, T., Bounimova, E., Levin, V., Kumar, R., Lichtenberg, J.: The Static Driver Verifier Research Platform. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 119–122. Springer, Heidelberg (2010)

    CrossRef  Google Scholar 

  5. Beckert, B., Hähnle, R., Schmitt, P.H. (eds.): Verification of Object-Oriented Software. LNCS (LNAI), vol. 4334. Springer, Heidelberg (2007)

    Google Scholar 

  6. Crary, K., Weirich, S.: Resource Bound Certification. In: POPL 2005, pp. 184–198. ACM Press (2000)

    Google Scholar 

  7. de Dios, J., Peña, R.: Certification of Safe Polynomial Memory Bounds. In: Butler, M., Schulte, W. (eds.) FM 2011. LNCS, vol. 6664, pp. 184–199. Springer, Heidelberg (2011)

    CrossRef  Google Scholar 

  8. Filliâtre, J.-C., Marché, C.: The Why/Krakatoa/Caduceus Platform for Deductive Program Verification. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 173–177. Springer, Heidelberg (2007)

    CrossRef  Google Scholar 

  9. Genaim, S., Zanardini, D.: The Acyclicity Inference of COSTA. In: Workshop on Termination (WST 2010) (July 2010)

    Google Scholar 

  10. Gulwani, S., Mehra, K.K., Chilimbi, T.M.: Speed: precise and efficient static estimation of program computational complexity. In: Proc. of POPL 2009, pp. 127–139. ACM (2009)

    Google Scholar 

  11. Hoffmann, J., Hofmann, M.: Amortized Resource Analysis with Polynomial Potential. In: Gordon, A.D. (ed.) ESOP 2010. LNCS, vol. 6012, pp. 287–306. Springer, Heidelberg (2010)

    CrossRef  Google Scholar 

  12. Leino, K.R.M.: Dafny: An Automatic Program Verifier for Functional Correctness. In: Clarke, E.M., Voronkov, A. (eds.) LPAR-16 2010. LNCS, vol. 6355, pp. 348–370. Springer, Heidelberg (2010)

    CrossRef  Google Scholar 

  13. Necula, G.: Proof-Carrying Code. In: POPL 1997, ACM Press (1997)

    Google Scholar 

  14. Pnueli, A., Siegel, M.D., Singerman, E.: Translation Validation. In: Steffen, B. (ed.) TACAS 1998. LNCS, vol. 1384, pp. 151–166. Springer, Heidelberg (1998)

    CrossRef  Google Scholar 

  15. Secci, S., Spoto, F.: Pair-Sharing Analysis of Object-Oriented Programs. In: Hankin, C., Siveroni, I. (eds.) SAS 2005. LNCS, vol. 3672, pp. 320–335. Springer, Heidelberg (2005)

    CrossRef  Google Scholar 

  16. Smans, J., Jacobs, B., Piessens, F., Schulte, W.: An Automatic Verifier for Java-Like Programs Based on Dynamic Frames. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 261–275. Springer, Heidelberg (2008)

    CrossRef  Google Scholar 

  17. Spoto, F., Mesnard, F., Payet, É.: A termination analyzer for java bytecode based on path-length. ACM Trans. Program. Lang. Syst. 32(3) (2010)

    Google Scholar 

  18. Weiß, B.: Deductive Verification of Object-Oriented Software: Dynamic Frames, Dynamic Logic and Predicate Abstraction. PhD thesis, KIT (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

  1. CSE, Chalmers University of Technology, Sweden

    Richard Bubel & Reiner Hähnle

  2. DSIC, Complutense University of Madrid (UCM), Spain

    Elvira Albert & Samir Genaim

  3. DLSIIS, Technical University of Madrid (UPM), Spain

    Guillermo Román-Díez

Authors
  1. Elvira Albert
    View author publications

    You can also search for this author in PubMed Google Scholar

  2. Richard Bubel
    View author publications

    You can also search for this author in PubMed Google Scholar

  3. Samir Genaim
    View author publications

    You can also search for this author in PubMed Google Scholar

  4. Reiner Hähnle
    View author publications

    You can also search for this author in PubMed Google Scholar

  5. Guillermo Román-Díez
    View author publications

    You can also search for this author in PubMed Google Scholar

Editor information

Editors and Affiliations

  1. School of Computer Science, Universidad Autónoma de Madrid, Campus Cantoblanco, 28049, Madrid, Spain

    Juan de Lara

  2. School of Informatics, City University, Northampton Square, EC1V 0HB, London, UK

    Andrea Zisman

Rights and permissions

Reprints and Permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Albert, E., Bubel, R., Genaim, S., Hähnle, R., Román-Díez, G. (2012). Verified Resource Guarantees for Heap Manipulating Programs. In: de Lara, J., Zisman, A. (eds) Fundamental Approaches to Software Engineering. FASE 2012. Lecture Notes in Computer Science, vol 7212. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-28872-2_10

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-642-28872-2_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-28871-5

  • Online ISBN: 978-3-642-28872-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Search

Navigation

  • Find a journal
  • Publish with us

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support

167.114.118.210

Not affiliated

Springer Nature

© 2023 Springer Nature