# Admissible numbering

In computability theory, admissible numberings are enumerations (numberings) of the set of partial computable functions that can be converted to and from the standard numbering. These numberings are also called acceptable numberings and acceptable programming systems.
Rogers' equivalence theorem shows that all acceptable programming systems are equivalent to each other in the formal sense of numbering theory.

## Definition

The formalization of computability theory by Kleene led to a particular universal partial computable function Ψ(e, x) defined using the T predicate. This function is universal in the sense that it is partial computable, and for any partial computable function f there is an e such that, for all x, f(x) = Ψ(e,x), where the equality means that either both sides are undefined or both are defined and are equal. It is common to write ψ$_e$(x) for Ψ(e,x); thus the sequence ψ$_0$, ψ$_1$, ... is an enumeration of all partial computable functions. Such enumerations are formally called computable numberings of the partial computable functions.
An arbitrary numbering η of partial functions is defined to be an admissible numbering if:
* The function H(e,x) = η$_e$(x) is a partial computable function.
* There is a total computable function f such that, for all e, η$_e$ = ψ$_{f(e)}$.
* There is a total computable function g such that, for all e, ψ$_e$ = η$_{g(e)}$.
Here, the first bullet requires the numbering to be computable; the second requires that any index for the numbering η can be converted effectively to an index to the numbering ψ; and the third requires that any index for the numbering ψ can be effectively converted to an index for the numbering η.

## Equivalent definition

The following equivalent characterization of admissibility has the advantage of being "internal to η", in that it makes no direct reference to a standard numbering (only indirectly through the definition of Turing universality). A numbering η of partial functions is admissible in the above sense if and only if:
* The evaluation function H(e,x) = η$_e$(x) is a partial computable function.
* η is Turing universal: for all partial computable functions f there is an e such that η$_e$=f (note that here we are not assuming a total computable function that transforms η-indices to ψ-indices)
* η has "computable currying" or satisfies the Parameter Theorem or S-m-n Theorem, i.e., there is a total computable function c such that for all e,x,y, η$_{c(e,x)}$(y)=η$_e$(x,y)
The proof is as follows:
    The fact that admissible numberings in the above sense have all these properties follows from the fact that the standard numbering does, and Rogers's Equivalence Theorem
    In the other direction, suppose η has the properties in the equivalent characterization.
    Since the evaluation function H(e,x)=η$_e$(x) is partial computable, there exists v such that ψ$_v$=H. Thus, by the Parameter Theorem for the standard numbering, there is a total computable function d such that ψ$_{d(v,e)}$(x)=H(e,x) for all x. The total function f(e) = d(v,e) then satisfies the second part of the above definition.
    Next, since the evaluation function E(e,x)=ψ$_e$(x) for the standard numbering is partial computable, by the assumption of Turing universality there exists u such that η$_u$(e,x)=ψ$_e$(x) for all e,x.
    Let c(x,e) be the computable currying function for η. Then η$_{c(u,e)}$=ψ$_e$ for all e, so g(e) = c(u,e) satisfies the third part of the first definition above.

## Rogers' equivalence theorem

Hartley Rogers, Jr. showed that a numbering η of the partial computable functions is admissible if and only if there is a total computable bijection p such that, for all e, η$_e$ = ψ$_{p(e)}$ (Soare 1987:25).