Computable set

From Wikipedia, the free encyclopedia
(Redirected from Recursive set)
Jump to navigation Jump to search

In computability theory, a set of natural numbers is computable (or decidable or recursive) if there is an algorithm that computes the membership of every natural number in a finite number of steps. A set is noncomputable (or undecidable) if it is not computable.

Definition

[edit | edit source]

A subset S of the natural numbers is computable if there exists a total computable function f such that:

f(x)=1 if xS
f(x)=0 if xS.

In other words, the set S is computable if and only if the indicator function 𝟙S is computable.

Examples

[edit | edit source]
  • Every recursive language is computable.
  • Every finite or cofinite subset of the natural numbers is computable.
    • The empty set is computable.
    • The entire set of natural numbers is computable.
    • Every natural number is computable.[note 1]
  • The subset of prime numbers is computable.
  • The set of Gödel numbers is computable.[note 2]

Non-examples

[edit | edit source]

Properties

[edit | edit source]

Both A, B are sets in this section.

  • If A is computable then the complement of A is computable.
  • If A and B are computable then:

In general, the image of a computable set under a computable function is computably enumerable, but possibly not computable.

A is computable if and only if it is at level Δ10 of the arithmetical hierarchy.

A is computable if and only if it is either the image (or range) of a nondecreasing total computable function, or the empty set.

See also

[edit | edit source]

Notes

[edit | edit source]
  1. ^ That is, under the Set-theoretic definition of natural numbers, the set of natural numbers less than a given natural number is computable.
  2. ^ c.f. Gödel's incompleteness theorems; "On formally undecidable propositions of Principia Mathematica and related systems I" by Kurt Gödel.

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).

Bibliography

[edit | edit source]
  • Cutland, N. Computability. Cambridge University Press, Cambridge-New York, 1980. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).; Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  • Rogers, H. The Theory of Recursive Functions and Effective Computability, MIT Press. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).; Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  • Soare, R. Recursively enumerable sets and degrees. Perspectives in Mathematical Logic. Springer-Verlag, Berlin, 1987. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
[edit | edit source]
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).