for δ is a number of the form , where e is the index of a total computable function such that for each n, is a notation for an ordinal λn less than δ and δ is the sup of the set . This may also be defined by taking effective joins at all levels instead of only notations for limit ordinals. There are only countably many ordinal notations, since each notation is a natural number; thus there is a countable ordinal which is the supremum of all ordinals that have a notation. This ordinal is known as the Church-Kleene ordinal and is denoted . Note that this ordinal is still countable, the symbol being only an analogy with the first uncountable ordinal, . The set of all natural numbers that are ordinal notations is denoted and called Kleene's . Ordinal notations are used to define iterated Turing jumps. The sets of natural numbers used to define the hierarchy are for each . is sometimes also denoted , or for a notation for . Suppose that δ has notation e. These sets were first defined by Davis (1950) and Mostowski (1951). The set is defined using e as follows. If δ = 0 then is the empty set. If δ = λ + 1 then is the Turing jump of . The sets and are and , respectively. If δ is a limit ordinal, let be the sequence of ordinals less than δ given by the notation e. The set is given by the rule . This is the effective join of the sets . Although the construction of depends on having a fixed notation for δ, and each infinite ordinal has many notations, a theorem of Spector shows that the Turing degree of depends only on δ, not on the particular notation used, and thus is well defined up to Turing degree. The hyperarithmetical hierarchy is defined from these iterated Turing jumps. A set X of natural numbers is classified at level δ of the hyperarithmetical hierarchy, for , if X is Turing reducible to . There will always be a least such δ if there is any; it is this least δ that measures the level of uncomputability of X. Hyperarithmetical sets and recursion in higher types A third characterization of the hyperarithmetical sets, due to Kleene, uses higher-type computable functionals. The type-2 functional is defined by the