|
|
Zeno MachineIn mathematics and computer science, Zeno machines (abbreviated ZM, and also called Accelerated Turing machine, ACM) are a computational model related to Turing machines that allows a countably infinite number of algorithmic steps to be performed in finite time. More formally, a Zeno machine is a Turing machine that takes 2-n units of time to perform its n-th step; thus, the first step takes 0.5 units of time, the second takes 0.25, the third 0.125 and so on, so that after one unit of time, an infinite number of steps will have been perforemd. The idea of Zeno machines was first discussed by Hermann Weyl in 1927; they are named after the ancient greek philosopher Zeno. Zeno machines and computability Zeno machines allow some functions to be computed that are not Turing-computable; for example, the halting problem for Turing machines can easily be solved by a Zeno machine (using the following pseudocode algorithm): begin write 0 on the first position of the output tape; set i := 1; do simulate the first i steps of the the given Turing machine on the given input; if the Turing machine has halted, then write 1 on the first position of the output tape; i := i + 1; loop end (The halting problem for Zeno machines cannot be solved using a Zeno machine, however). Unfortunately, though, the naive approach of Zeno machines to infinite calculations leads to problems. For example, unlike with a Turing machine, the output of a Zeno machine after it finishes its computation (i.e., after one time unit) need not be in a defined state; this can happen if the machine continues to alternatively write different outputs, for example. Other complications include undefined internal states of the machine, writeheads that "run away to infinity" and other such things. The following pseudocode algorithm, which attempts to algorithmically determine whether the twin prime conjecture is true, illustrates this: begin i := 1; do write 0 on the first position of the output tape; check for twin prime pairs from i up to i + 100; if any were found, write 1 on the first position of the output tape; i := i + 100; loop end If the twin prime conjecture does not hold, then the output of this Zeno machine will be 0; otherwise, however, the machine will continue to write out zeroes and ones alternatively, ad infinitum, causing the terminal state after one unit of running time to be undetermined. One might be tempted to remedy these problems by introducing a mechanism that exists these anormalities and remedies them (by freezing the machine's output, moving the write head to a definite position and setting a special internal flag); however, doing so would essentially be the same as introducing an oracle for the very problem that one wishes to solve. References - Petrus H. Potgieter, Zeno machines and hypercomputation, 2004, http://arxiv.org/abs/cs/0412022
|
 |