Zeno machine

From HandWiki
Short description: Hypothetical computational model


In mathematics and computer science, Zeno machines (abbreviated ZM, and also called accelerated Turing machine, ATM) are a hypothetical computational model related to Turing machines that are capable of carrying out computations involving a countably infinite number of algorithmic steps.[1] These machines are ruled out in most models of computation.

The idea of Zeno machines was first discussed by Hermann Weyl in 1927; the name refers to Zeno's paradoxes, attributed to the ancient Greek philosopher Zeno of Elea. Zeno machines play a crucial role in some theories. The theory of the Omega Point devised by physicist Frank J. Tipler, for instance, can only be valid if Zeno machines are possible.

Definition

A Zeno machine is a Turing machine that can take an infinite number of steps, and then continue take more steps. This can be thought of as a supertask where [math]\displaystyle{ 1/2^n }[/math] units of time are taken to perform the [math]\displaystyle{ n }[/math]-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, a countably infinite number of steps will have been performed.

Infinite time Turing machines

An animation of an infinite time Turing machine based on the Thomson's lamp thought experiment. A cell alternates between [math]\displaystyle{ 0 }[/math] and [math]\displaystyle{ 1 }[/math] for steps before [math]\displaystyle{ \omega }[/math]. The cell becomes [math]\displaystyle{ 1 }[/math] at [math]\displaystyle{ \omega }[/math] since the sequence does not converge.

A more formal model of the Zeno machine is the infinite time Turing machine. Defined first in unpublished work by Jeffrey Kidder and expanded upon by Joel Hamkins and Andy Lewis, in Infinite Time Turing Machines,[2] the infinite time Turing machine is an extension of the classical Turing machine model, to include transfinite time; that is time beyond all finite time.[2] A classical Turing machine has a status at step [math]\displaystyle{ 0 }[/math] (in the start state, with an empty tape, read head at cell 0) and a procedure for getting from one status to the successive status. In this way the status of a Turing machine is defined for all steps corresponding to a natural number. An ITTM maintains these properties, but also defines the status of the machine at limit ordinals, that is ordinals that are neither [math]\displaystyle{ 0 }[/math] nor the successor of any ordinal. The status of a Turing machine consists of 3 parts:

  1. The state
  2. The location of the read-write head
  3. The contents of the tape

Just as a classical Turing machine has a labeled start state, which is the state at the start of a program, an ITTM has a labeled limit state which is the state for the machine at any limit ordinal.[1] This is the case even if the machine has no other way to access this state, for example no node transitions to it. The location of the read-write head is set to zero for at any limit step.[1][2] Lastly the state of the tape is determined by the limit supremum of previous tape states. For some machine [math]\displaystyle{ T }[/math], a cell [math]\displaystyle{ k }[/math] and, a limit ordinal [math]\displaystyle{ \lambda }[/math] then

[math]\displaystyle{ T(\lambda)_k = \limsup_{n\rightarrow \lambda}T(n)_k }[/math]

That is the [math]\displaystyle{ k }[/math]th cell at time [math]\displaystyle{ \lambda }[/math] is the limit supremum of that same cell as the machine approaches [math]\displaystyle{ \lambda }[/math].[1] This can be thought of as the limit if it converges or [math]\displaystyle{ 1 }[/math] otherwise.[1]

Computability

Zeno machines have been proposed as a model of computation more powerful than classical Turing machines, based on their ability to solve the halting problem for classical Turing machines.[3] Cristian Calude and Ludwig Staiger present the following pseudocode algorithm as a solution to the halting problem when run on a Zeno machine.[4]

begin program
    write 0 on the first position of the output tape;
    begin loop
        simulate 1 successive step of 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 and break out of loop;
    end loop
end program

By inspecting the first position of the output tape after [math]\displaystyle{ 1 }[/math] unit of time has elapsed we can determine whether the given Turing machine halts.[4] In contrast Oron Shagrir argues that the state of a Zeno machine is only defined on the interval [math]\displaystyle{ [0,1) }[/math], and so it is impossible to inspect the tape at time [math]\displaystyle{ 1 }[/math]. Furthermore since classical Turing machines don't have any timing information, the addition of timing information whether accelerating or not does not itself add any computational power.[3]

Infinite time Turing machines however, are capable of implementing the given algorithm, halting at time [math]\displaystyle{ \omega }[/math] with the correct solution,[2] since they do define their state for transfinite steps.[3] All [math]\displaystyle{ \Pi 1^1 }[/math] sets are decidable by infinite time Turing machines, and [math]\displaystyle{ \Delta_2^1 }[/math] sets are semidecidable.[2][clarification needed]

Zeno machines cannot solve their own halting problem.[4]

See also

References

  1. 1.0 1.1 1.2 1.3 1.4 Hamkins, Joel (2002-12-03). "Infinite time Turing machines". arXiv:math/0212047.
  2. 2.0 2.1 2.2 2.3 2.4 Hamkins, Joel; Lewis, Andy (1998-08-21). "Infinite Time Turing Machines". arXiv:math/9808093.
  3. 3.0 3.1 3.2 Shagir, Oron, Super-Tasks, Accelerating Turing Machines and Uncomputability, http://edelstein.huji.ac.il/staff/shagrir/papers/Supertasks_Accelerating_Turing_Machines_and_Uncomputability.pdf 
  4. 4.0 4.1 4.2 Calude, Cristian; Staiger, Ludwig, A Note on Accelerated Turing Machines, https://www.cs.auckland.ac.nz/research/groups/CDMTCS/researchreports/350cris.pdf