Jump to content

PR (complexity)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Miym (talk | contribs) at 19:01, 10 October 2009 (add a reference; rm redundant see also). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

PR is the complexity class of all primitive recursive functions – or, equivalently, the set of all formal languages that can be decided by such a function. This includes addition, multiplication, exponentiation, tetration, etc.

The Ackermann function is an example of a function that is not primitive recursive, showing that PR is strictly contained in R.

PR functions can be explicitly enumerated, whereas not all functions R can be. This shows that 'PR' has a syntactic definition, whereas R lacks one.

On the other hand, we can "enumerate" any recursively enumerable set (see also its complexity class RE) by a primitive-recursive function in the following sense: given an input (M, k), where M is a Turing machine and k is an integer, if M halts within k steps then output M; otherwise output nothing. Then the union of the outputs, over all possible inputs (M, k), is exactly the set of M that halt.

PR strictly contains ELEMENTARY.

References