HOME

TheInfoList



OR:

The Grzegorczyk hierarchy (, ), named after the Polish logician Andrzej Grzegorczyk, is a hierarchy of functions used in
computability theory Computability theory, also known as recursion theory, is a branch of mathematical logic, computer science, and the theory of computation that originated in the 1930s with the study of computable functions and Turing degrees. The field has since ex ...
. Every function in the Grzegorczyk hierarchy is a
primitive recursive function In computability theory, a primitive recursive function is, roughly speaking, a function that can be computed by a computer program whose loops are all "for" loops (that is, an upper bound of the number of iterations of every loop is fixed befor ...
, and every primitive recursive function appears in the hierarchy at some level. The hierarchy deals with the rate at which the values of the functions grow; intuitively, functions in lower levels of the hierarchy grow slower than functions in the higher levels.


Definition

First we introduce an infinite set of functions, denoted ''Ei'' for some
natural number In mathematics, the natural numbers are the numbers 0, 1, 2, 3, and so on, possibly excluding 0. Some start counting with 0, defining the natural numbers as the non-negative integers , while others start with 1, defining them as the positive in ...
''i''. We define : \begin E_0(x,y) & = & x + y \\ E_1(x) & = & x^2 + 2 \\ E_(0) & = & 2 \\ E_(x+1) & = & E_(E_(x)) \\ \end E_0 is the addition function, and E_1 is a unary function which squares its argument and adds two. Then, for each ''n'' greater than 1, E_n(x)=E^_(2), i.e. the ''x''-th iterate of E_ evaluated at 2. From these functions we define the Grzegorczyk hierarchy. \mathcal^n, the ''n''-th set in the hierarchy, contains the following functions: # ''Ek'' for ''k'' < ''n'' # the zero function (''Z''(''x'') = 0); # the
successor function In mathematics, the successor function or successor operation sends a natural number to the next one. The successor function is denoted by ''S'', so ''S''(''n'') = ''n'' +1. For example, ''S''(1) = 2 and ''S''(2) = 3. The successor functio ...
(''S''(''x'') = ''x'' + 1); # the
projection function In set theory, a projection is one of two closely related types of functions or operations, namely: * A set-theoretic operation typified by the jth projection map, written \mathrm_j, that takes an element \vec = (x_1,\ \dots,\ x_j,\ \dots,\ x_k) ...
s ( p_i^m(t_1, t_2, \dots, t_m) = t_i ); # the (generalized) compositions of functions in the set (if ''h'', ''g''1, ''g''2, ... and ''g''m are in \mathcal^n, then f(\bar) = h(g_1(\bar), g_2(\bar), \dots, g_m(\bar)) is as well);Here \bar represents a
tuple In mathematics, a tuple is a finite sequence or ''ordered list'' of numbers or, more generally, mathematical objects, which are called the ''elements'' of the tuple. An -tuple is a tuple of elements, where is a non-negative integer. There is o ...
of inputs to ''f''. The notation f(\bar) means that ''f'' takes some arbitrary number of arguments and if \bar = (x, y, z), then f(\bar) = f(x, y, z). In the notation f(t, \bar), the first argument, ''t'', is specified explicitly and the rest as the arbitrary tuple \bar. Thus, if \bar = (x, y, z), then f(t, \bar) = f(t, x, y, z). This notation allows composition and limited recursion to be defined for functions, ''f'', of any number of arguments.
and # the results of limited (primitive) recursion applied to functions in the set, (if ''g'', ''h'' and ''j'' are in \mathcal^n and f(t, \bar) \leq j(t, \bar) for all ''t'' and \bar, and further f(0, \bar) = g(\bar) and f(t+1, \bar) = h(t,\bar,f(t,\bar)), then ''f'' is in \mathcal^n as well). In other words, \mathcal^n is the closure of set B_n = \ with respect to function composition and limited recursion (as defined above).


Properties

These sets clearly form the hierarchy : \mathcal^0 \subseteq \mathcal^1 \subseteq \mathcal^2 \subseteq \cdots because they are closures over the B_n's and B_0 \subseteq B_1 \subseteq B_2 \subseteq \cdots. They are strict subsets. In other words : \mathcal^0 \subsetneq \mathcal^1 \subsetneq \mathcal^2 \subsetneq \cdots because the
hyperoperation In mathematics, the hyperoperation sequence is an infinite sequence of arithmetic operations (called ''hyperoperations'' in this context) that starts with a unary operation (the successor function with ''n'' = 0). The sequence continues with th ...
H_n is in \mathcal^n but not in \mathcal^. *\mathcal^0 includes functions such as ''x''+1, ''x''+2, ... ** Every unary function ''f(x)'' in \mathcal^0 is ''upper bounded'' by some ''x''+''n''. However, \mathcal^0 also includes more complicated functions like ''x''∸1, ''x''∸''y'' (where ∸ is the
monus In mathematics, monus is an operator on certain commutative monoids that are not groups. A commutative monoid on which a monus operator is defined is called a commutative monoid with monus, or CMM. The monus operator may be denoted with the &minu ...
sign defined as ''x''∸''y'' = max(''x''-''y'', 0)), , etc. *\mathcal^1 provides all addition functions, such as ''x''+''y'', 4''x'', ... *\mathcal^2 provides all multiplication functions, such as ''xy'', ''x''4 *\mathcal^3 provides all exponentiation functions, such as ''x''''y'', 222''x'', and is exactly the elementary recursive functions. *\mathcal^4 provides all
tetration In mathematics, tetration (or hyper-4) is an operation (mathematics), operation based on iterated, or repeated, exponentiation. There is no standard mathematical notation, notation for tetration, though Knuth's up arrow notation \uparrow \upa ...
functions, and so on. Notably, both the function U and the characteristic function of the predicate T from the Kleene normal form theorem are definable in a way such that they lie at level \mathcal^0 of the Grzegorczyk hierarchy. This implies in particular that every recursively enumerable set is enumerable by some \mathcal^0-function.


Relation to primitive recursive functions

The definition of \mathcal^n is the same as that of the
primitive recursive function In computability theory, a primitive recursive function is, roughly speaking, a function that can be computed by a computer program whose loops are all "for" loops (that is, an upper bound of the number of iterations of every loop is fixed befor ...
s, , except that recursion is ''limited'' (f(t, \bar) \leq j(t, \bar) for some ''j'' in \mathcal^n) and the functions (E_k)_ are explicitly included in \mathcal^n. Thus the Grzegorczyk hierarchy can be seen as a way to ''limit'' the power of primitive recursion to different levels. It is clear from this fact that all functions in any level of the Grzegorczyk hierarchy are primitive recursive functions (i.e. \mathcal^n \subseteq \mathsf ) and thus: : \bigcup_n \subseteq \mathsf It can also be shown that all primitive recursive functions are in some level of the hierarchy, thus : \bigcup_n = \mathsf and the sets \mathcal^0, \mathcal^1 - \mathcal^0, \mathcal^2 - \mathcal^1, \dots, \mathcal^n - \mathcal^, \dots partition the set of primitive recursive functions, . Meyer and Ritchie introduced another hierarchy subdividing the primitive recursive functions, based on the nesting depth of loops needed to write a LOOP program that computes the function. For a natural number i, let \mathcal_i denote the set of functions computable by a LOOP program with LOOP and END commands nested no deeper than i levels. Fachini and Maggiolo-Schettini showed that \mathcal_i coincides with \mathcal_ for all integers i>1.E. Fachini, A. Maggiolo-Schettini, " hierarchy of primitive recursive sequence functions. From ''Informatique théorique'', book 13, no. 1 (1979), pp.49--67.p.63


Extensions

The Grzegorczyk hierarchy can be extended to transfinite ordinals. Such extensions define a fast-growing hierarchy. To do this, the generating functions E_\alpha must be recursively defined for
limit ordinal In set theory, a limit ordinal is an ordinal number that is neither zero nor a successor ordinal. Alternatively, an ordinal λ is a limit ordinal if there is an ordinal less than λ, and whenever β is an ordinal less than λ, then there exists a ...
s (note they have already been recursively defined for successor ordinals by the relation E_(n) = E_\alpha^n(2) ). If there is a standard way of defining a ''fundamental sequence'' \lambda_m, whose limit ordinal is \lambda, then the generating functions can be defined E_\lambda(n) = E_(n) . However, this definition depends upon a standard way of defining the fundamental sequence. suggests a standard way for all ordinals ''α'' < ε0. The original extension was due to
Martin Löb Martin Hugo Löb (; 31 March 1921 – 21 August 2006) was a German mathematician. He settled in the United Kingdom after the Second World War and specialised in mathematical logic. He moved to the Netherlands in the 1970s, where he remained in r ...
and Stan S. Wainer and is sometimes called the Löb–Wainer hierarchy.


See also

* ELEMENTARY * Fast-growing hierarchy *
Ordinal analysis In proof theory, ordinal analysis assigns ordinals (often large countable ordinals) to mathematical theories as a measure of their strength. If theories have the same proof-theoretic ordinal they are often equiconsistent, and if one theory ha ...


Notes


References


Bibliography

* * * * * * * {{Large numbers Computability theory Hierarchy of functions