Recursive and Computably Enumerable Sets
The structure of computably enumerable (c.e.) sets and their Turing degrees forms the core of classical computability theory. The c.e. sets sit between the decidable sets and the full arithmetic hierarchy.
Turing Reducibility
A set is Turing reducible to (written ) if there is a Turing machine with oracle that decides . The Turing degree of is . The degree of the computable sets is , and the degree of the halting problem is .
is many-one reducible to (written ) if there is a total computable function with . A c.e. set is -complete if every c.e. set is many-one reducible to . The halting problem is -complete.
The set is not c.e. (it is -complete in the arithmetic hierarchy). In contrast, is c.e. but not decidable, and is not c.e. (if both and were c.e., would be decidable).
Post's Problem and Priority Arguments
A c.e. set is simple if is infinite, co-infinite, and contains no infinite c.e. subset. Post constructed simple sets as a first attempt to find incomplete c.e. degrees, but simplicity alone does not guarantee incompleteness.
The Friedberg-Muchnik theorem (1956-57) resolved Post's problem: there exist c.e. sets and such that and . The proof uses the finite injury priority method, where requirements are ordered by priority and may be "injured" (reset) by higher-priority requirements. This technique revolutionized computability theory.
A c.e. degree is low if and high if . The low basis theorem states that every nonempty class contains a member of low degree. High degrees are those where the jump is as large as possible for c.e. degrees.