Higher-Order Computability
Kleene's first model is a computability model consists of
- the single datatype
- operations are Turing computable partial functions
The model has standard products, the computable operation
defines a bijection and satisfied weak product. Any element may serve as a weak terminal, because is computable.
weakly cartesian closed structure [local-2]
Here can only be , so need a suitable operation . Let be some chosen enumeration of all Turing machines for computing partial functions , then there is a Turing machine that accepts two inputs and returns the result of applying the machine to the single input .
representable of [local-1]
The partial functions representable within the model via the standard product operations are just the partial computable ones. We may also see that these coincide exactly with those represented by some total computable , in the sense that for all .
Proof [local-0]
One half of this is immediate: given a computable the operation is computable. The other half is precisely the content of Kleene's s-m-n from basic computability theory: for any Turing machine accepting two arguments, there is a machine accepting one argument such that for each , is an index for a machine computing from .