in the theory of computation, the sudan function is an example of a function that is recursive, but not primitive recursive. this is also true of the better-known ackermann function. the sudan function was the first function having this property to be published.