next up previous
Next: Computable Functionals Up: Formalisms For Describing Computable Previous: Functions Computable in Terms

Recursive Functions of the Integers

 

In Reference 7 we develop the recursive functions of a class of symbolic expressions in terms of the conditional expression and recursive function formalism.

As an example of the use of recursive function definitions, we shall give recursive definitions of a number of functions over the integers. We do this for three reasons: to help the reader familiarize himself with recursive definition, to show how much simpler in practice our methods of recursive definition are than either Turing machines or Kleene's formalism, and to prove that any partial recursive function (Kleene) on the non-negative integers is in tex2html_wrap_inline2638 where tex2html_wrap_inline2578 contains only the successor function and the predicate equality.

Let I be the set of non-negative integers {0,1,2,...} and denote the successor of an integer n by n' and denote the equality of integers tex2html_wrap_inline2948 and tex2html_wrap_inline2950 by tex2html_wrap_inline2952 . If we define functions succ and eq by

displaymath2958

displaymath2569

then we write tex2html_wrap_inline2578 = tex2html_wrap_inline2966 . We are interested in tex2html_wrap_inline2638 . Clearly all functions in tex2html_wrap_inline2638 will have either integers or truth values as values.

First we define the predecessor function pred(not defined for n = 0) by

displaymath2976

displaymath2978

We shall denote pred(n) by tex2html_wrap_inline2982

Now we define the sum

displaymath2984

the product

displaymath2986

the difference

displaymath2988

which is defined only for tex2html_wrap_inline2990 The inequality predicate tex2html_wrap_inline2992 is defined by

displaymath958

The strict inequality m < n is defined by

displaymath962

The integer valued quotient m/n is defined by

displaymath3002

The remainder on dividing m by n is defined by

displaymath3008

and the divisibility of a number n by a number m,

displaymath978

The primeness of a number is defined by

displaymath980

where

displaymath982

The Euclidean algorithm defines the greatest common divisor, and we write

displaymath3020

and we can define Euler's tex2html_wrap_inline3022 -function by

displaymath3024

where

displaymath3026

tex2html_wrap_inline3028 is the number of numbers less than n and relatively prime to n.

The above shows that our form of recursion is a convenient way of defining arithmetical functions. We shall see how some of the properties of the arithmetical functions can conveniently be derived in this formalism in a later section.


next up previous
Next: Computable Functionals Up: Formalisms For Describing Computable Previous: Functions Computable in Terms

John McCarthy
Wed May 1 17:18:52 PDT 1996