Jump to content

Double recursion

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Sligocki (talk | contribs) at 01:40, 8 December 2009 (Created page with 'In recursive function theory, '''double recursion''' is an extension of primitive recursion which allows the definition of non-primitive recursive functions...'). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

In recursive function theory, double recursion is an extension of primitive recursion which allows the definition of non-primitive recursive functions like the Ackermann function.

Raphael M. Robinson called functions of two natural number variables G(n, x) double recursive with respect to given functions, if

  • G(0, x) is a given function of x.
  • G(n+1, 0) is obtained by substitution from the function G(n, ·) and given functions.
  • G(n+1, x+1) is obtained by substitution from G(n+1, x), the function G(n, ·) and given functions.[1]

Robinson goes on to provide a specific double recursive function (originally defined by Rózsa Péter)

  • G(0, x) = x + 1
  • G(n+1, 0) = G(n, 1)
  • G(n+1, x+1) = G(n, G(n+1, x))

where the given functions are primitive recursive, but G is not primitive recursive. In fact, this is precisely the function now known as the Ackermann function.

See also

References

  1. ^ Raphael M. Robinson (1948). "Recursion and Double Recursion". Bulletin of the American Mathematical Society. 54: 987–93. doi:10.1090/S0002-9904-1948-09121-2.