A sequence of sets of functions F0, F1, F2,… with the property thatF0 ⊆ F1 ⊆ F2 ⊆ … (see subset). Typically the functions in F0 will include certain initial functions; the sets of functions F1, F2,… are normally defined by combining initial functions in some way.
F0 ⊆ F1 ⊆ F2 ⊆ …
Hierarchies of primitive recursive functions can be defined by letting Fi represent those functions that can be computed by programs containing at most i loops nested one within the other. thenFi ⊆ Fi+1for all integers i > 0. The union of all these sets includes all the primitive recursive functions and only those functions. Consequently the hierarchy is often called a subrecursive hierarchy. This same hierarchy can be expressed in a slightly different form, so resulting in the Grzegorczyk hierarchy.
Fi ⊆ Fi+1
In an attempt to circumvent problems caused by recursion, Bertrand Russell invented a theory of types, which essentially imposed a hierarchy on the set of functions; functions at one level could be defined only in terms of functions at lower levels.
The study of hierarchies of functions dates from work of David Hilbert around 1926 on the foundations of mathematics. More recent interest stems from their applicability to computational complexity.