Abstract
Real number theorem proving has many uses, particularly for verification of safety critical systems and systems for which design errors may be costly. We discuss a chain of developments building on real number theorem proving in PVS. This leads from the verification of aspects of an air traffic control system, through work on the integration of computer algebra and automated theorem proving to a new tool, NRV, first presented here that builds on the capabilities of Maple and PVS to provide a verified and automatic analysis of Nichols plots. This automates a standard technique used by control engineers and greatly improves assurance compared with the traditional method of visual inspection of the Nichols plots.
Article PDF
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Avoid common mistakes on your manuscript.
References
Adams RA (1995) Calculus: a complete course, 3rd edn. Addison-Wesley, Reading
Adams A, Dunstan M, Gottliebsen H, Kelsey T, Martin U, Owre S (2001) Computer algebra meets automated theorem proving: integrating maple and PVS. In: Boulton RJ, Jackson PB (eds) 14th international conference on theorem proving in higherOrder logics. Lecture notes in computer science, vol 2152. Springer-Verlag, pp 27–42
Adams AA, Gottliebsen H, Linton SA, Martin U (1999) Automated theorem proving in support of computer algebra: symbolic definite integration as a case study. In: Dooley S (ed) ISSAC ’99: proceedings of the 1999 international symposium on symbolic and algebraic computation. Vancouver, British Columbia, 1999. Simon Fraser University, ACM Press, pp 253–260
Adams AA, Gottliebsen H, Linton SA, Martin U (1999) VSDITLU: a verified symbolic definite integral table look-up. In: Ganzinger H (ed) Automated deduction—CADE-16. Lecture notes in artificial intelligence, vol 1632. Trento, Italy, 1999. ITC-irst, Springer-Verlag, pp 112–126
Akbarpour B, Paulson LC (2008) Metitarski: an automatic prover for the elementary functions. In: Autexier S, Campbell J, Rubio J, Sorge V, Suzuki M, Wiedijk F (eds) AISC/MKM/Calculemus Lecture notes in computer science, vol 5144. Springer, pp 217–231
Artin E (1964) The gamma function. Holt, Rinehart and Winston, Inc, New York
Brown CW, Encarnacin MJ, Hong H, Johnson J, Werner Kr, Liska R, Mccallum S (2003) QEPCAD B: a program for computing with semi-algebraic sets using cads. SIGSAM Bull 37:108
Ballarin C, Homann K, Calmet J (1995) Theorems and algorithms: an interface between Isabelle and Maple. In: ISSAC, pp 150–157
Bosgra OH, Kwakernaak H, Meinsma G (2001) Design methods for control systems: notes for a course of the Dutch Institute of Systems and Control, Winter term 2001–2002. Department of Systems, Signals and Control, University of Twente
Boldo S, Muñoz C (2006) A formalization of floating-point numbers in PVS. Report NIA Report No. 2006-01, NASA/CR-2006-214298, NIA-NASA Langley, National Institute of Aerospace, Hampton, VA
Butler R NASA LaRC PVS libraries. http://shemesh.larc.nasa.gov/fm/larc/PVS-library/pvslib.html
Carreño V, Gottliebsen H, Butler R, Kalvala S (2004) Formal modeling and analysis of a preliminary small aircraft transportation system (SATS) concept. Technical Report NASA/TM-2004-21, NASA Langley Research Center, NASA LaRC, Hampton VA 23681-2199, USA
Carreño V, Muñoz C Aircraft trajectory modeling and alerting algorithm verification. In: Harrison and Aagaard , pp 90–105
Carreño V, Muñoz C (2005) Safety verification of the Small Aircraft Transportation System concept of operations. In: Proceedings of the AIAA 5th aviation, technology, integration, and operations conference, AIAA-2005-7423. Arlington, Virginia
Dorf RC, Bishop RH (2001) Modern control systems, 9th edn. Prentice-Hall, Englewood Cliffs
de Moura L, Owre S, Rue H, Rushby J, Shankar N (2005) Integrating verification components. http://www.csl.sri.com/cgi-bin/rushby/ps2pdf.pl?~rushby/papers/vstte05
Dutertre B (1996) Elements of mathematical analysis in PVS. In: von Wright J, Grundy J, Harrison J (eds) Theorem proving in higher order logics: 9th international conference. Lecture notes in computer science, vol. 1125. Springer-Verlag, pp 141–156
Fleuriot JD On the mechanization of real analysis in Isabelle/HOL. In: Harrison and Aagaard , pp 146–162
SRI Formalware. Yices. http://yices.csl.sri.com/
Gierz G, Hofmann KH, Keimel K, Lawson JD, Mislove M, Scott DS (1980) A compendium of continuous lattices (CCL). Springer-Verlag, Berlin
Gonthier G A computer-checked proof of the Four Colour Theorem. http://research.microsoft.com/~gonthier/4colproof.pdf
Gottliebsen H Transcendental functions and continuity checking in PVS. In: Harrison and Aagaard , pp 198–215
Gottliebsen H (2001) Automated theorem proving for mathematics: real analysis in PVS. PhD thesis, University of St Andrews
Gottliebsen H, So CM The Maple–PVS interface. http://www.dcs.qmul.ac.uk/~hago/Maple-PVS/
Harrison J, Aagaard M (eds) (2000) In: Theorem proving in higher order logics: 13th international conference, TPHOLs 2000. Lecture notes in computer science, vol 1869. Springer-Verlag
Hales T The flyspeck project. http://www.math.pitt.edu/~thales/flyspeck/
Harrison J (1998) Theorem proving with the real numbers. Springer-Verlag, Berlin
Harrison J Formal verification of IA-64 division algorithms. In: Harrison and Aagaard , pp 234–251
Hardy R (2006) Formal methods for control engineering: a validated decision procedure for Nichols plot analysis. PhD thesis, University of St Andrews
Jacobi C (2002) Formal verification of a fully IEEE compliant floating point unit. PhD thesis, University of the Saarland, 2002. http://engr.smu.edu/~seidel/research/diss-jacobi.ps.gz
Kemmerly GT, Syrett NE Small aircraft transportation system (SATS). http://sats.nasa.gov/main.html
Lightfoot O (2006) A real arithmetic test suite for theorem provers. In: 13th workshop on automated reasoning. ARW, pp 21–23
Maplesoft (2012) The maple documentation center. http://www.maplesoft.com/documentation_center/
Marker D (1996) Model theory and exponentiation. Not Am Math Soc 43: 753–759
Muñoz C, Lester D (2005) Real number calculations and theorem proving. In: Hurd J, Melham T (eds) Proceedings of the 18th international conference on theorem proving in higher order logics, TPHOLs 2005. Lecture notes in computer science, vol 3603. Oxford, UK, 2005. Springer-Verlag, pp 195–210
Moore JS, Lynch TW, Kaufmann M (1998) A mechanically checked proof of the AMD5K86TM floating point division program. IEEE Trans Comput 47(9): 913–926
Muñoz C, Mayero M Real automation in the field. http://research.nianet.org/~munoz/Field/
Nowak B, Trybulec A (1993) Hahn–Banach theorem. J Formaliz Math. http://markun.cs.shinshu-u.ac.jp/Mirror/mizar/JFM/Vol5/hahnban.html
Ogata K (1997) Modern control engineering, 3rd edn. Prentice-Hall, Englewood Cliffs
Owre S, Rushby JM, Shankar N (1992) PVS: a prototype verification system. In: Kapur D (ed) 11th international conference on automated deduction (CADE). Lecture notes in artificial intelligence, vol 607. Saratoga, NY, June 1992. Springer-Verlag, pp 748–752
Pratt RW (ed) (2000) Flight control systems: practical issues in design and implementation. IEE control engineering series, vol 57. The Institution of Electrical Engineers. Copublished by The American Institute of Aeronautics and Astronautics
Russinoff DM (1999) A mechanically checked proof of correctness of the AMD K5 floating point square root microcode. Form Methods Syst Des. 14(1): 75–125
Spivak M (1973) Calculus. Addison-Wesley, Reading
Inc. The Mathworks. MATLAB and Simulink. http://www.mathworks.com/
van Benthem Jutting LS (1977) Checking Landau’s “Grundlagen” in the AUTOMATH system. PhD thesis, Eindhoven University of Technology
Di Vito BL (2003) Strategy-enhanced interactive proving and arithmetic simplification for PVS. In: 1st international workshop on design and application of strategies/tactics in higher order logics (STRATA 2003). Rome, Italy
Acknowledgments
Our thanks are due to the many colleagues who have helped with our research and with the writing of this paper, especially Rob Arthan. Parts of the work were sponsored by QinetiQ and DSTL, and we are grateful to them for financial support, the involvement, patience and insights they brought to the research, and for their suggestion of Nicholls plots as an application. Support was also provided by EPSRC under grants EP/H500162, EP/F02309X and GR/S31242. We are grateful to the referees for their insightful and encouraging comments, which have been of great help in shaping the paper, and to the editor for his patience.
Open Access
This article is distributed under the terms of the Creative Commons Attribution License which permits any use, distribution, and reproduction in any medium, provided the original author(s) and the source are credited.
Author information
Authors and Affiliations
Corresponding author
Additional information
David Duce and Jim Woodcock
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
About this article
Cite this article
Gottliebsen, H., Hardy, R., Lightfoot, O. et al. Applications of real number theorem proving in PVS. Form Asp Comp 25, 993–1016 (2013). https://doi.org/10.1007/s00165-012-0232-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-012-0232-9