Total Recursive Functions and Partial Recursive Functions in Automata

Total Recursive Functions:
A recursive function is called total recursive function if it is defined for its all arguments.Let f(a1, a2, …an) be a function defined on function g(b1, b2, …bn).Then f is a total function if every element of f is assigned to some unique element of function g.

  • A total function is called recursive or primitive recursive if and only if it is an initial function over n, or it is obtained by applying composition or recursion with finite number of times to the initial function over n.
  • Multiplication of two positive integers is total recursive function or primitive recursive function.
  • Not all total recursive function are primitive recursive function.
  • Ackerman’s function is a total function
  • All primitive recursive function are total function.
  • Function like n!, logn are total recursive function.

Partial Recursive Functions:
A function f(a1, a2, ….an)computed by a TM is known as partial recursive function.if f is defined for some but not all values of a1, a2, ….an.Let f(a1, a2, …an) is a function and defined on function g(b1, b2, ….bn) then f is partial function if some element of f is assigned to almost one element of function g.

A partial function is recursive if it is an initial function over N, or it is obtained by applying recursion or composition or minimization on initial function N.



  • Subtraction of two positive integers is partial recursive function.
  • The compositon of partial(total) functions yields a partial(total) function.
  • The minimization of a total recursive function is a partial recursive function.
  • Primitive Recursive function ? Total function ? Partial recursive Functions



My Personal Notes arrow_drop_up


If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.