Walther recursion

{{more footnotes needed|date=September 2011}}

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 ==

  • {{cite journal

| last=Walther

| first=Christoph

| author-link= Christoph Walther

| title=On Proving the Termination of Algorithms by Machine

| journal=Artificial Intelligence

| volume=70

| number=1

| year=1991

|url=https://www.researchgate.net/profile/Christoph-Walther/publication/220545855_On_Proving_the_Termination_of_Algorithms_by_Machine/links/5a974a8eaca27214056b3bf4/On-Proving-the-Termination-of-Algorithms-by-Machine.pdf

|doi=10.1016/0004-3702(94)90063-9

}}

  • {{cite thesis

| last=Wu

| first=Alexander

| title=Automated termination proofs using Walther recursion

| url=http://dspace.mit.edu/handle/1721.1/35388

| year=1994

| publisher=Massachusetts Institute of Technology

| accessdate=2014-09-15

}}

  • {{cite conference

| url = http://ttic.uchicago.edu/~dmcallester/walther.ps

|title=Walther recursion

|last1=McAllester |first1=David| author1-link = David A. McAllester

|last2=Arkoudas |first2=Kostas

| year = 1996

| conference = 13th International Conference on Automated Deduction (CADE-13)

|series=LNCS|volume=1104

| conference-url = https://www.springer.com/computer/ai/book/978-3-540-61511-8

| editor = McRobbie, Michael A. |editor2=Slaney, J.K.

| publisher = Springer-Verlag

| location = New Brunswick, NJ, USA

| pages = 643–657

| isbn = 3-540-61511-3

|doi=10.1007/3-540-61511-3_119|citeseerx=10.1.1.46.5487

}}

Category:Recursion

{{compu-prog-stub}}