Definition
Turing Machine
A Turing machine consists of seven components:
where:
is a finite set of states. is the input alphabet. is the tape alphabet. is a transition function. (left, right, stay) is the direction in which the head should move. is the initial state. is the blank symbol. are the accepting) states. A Turing machine halts on the first occasion of a final state
. In that case, is undefined.
Turing Machine (Boundary Symbols)
A Turing machine consists of eight components:
where:
is a finite set of states. is the alphabet of the input tape. is the alphabet of the working tape. is a transition function (left, right, stay) is the direction in which the head should move. is the initial state. is the left boundary symbol on the working tape is the left boundary symbol on the input word is the right boundary symbol on the input word is the blank symbol. are the accepting) states. A Turing machine halts on the first occasion of a final state
.
Tape
Definition
Link to originalTape (Turing Machine)
A tape is an infinite sequence of elements where each element can be blank
or a state . Almost all cells are non-blank.
Configuration
Definition
Link to originalConfiguration (Turing Machine)
A configuration is a complete snapshot of a Turing machine at a single moment.
Move to left, i.e.:
: Move to right, i.e.:
: Move stays (no movement), i.e.:
:
Language
Accepted Language
Accepted Language (Turing Machine)
The accepted language
of a Turing machine are all words for which terminates:
Recursive Enumerable Language
Definition
Link to originalRecursively Enumerable Language
A language
is recursively enumerable if there exists a Turing machine such that:
- for every
, halts and accepts , - for every
, either rejects or runs forever. i.e., there exists a Turing machine that accepts
. Equivalently, there’s a program that enumerates all strings of
(possibly with repetition) , every member of appears after finite time.
Recursive Language
Definition
Link to originalRecursive Language
A language
is recursive (or decidable) if there exists a total Turing machine such that, for every input , halts and:
- if
, accepts ; - if
, rejects . Equivalently:
- The characteristic function
is computable. - Both
and its complement are recursively enumerable. - There exists a program that, given any string
, decides membership in finite time.
Deterministic
Definition
Link to originalDeterministic Turing Machine
A deterministic Turing machine is a Turing machine whose transition relation assigns at most one move to every state–symbol pair:
Such a relation is a partial function, denoted
Every configuration of
has at most one successor, so the computation on an input is a single path. The machine accepts an input if that path reaches an accepting state . The definition is the special case of the nondeterministic Turing machine obtained by requiring at most one move per state–symbol pair.
Computation
Computation of an Arithmetic Function
Denote
where
The initial configuration of
Example Initial Configuration
Let
and with binaries . Here, the initial configuration is:
The end configuration of a (function-computing) Turing machine
with
Parsing "
"
- The head is position at the leftmost bit because
(final state) precedes . - Right after the number there is a blank
(a delimiter). - The machine is in an accepting (final) state
, i.e., it has halted. - Therefore, the output is
.
is arbitrary content elsewhere. It doesn’t matter what’s left in or .
Computation of
A Turing machine
with input alphabet computes an arithmetic function if works on as input, and outputs . Denote .
Example with input
Let
. Let be:
State/Input For instance, let
be the input. Thus, the tape contains : The Turing machine halts at
. The output is , see final configuration. The computed function is
, whereby . Note: The same Turing machine
, when the pair is encoded on the tape as , computes , whereby: Here
is the binary length:
Examples
A machine for
The following two-tape Turing machine accepts exactly the language
: where:
The machine marks matching blocks of
, , and symbols and accepts when the input is exhausted.