Content deleted Content added
short description Tags: Mobile edit Mobile app edit iOS app edit |
Undid revision 1262222644 by Clarkwalkers (talk) |
||
(8 intermediate revisions by 7 users not shown) | |||
Line 2:
{{One source|date=May 2021}}
An '''enumerator''' is
==Formal definition==
{{Unreferenced section|date=April 2021}}
An enumerator <math>E</math> can be defined as a 2-tape Turing machine ([[Multitape Turing machine]] where <math> k=2 </math>) whose language is <math>\empty</math>. Initially, <math>E</math> receives no input, and all the tapes are blank (i.e., filled with blank symbols). Newly defined symbol <math>\#\in \Gamma\land\#\notin \Sigma</math> is the delimiter that marks end of an element of <math>S</math>. The second tape can be regarded as the printer, strings on it are separated by <math>\#</math>. The language enumerated by an enumerator <math>E</math> denoted by <math>L(E)</math> is defined as set of the strings on the second tape (the printer).
==Equivalence of Enumerator and Turing Machines==
Line 34 ⟶ 25:
'''An Enumerable Language is Turing Recognizable'''
It's very easy to construct a Turing Machine <math>M</math> that recognizes the enumerable language <math>L</math>. We can have two tapes. On one tape we take the input string and on the other tape, we run the enumerator to enumerate the strings in the language one after another. Once a string is printed in the second tape we compare it with the input in the first tape. If
== References ==
{{refbegin}}
* {{cite book |last=Sipser |first=Michael |title=Introduction to the Theory of Computation - International Edition |year=2012 |publisher=Cengage Learning |isbn=978-1-133-18781-3}}
{{refend}}
[[Category:
[[Category:
{{
|