 Since course of values recursion is occasionally used in mathematical practice, it is significant that it does not lead outside the class of primitive recursive functions. There are, however, a number of other possible ways in which the scheme (\ref{prscheme}) might also be generalized, including what are known as double recursion and nested recursion. The definition of the Ackermann-Péter function \(\pi(x,y)\) in  Section 1.4  exhibits the former since its value at \(x,y\) depends on its value at both \(x-1\) and \(y-1\) and also the latter since the occurrence of the defined function \(\pi(x,y)\) is “nested” within itself (rather than an auxiliary function) on the righthand side of the third clause. Although such definitions arise less often in practice, they are important historically due to their occurrence in Hilbert’s original discussion of recursion (see  Section 1.3).  Such schemes were considered systematically by Péter (1967) who showed that unnested double recursion on its own also does not lead outside the class of primitive recursive functions.