Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Recursively enumerable language

From Wikipedia, the free encyclopedia
Formal language
This article includes alist of references,related reading, orexternal links,but its sources remain unclear because it lacksinline citations. Please helpimprove this article byintroducing more precise citations.(December 2024) (Learn how and when to remove this message)

Inmathematics,logic andcomputer science, aformal language is calledrecursively enumerable (alsorecognizable,partially decidable,semidecidable,Turing-acceptable orTuring-recognizable) if it is arecursively enumerable subset in theset of all possible words over thealphabet of the language, i.e., if there exists aTuring machine which will enumerate all valid strings of the language.

Recursively enumerable languages are known astype-0 languages in theChomsky hierarchy of formal languages. Allregular,context-free,context-sensitive andrecursive languages are recursively enumerable.

The class of all recursively enumerable languages is calledRE.

Definitions

[edit]

There are three equivalent definitions of a recursively enumerable language:

  1. A recursively enumerable language is arecursively enumerablesubset in theset of all possible words over thealphabet of thelanguage.
  2. A recursively enumerable language is a formal language for which there exists aTuring machine (or othercomputable function) which will enumerate all valid strings of the language. Note that if the language isinfinite, the enumerating algorithm provided can be chosen so that it avoids repetitions, since we can test whether the string produced for numbern is "already" produced for a number which is less thann. If it already is produced, use the output for inputn+1 instead (recursively), but again, test whether it is "new".
  3. A recursively enumerable language is a formal language for which there exists a Turing machine (or other computable function) that will halt and accept when presented with anystring in the language as input but may either halt and reject or loop forever when presented with a string not in the language. Contrast this torecursive languages, which require that the Turing machine halts in all cases.

Allregular,context-free,context-sensitive andrecursive languages are recursively enumerable.

Post's theorem shows thatRE, together with itscomplementco-RE, correspond to the first level of thearithmetical hierarchy.

Example

[edit]

The set ofhalting Turing machines is recursively enumerable but not recursive. Indeed, one can run the Turing machine and accept if the machine halts, hence it is recursively enumerable. On the other hand, the problem is undecidable.

Some other recursively enumerable languages that are not recursive include:

Closure properties

[edit]

Recursively enumerable languages (REL) areclosed under the following operations. That is, ifL andP are two recursively enumerable languages, then the following languages are recursively enumerable as well:

Recursively enumerable languages are not closed underset difference or complementation. The set differenceLP{\displaystyle L-P} is recursively enumerable ifP{\displaystyle P} is recursive. IfL{\displaystyle L} is recursively enumerable, then the complement ofL{\displaystyle L} is recursively enumerableif and only ifL{\displaystyle L} is also recursive.

See also

[edit]

Sources

[edit]

External links

[edit]
Each category of languages, except those marked by a*, is aproper subset of the category directly above it.Any language in each category is generated by a grammar and by an automaton in the category in the same line.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Recursively_enumerable_language&oldid=1261216165"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp