Jump to content

Walther recursion

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Monkbot (talk | contribs) at 07:06, 6 December 2020 (Task 18 (cosmetic): eval 3 templates: del empty params (2×); hyphenate params (3×);). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In computer programming, Walther recursion (named after Christoph Walther) is a method of analysing recursive functions that can determine if the function is definitely terminating, given finite inputs. It allows a more natural style of expressing computation than simply using primitive recursive functions.

Since the halting problem cannot be solved in general, there must still be programs that terminate, but which Walther recursion cannot prove to terminate. Walther recursion may be used in total functional languages in order to allow a more liberal style of showing primitive recursion.

See also

References

  • Walther, Christoph (1991). "On Proving the Termination of Algorithms by Machine" (PDF). Artificial Intelligence. 70 (1).
  • Wu, Alexander (1994). Automated termination proofs using Walther recursion (Thesis). Massachusetts Institute of Technology. Retrieved 2014-09-15.
  • McAllester, David A.; Arkoudas, Kostas (1996). McRobbie, Michael A.; Slaney, J.K. (eds.). Walther Recursion. Proceedings of the 13th International Conference on Automated Deduction. New Brunswick, NJ, USA: Springer-Verlag. pp. 643–657. ISBN 3-540-61511-3.