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
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Bibel, W., Schmitt, P.H. (eds.): Automated Deduction — A Basis for Applications. Kluwer, Dordrecht (1998)
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)
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)
Denney, E., Venkatesan, R.P.: A generic software safety document generator. In: Proc. 10th AMAST (2004) (to appear)
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/
Fischer, B.: Deduction-Based Software Component Retrieval. PhD thesis, U. Passau, Germany (2001), http://elib.ub.uni-passau.de/opus/volltexte/2002/23/
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)
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)
Fischer, B., Schumann, J.: AutoBayes:A System for Generating Data Analysis Programs from Statistical Models. J. Functional Programming 13(3), 483–508 (2003)
Fischer, B., Schumann, J., Snelting, G.: Deduction-Based Software Component Retrieval. In: Bibel and Schmitt [1], vol. II, pp. 265–292 (1998)
Homeier, P., Martin, D.: Trustworthy Tools for Trustworthy Programs: A Verified Verification Condition Generator. In: Proc. TPHOLS 1994, pp. 269–284. Springer, Heidelberg (1994)
Loveland, D.W.: Automated Theorem Proving: A Logical Basis. North–Holland, Amsterdam (1978)
McCarthy, J.: Towards a Mathematical Science of Computation. In: Proc. IFIP Congress 62, pp. 21–28. North-Holland, Amsterdam (1962)
McCune, W., Shumsky, O.: System description: IVY. In: McAllester, D. (ed.) CADE 2000. LNCS, vol. 1831, pp. 401–405. Springer, Heidelberg (2000)
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)
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)
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)
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)
Riazanov, A., Voronkov, A.: The Design and Implementation of Vampire. AI Communications 15(2-3), 91–110 (2002)
Schumann, J.: Automated Theorem Proving in Software Engineering. Springer, Heidelberg (2001)
Sutcliffe, G., Suttner, C.: CASC Home Page, http://www.tptp.org/CASC
Sutcliffe, G., Suttner, C.: TPTP Home Page, http://www.tptp.org
Weidenbach, C.: SPASS Home Page, http://spass.mpi-sb.mpg.de
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)
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)
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)
Whittle, J., Schumann, J.: Automating the Implementation of Kalman Filter Algorithms (2004) (in review)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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