Abstract
In proof checkers and theorem provers (e.g. Coq [4] and ProPre [13]) recursive definitions of functions are shown to terminate automatically. In standard non-formalised termination proofs of recursive functions, a decreasing measure is sometimes used. Such a decreasing measure is usually difficult to find.
By observing the proof trees of the proofs of termination of recursive functions in ProPre (the system used in Coq’s proofs of termination), [14] finds a decreasing measure which could be used to show termination in the standard non-formalised way. This is important because it establishes a method to find decreasing measures that help in showing termination. As the ProPre system made heavy use of structural rather than inductive rules, an extended more powerful version has been built with new proof trees based on new rules.
In this article, we show that the ordinal measures found in [14] lose the decreasing property in the extended ProPre system and then, set out to show that the extended ProPre system will still be suitable for finding measures required by other systems (e.g. NQTHM). We do this by showing that exist other measures that can be associated to the proof trees developed in the extended ProPre system that respect the decreasing property. We also show that the new parameterised measure functions preserve the decreasing property up to a simple condition.
Supported by EPSRC GR/L15685.
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
Ben Cherifa, A., Lescanne, P.: Termination of rewriting systems by polynomial interpretations and its implementation. Science of Computer Programming 9(2), 137–159 (1987)
Boyer, R.S., Moore, J.S.: A computational logic. Academic Press, New York (1979)
Boyer, R.S., Moore, J.S.: A computational logic handbook. Academic Press, London (1988)
Cornes, C., et al.: The Coq proof assistant reference manual version 5.10. Technical Report 077, INRIA (1995)
Giesl, J.: Generating polynomial orderings for termination proofs. In: Hsiang, J. (ed.) RTA 1995. LNCS, vol. 914. Springer, Heidelberg (1995)
Giesl, J.: Automated termination proofs with measure functions. In: Wachsmuth, I., Brauer, W., Rollinger, C.-R. (eds.) KI 1995. LNCS, vol. 981. Springer, Heidelberg (1995)
Giesl, J.: Termination analysis for functional programs using term orderings. In: Mycroft, A. (ed.) SAS 1995. LNCS, vol. 983. Springer, Heidelberg (1995)
Kamareddine, F.D., Monin, F.: On Formalised Proofs of Termination of Recursive Function. http://www.cee.hw.ac.uk/fairouz/papers/research-reports/ppdp99full.ps
Krivine, J.L., Parigot, M.: Programming with proofs. J. Inf. Process Cybern. EIK 26(3), 149–167 (1990)
Lankford, D.S.: On proving term rewriting systems are Noetherian. Techinical report Memo MTP-3, Louisiana Technology University (1979)
Manoury, P.: A User’s friendly syntax to define recursive functions as typed lambdaterms. In: Smith, J., Dybjer, P., Nordström, B. (eds.) TYPES 1994. LNCS, vol. 996. Springer, Heidelberg (1995)
Manoury, P., Simonot, M.: Des preuves de totalité de fonctions comme synthèse de programmes. PhD thesis, University Paris 7 (1992)
Manoury, P., Simonot, M.: Automatizing termination proofs of recursively defined functions. Theoretical Computer Science 135(2), 319–343 (1994)
Monin, F., Simonot, M.: An ordinal measure based procedure for termination of functions. To appear in Theoretical Computer Science
Nielson, F., Nielson, H.R.: Operational semantics of termination types. Nordic Journal of Computing 3(2), 144–187 (1996)
Parigot, M.: Recursive programming with proofs. Theoretical Computer Science 94(2), 335–356 (1992)
Steinbach, J.: Generating polynomial orderings. Information Processing Letters 49, 85–93 (1994)
Walther, C.: Argument-bounded algorithms as a basis for automated termination proofs. In: Lusk, E.‘., Overbeek, R. (eds.) CADE 1988. LNCS, vol. 310. Springer, Heidelberg (1988)
Walther, C.: On proving the termination of algorithms by machine. Artificial intelligence 71(1), 101–157 (1994)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kamareddine, F., Monin, F. (1999). On Formalised Proofs of Termination of Recursive Functions . In: Nadathur, G. (eds) Principles and Practice of Declarative Programming. PPDP 1999. Lecture Notes in Computer Science, vol 1702. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10704567_2
Download citation
DOI: https://doi.org/10.1007/10704567_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66540-3
Online ISBN: 978-3-540-48164-5
eBook Packages: Springer Book Archive