Skip to main content

Using Automated Theorem Provers to Certify Auto-generated Aerospace Software

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 3097))

Abstract

We describe a system for the automated certification of safety properties of NASA software. The system uses Hoare-style program verification technology to generate proof obligations which are then processed by an automated first-order theorem prover (ATP). For full automation, however, the obligations must be aggressively preprocessed and simplified. We discuss the unique requirements this application places on the ATPs and demonstrate how the individual simplification stages, which are implemented by rewriting, influence the ability of the ATPs to solve the proof tasks. Our results are based on 13 certification experiments that lead to more than 25,000 proof tasks which have each been attempted by Vampire, Spass, and e-setheo.

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   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.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. Bibel, W., Schmitt, P.H. (eds.): Automated Deduction — A Basis for Applications. Kluwer, Dordrecht (1998)

    Google Scholar 

  2. Denney, E., Fischer, B.: Correctness of Source-Level Safety Policies. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 894–913. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  3. Denney, E., Fischer, B., Schumann, J.: Adding Assurance to Automatically Generated Code. In: Proc. 8th IEEE Intl. Sympl. High Assurance System Engineering, pp. 297–299. IEEE Comp. Soc. Press, Los Alamitos (2004)

    Chapter  Google Scholar 

  4. Denney, E., Venkatesan, R.P.: A generic software safety document generator. In: Proc. 10th AMAST (2004) (to appear)

    Google Scholar 

  5. Fischer, B., Hajian, A., Knuth, K., Schumann, J.: Automatic Derivation of Statistical Data Analysis Algorithms: Planetary Nebulae and Beyond. In: Proc. 23rd MaxEnt. (2004) (to appear), http://ase.arc.nasa.gov/people/fischer/

  6. Fischer, B.: Deduction-Based Software Component Retrieval. PhD thesis, U. Passau, Germany (2001), http://elib.ub.uni-passau.de/opus/volltexte/2002/23/

  7. Flanagan, C., Leino, K.R.M.: Houdini, an Annotation Assistant for ESC/Java. In: Oliveira, J.N., Zave, P. (eds.) FME 2001. LNCS, vol. 2021, pp. 500–517. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  8. Fischer, B., Schumann, J.: Applying AutoBayes to the Analysis of Planetary Nebulae Images. In: Proc. 18th ASE, pp. 337–342. IEEE Comp. Soc. Press, Los Alamitos (2003)

    Google Scholar 

  9. Fischer, B., Schumann, J.: AutoBayes:A System for Generating Data Analysis Programs from Statistical Models. J. Functional Programming 13(3), 483–508 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  10. Fischer, B., Schumann, J., Snelting, G.: Deduction-Based Software Component Retrieval. In: Bibel and Schmitt [1], vol. II, pp. 265–292 (1998)

    Google Scholar 

  11. Homeier, P., Martin, D.: Trustworthy Tools for Trustworthy Programs: A Verified Verification Condition Generator. In: Proc. TPHOLS 1994, pp. 269–284. Springer, Heidelberg (1994)

    Google Scholar 

  12. Loveland, D.W.: Automated Theorem Proving: A Logical Basis. North–Holland, Amsterdam (1978)

    MATH  Google Scholar 

  13. McCarthy, J.: Towards a Mathematical Science of Computation. In: Proc. IFIP Congress 62, pp. 21–28. North-Holland, Amsterdam (1962)

    Google Scholar 

  14. McCune, W., Shumsky, O.: System description: IVY. In: McAllester, D. (ed.) CADE 2000. LNCS, vol. 1831, pp. 401–405. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  15. Moser, M., Ibens, O., Letz, R., Steinbach, J., Goller, C., Schumann, J., Mayr, K.: The Model Elimination Provers SETHEO and E-SETHEO. J. Automated Reasoning 18, 237–246 (1997)

    Article  Google Scholar 

  16. The Programatica Team, Programatica Tools for Certifiable, Auditable Development of High-assurance Systems in Haskell. In: Proc. High Confidence Software and Systems Conf., Baltimore, MD (April 2003)

    Google Scholar 

  17. Reif, W.: The KIV Approach to Software Verification. In: Jähnichen, S., Broy, M. (eds.) KORSO 1995. LNCS, vol. 1009, pp. 339–370. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  18. Reif, W., Schellhorn, G., Stenzel, K., Balser, M.: Structured Specifications and Interactive Proofs with KIV. In: Bibel and Schmitt [1], vol. II, pp. 13–40 (1998)

    Google Scholar 

  19. Riazanov, A., Voronkov, A.: The Design and Implementation of Vampire. AI Communications 15(2-3), 91–110 (2002)

    MATH  Google Scholar 

  20. Schumann, J.: Automated Theorem Proving in Software Engineering. Springer, Heidelberg (2001)

    Google Scholar 

  21. Sutcliffe, G., Suttner, C.: CASC Home Page, http://www.tptp.org/CASC

  22. Sutcliffe, G., Suttner, C.: TPTP Home Page, http://www.tptp.org

  23. Weidenbach, C.: SPASS Home Page, http://spass.mpi-sb.mpg.de

  24. Weidenbach, C., Gaede, B., Rock, G.: Spass and Flotter version 0.42. In: McRobbie, M.A., Slaney, J.K. (eds.) CADE 1996. LNCS, vol. 1104, pp. 141–145. Springer, Heidelberg (1996)

    Google Scholar 

  25. Whalen, M., Schumann, J., Fischer, B.: AutoBayes/CC—Combining Program Synthesis with Automatic Code Certification (System Description). In: Voronkov, A. (ed.) CADE 2002. LNCS (LNAI), vol. 2392, pp. 290–294. Springer, Heidelberg (2002)

    Google Scholar 

  26. Whalen, M., Schumann, J., Fischer, B.: Synthesizing Certified Code. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 431–450. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  27. Whittle, J., Schumann, J.: Automating the Implementation of Kalman Filter Algorithms (2004) (in review)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Denney, E., Fischer, B., Schumann, J. (2004). Using Automated Theorem Provers to Certify Auto-generated Aerospace Software. In: Basin, D., Rusinowitch, M. (eds) Automated Reasoning. IJCAR 2004. Lecture Notes in Computer Science(), vol 3097. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-25984-8_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-25984-8_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22345-0

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics