the computation provides a well-defined result): Composition operator (also called the substitution operator): Given an m-ary function and m k-ary functions : This means that is defined only if and are all defined. Primitive recursion operator : Given the k-ary function and k+2 -ary function : This means that is defined only if and are defined for all Minimization operator : Given a (k+1)-ary function , the k-ary function is defined by: Intuitively, minimisation seeks—beginning the search from 0 and proceeding upwards—the smallest argument that causes the function to return zero; if there is no such argument, or if one encounters an argument for which is not defined, then the search never terminates, and is not defined for the argument While some textbooks use the μ-operator as defined here, others like demand that the μ-operator is applied to total functions only. Although this restricts the μ-operator as compared to the definition given here, the class of μ-recursive functions remains the same, which follows from Kleene's Normal Form Theorem (see below). The only difference is, that it becomes undecidable whether a specific function definition defines a μ-recursive function, as it is undecidable whether a computable (i.e. μ-recursive) function is total. The strong equality operator can be used to compare partial μ-recursive functions. This is defined for all partial functions f and g so that holds if and only if for any choice of arguments either both functions are defined and their values are equal or both functions are undefined. Examples Examples not involving the minimization operator can be found at Primitive recursive function#Examples. The following examples are intended just to demonstrate the use of the minimization operator; they could also be defined without it, albeit in a more complicated way, since they are all primitive recursive. The following examples define general recursive functions that are not primitive recursive; hence they cannot avoid using the minimization operator. Total recursive function A general recursive function is called total recursive function if it is defined for every input, or, equivalently, if it can be computed by a total Turing machine. There is no way to computably tell if a given general recursive function is total - see Halting problem. Equivalence with other models of computability In the equivalence of models of computability, a parallel is drawn between Turing machines that do not terminate for certain inputs and an undefined result for that input in