Chemistry Reference and  Research
           
 
Periodic Table
- standard table
- large table
 
Chemical Elements
- by name
- by symbol
- by atomic number
 
Chemical Properties
 
Chemical Reactions
 
Organic Chemistry
 
Branches of Chemistry
Analytical chemistry
Biochemistry
Computational Chemistry
Electrochemistry
Environmental chemistry
Geochemistry
Inorganic chemistry
Materials science
Medicinal chemistry
Nuclear chemistry
Organic chemistry
Pharmacology
Physical chemistry
Polymer chemistry
Supramolecular Chemistry
Thermochemistry

Recursively enumerable language

A recursively enumerable language in mathematics, logic and computer science, is a type of formal language which is also called recursively enumerable, partially decidable or Turing-recognizable. It is known as a type-0 language in the Chomsky hierarchy of formal languages.

Definitions

There exist three equivalent major definitions for the concept of a recursively enumerable language.

  1. A recursively enumerable formal language is a recursively enumerable subset in the set of all possible words over the alphabet of the language.
  2. A recursively enumerable language is a formal language for which there exists an turing machine (or other computable function) which will enumerate all valid strings of the language. Note that, if the language is infinite, the enumerating algorithm provided can be chosen so that it avoids repetitions, since we can test whether the string produced for number n is "already" produced for a number which is less than n. If it already is produced, use the output for input n+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 any string in the language as input. The turing machine in question may either halt and reject or loop forever when presented with a string not in the language. (Contrast this to recursive languages, which require that the turing machine halts in all cases)

All regular, context-free, context-sensitive and recursive languages are recursively enumerable.

Properties

Recursively enumerable languages are closed under the following operations. That is, if L and P are two recursively enumerable languages, then the following languages are recursively enumerable as well:

  • the Kleene star L* of L
  • the concatenation LP of L and P
  • the union LP
  • the intersection LP

Note that recursively enumerable languages are not closed under set difference or complementation. The set difference L\P and the complement of L may or may not be recursively enumerable.

01-04-2007 01:16:19
The contents of this article are licensed from Wikipedia.org under the GNU Free Documentation License. How to see transparent copy