PR (complexity)
PR is the complexity class of all primitive recursive functions—or, equivalently, the set of all formal languages that can be decided in time bounded 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 (Cooper 2004:88).
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.
PR does not contain "PR-complete" problems (assuming, e.g., reductions that belong to ELEMENTARY). In practice, many problems that are not in PR but just beyond are [math]\displaystyle{ \text{𝐅}_\omega }[/math]-complete (Schmitz 2016).
References
- S. Barry Cooper (2004). Computability Theory. Chapman & Hall. ISBN 1-58488-237-9.
- Herbert Enderton (2011). Computability Theory. Academic Press. ISBN 978-0-12-384-958-8.
- Schmitz, Sylvain (2016). "Complexity Hierarchies beyond Elementary". ACM Transactions on Computation Theory 8: 1–36. doi:10.1145/2858784.
External links
Original source: https://en.wikipedia.org/wiki/PR (complexity).
Read more |