What is a Turing Machine?

910 views

There are many references to it in public discussions, but trying to learn about it from Wikipedia is like reading in a new foreign language.

In: 283

32 Answers

Anonymous 0 Comments

A Turing machine is a finite-state machine that is hooked up to a length of tape (usually the tape is considered infinite, I believe). The concept of a finite-state machine is quite simple: it is a machine with a limited (finite) number of states, and those states will change depending upon the previous state and external inputs.

The machine can do three things to the tape, depending upon it’s state: move the tape backwards and forwards, read a number off the tape, or write a number to the tape. Numbers that the machine reads off the tape can be considered inputs and will change the state of the machine. The analogy to today’s modern computers should be fairly obvious: the finite-state machine is the CPU, and the tape is the memory.

There are several important results that can be derived from a Turing machine. The most important is that if the machine is “Turing-complete” then it can simulate any other Turing machine. It’s surprising just how simple a Turing machine can be to be Turing complete. I believe there are computer languages with only one or two commands that are considered Turing complete. Excel spreadsheets are Turing complete. So is the template macro system for C++.

You are viewing 1 out of 32 answers, click here to view all answers.