[FOM] Universality for unbounded computations

Todd Rowland rowland at wolfram.com
Tue Nov 13 21:29:13 EST 2007


A definition for universality needs to take into account how the term will 
be used, and what the examples are. Because of Wolfram's Principle of 
Computational Equivalence (PCE), we can expect many new examples besides 
those already known. There are ECA 110, the Wolfram 2,3 machine which are 
known to emulate any other unbounded computation. Moreover, part of the 
PCE says that there will be many systems, in the form of scientific and 
practical applications, that will be shown to be universal.  It is 
important to know whether something is universal, and so we need a 
definition which can be used in practice.

In the traditional framework, when the computations of a deterministic 
system X are interpreted by the halting of X, the computations of X can be 
emulated by a Turing machine with halting states. In contrast, for 
unbounded computations there is nothing analogous to halting. 
Intuitively, computations are being performed, and any attempt to augment 
the system by adding halting conditions is unnatural (even if it were 
meaningful).

The traditional definition of universality is useful for its textbook 
uses, e.g., a concrete defintion is needed to establish the existence of 
universal machines.  It captures well the intuition of universal 
computation for finite computations.  But it does not match the intuition 
behind emulating unbounded machines.

The main point which has been under discussion recently is what initial 
conditions should be allowed in an emulation. It is fitting to mention the 
Thue-Morse sequence as an example of an initial condition background that 
is simple enough to be allowed, while being non-repetitive.

One way to construct this sequence is recursively.

B[0]={0};
B[n_] = B[n-1] + F[B[n-1]]
where F[s] == 1-s == BitNot[s] == ReplaceAll[s, {0->1, 1->0}] (replace all 
0's with 1's and vice versa)

Not only does this have very simple behavior, but it is also reducible. 
If one wants to know the value at position x, there is a finite state 
machine that can be run on the binary digits of x.  It is also worth 
mentioning that the simplicity of the program is not a very good condition 
for a definition. As Wolfram has shown, very simple rules can be 
universal, but the simplicity of the behavior of a rule is a very good 
indication of its universality status.  It should not be a question of how 
tedious the encoding is or how much storage is needed, especially if the 
encoding is reducible.

As for the formalization of the PCE, as Kovas Boguta says, it is most 
useful as a scientific principle.  That does not rule out that there is a 
formal theorem that can show its limitations and applicability.

On a somewhat different topic, concerning the status of Alex Smith's 
Complex Systems paper, he is still writing it up.

Anyone can let me know if they are interested in being a referee and 
giving a timely report.


Todd Rowland

Managing Editor
Complex Systems
rowland at wolfram.com


More information about the FOM mailing list