Turing Machine: Difference between revisions
imported>Sandy Harris No edit summary |
imported>Sandy Harris No edit summary |
||
Line 7: | Line 7: | ||
| date = 1936 | | date = 1936 | ||
}}</ref> | }}</ref> | ||
is a theoretical computing device, first posited by mathematician [[Alan Turing]], which has been used extensively in analyzing computing problems such as tractability and complexity theory. | is a theoretical computing device, first posited by mathematician [[Alan Turing]], which has been used extensively in analyzing computing problems such as tractability and complexity theory. | ||
Its basic components are a length of tape and a head which operates on the tape. The tape is divided into segments, each of which can hold a single character which is an element of a predefined, finite set of characters called the 'tape alphabet'. The machine is always in one 'state' which is an element in a predefined, finite set of states. The head is also always in a single location on the tape (i.e. there is one character on the tape at which the head is located). The machine is fully deterministic &mash; the current state and current tape character determine what it does next. In a single computing step the head reads the character from the tape and takes actions based on the character and its current state. In addition to changing its internal state, it may take one of four actions — step to an adjacent character to the left, step to the right, change the character at the current location, or halt. | |||
== Turing Completeness == | == Turing Completeness == |
Revision as of 20:05, 9 August 2010
A Turing machine [1] is a theoretical computing device, first posited by mathematician Alan Turing, which has been used extensively in analyzing computing problems such as tractability and complexity theory.
Its basic components are a length of tape and a head which operates on the tape. The tape is divided into segments, each of which can hold a single character which is an element of a predefined, finite set of characters called the 'tape alphabet'. The machine is always in one 'state' which is an element in a predefined, finite set of states. The head is also always in a single location on the tape (i.e. there is one character on the tape at which the head is located). The machine is fully deterministic &mash; the current state and current tape character determine what it does next. In a single computing step the head reads the character from the tape and takes actions based on the character and its current state. In addition to changing its internal state, it may take one of four actions — step to an adjacent character to the left, step to the right, change the character at the current location, or halt.
Turing Completeness
A device that can simulate any Turing Machine is called Turing complete. The device does not necessarily have to be intentionally designed to compute or be a computer; if a device, piece of software or even an abstract concept meets the criteria it is Turing complete. Even software that is only used as a teaching tool or exists only as a concept, not as an implementation (such as Donald Knuth's MMIX[2]) can be considered "Turing complete," in a completely abstract sense.
References
- ↑ Alan Turing (1936), "On Computable Numbers, With an Application to the Entscheidungsproblem", Proceedings of the London Mathematical Society
- ↑ Donald Knuth. Knuth: MMIX. Retrieved on 2007-11-10.