“No hidden variables!”: From Neumann’s to Kochen and Specker’s theorem in quantum mechanics.
R. Nobili and U. Pesavento- John von Neumann’s Automata Revisited
Transcript of R. Nobili and U. Pesavento- John von Neumann’s Automata Revisited
John von Neumann’s Automata
Revisited.
R. Nobili*
Dipartimento di Fisica “Galileo Galilei”,
Università di Padova, via Marzolo 8,
35131 Padova - ITALY
Email: [email protected]
U. Pesavento
Liceo Scientifico “Ippolito Nievo”,
via Barbarigo 38,
35100 Padova - ITALY
1 November 1994
____________________________
* To whom correspondence should be addressed
2
Abstract
This paper describes the first world-wide time implementation of the celebrated automata of
John von Neumann. Logical aspects concerning the structure and the behavior of simple and
complex cellular automata are discussed. The complete description of a universal
constructor, i.e., an automaton which, once supplied with a suitable code formed by a cell
pencil, is capable of generating any sort of automaton, is also presented for the first time.
This generative capability is based on the local injection of a cell-excitation stream into the
planar cell lattice. The realization of a universal constructor substantially simpler than those
proposed by other authors was possible thanks to the use of a sophisticated graphic and
logical environment for the composition of cell assemblies and the observation of their
evolution. This research is focused on how cellular automata can be created and used to
implement parallel information processing by planar cell lattices. An appealing feature of
our approach is the perspective of producing silicon cell automata capable of performing
any sort of parallel computation by the temporary generation of suitable cell state
configurations. This appears a necessary condition for the effective implementation of
general purpose parallel computers as, in general, good performance in parallel processing
depends rather critically on architectural optimality relative the task to be performed.
3
1. Introduction
Von Neumann’s interest in cellular automata (1948-1956) was probably motivated by the
aim of extending the logical concept of universal computing capability to that of universal
construction capability. The former concept was introduced by A.Turing (1936) to characterize
computing machines that can be programmed to simulate any other computing machine. A
constructing machine, or constructor, is defined universal if it can be programmed to construct
in a given environment everything that can be materially produced by any other machine in the
same environment. Noticeably, besides the universal constructor, also a universal computer can
be implemented in the algorithmic environment devised by von Neumann. These automata can
be combined to form a recursive constructor, which is capable of producing objects of any
degree of complexity. The distinction between universal constructor not embedding a universal
Turing machine and universal constructor embedding a universal Turing machine, however, is
not so clear-cut, as a von Neumann’s universal constructor can be programmed to produce first
a Turing machine, then to use this in order to extend its operational capabilities. The conceptual
extension of von Neumann’s is relevant from a bio-theoretical standpoint as it affords the
logical basis for defining the conditions under which a system is capable of self-reproducing
(von Neumann and Burks, 1966). Unfortunately, because of the rigid determinism governing
their evolution and the absolute lack of fault-tolerance, this sort of self-reproducing automata
are not good models of living systems.
No substantial progress was achieved by Moore (1962), Thatcher (1962, 1965) or Codd
(1965, 1968) who, aiming at establishing the minimal logical requirement for self-reproduction,
proved that constructive universality can be assured for cellular automata with fewer states and
more elementary transition rules. Von Neumann’s self-reproducing automata are formed by
tens of thousands of cells; those of the other cited authors are even larger, this being
compensatory for a minor complexity of cell-states and transition-rules.
It is a widely-held opinion that the complexity of self-reproducing automata makes the
implementation of these structures prohibitive (Langton, 1984). For this reason, and also
because the attention paid to von Neumann’s automata was purely academic, the problems
regarding constructive universality and the possibility of implementing multi-cellular structures
(organs) capable of performing specialized functions were abandoned towards the second half
of the ‘70s. Then, the research on cellular automata continued in new directions; the attention
4
being mostly focused on the morphogenetic and dynamic properties of automata endowed with
very simple transition rules (Wolfram, 1986). The interest in cellular automata as biological
models continued in a lesser extent and the condition for self-reproduction universality was
abandoned in favor of simple replication properties (Langton, 1984; Reggia et al., 1993).
Considering the current interest in parallel information processing and the technical
possibilities of silicon technology, von Neumann’s automata certainly deserve serious re-
examination. The reason for this is mainly the following: one of the most embarrassing aspects
of parallel processing is that the optimal architecture for solving a given problem depends
critically upon the logical structure of the problem. This difficulty is of no concern in sequential
information processing, as the computational procedure depends solely on the time ordering of
certain elementary operations, i.e., ultimately, on the temporal organization of the program. It is
instead unavoidable in parallel computing, as this computational procedure is based on the
spatial organization of many interacting sub-structures. Clearly, to allow sufficient versatility in
parallel computing, the spatial organization of the machine must be heavily taken under control.
There are two modes of ensuring this: 1) Maintaining under external control the information
traffic among different machine components by re-organizing continuously its interconnections;
2) Creating a system that, by a simple change of its internal state, becomes capable of
assuming the most suitable structure for the required computation. Von Neumann’s automata
afford precisely the latter perspective.
According mode (1), the change in the functional properties of the system is achieved by
switching on or off a number of communication lines among its subsystems. In this way certain
subsystems, or subsystem’s functions, are from time to time included or excluded, according to
computation needs. This method requires both an external supervisor extensively connected
with the computing system and suitable techniques to program cabling changes. A
characteristic feature of mode (1) is the neat separation between two classes of elements: a)
Transmission and traffic-control elements; b) Functional-operational devices.
According mode (2), any change in the system’s structure is achieved by the deterministic
evolution of the system state. This is generally obtained by the injection of a suitable
information train into a pair of elements of the cell lattice. This is possible because in von
Neumann’s lattice environment there is no distinction between transmission and operation
functions, as these can be simply activated by cell-state changes. Therefore, no external
supervisor is invoked to re-configure the computation capability of the system.
5
Presently, we do not know whether mode (2) is more convenient than (1); try to discover
this was one of our purposes. This problem could be matter of debate, as the cellular automata
proposed by von Neumann do not possess adequate algorithmic properties to implement
efficiently an arithmetic parallel processing. Actually, von Neumann’s approach seems rather
paradoxical as the automata that can be built in its environment, although forming parallel
systems, work almost always like sequential machines. In our experience, this limitation is only
apparent as von Neumann’s automata can be generalized to an extent sufficient to cover a class
of automata possessing arithmetic parallel computation properties. To discover some examples
of such automata was a specific aim of our research. Looking for cellular automata with
universal parallel computation capability, we moved to an opposite direction with respect to
other authors, increasing cell state number and transition rule complexity. This resulted into a
substantial decrease of the complexity of the functional subsystems (organs) that maust be
assembled to perform parallel processing.
In this paper, we first examine von Neumann’s automata in their original form, in order to
explore both the possibilities and the limits of parallel processing implementation in them. We
then present an extension of these structures that provides a substantial improvement in the
implementation of parallel processing architectures and in computation efficiency.
2. Building up cellular automata
Thanks to our software machinery, imagining and building cellular automata seemed us
much easier than describing them. We can only admire the way in which von Neumann, Burks
and all those who extensively studied cellular automata after them, were able to plan such
complicated cell assemblies and conceive their dynamic properties without the aid of a suitable
technical environment and efficient tools for manipulating cell structures and observing their
behavior.
The classification of cell states and transition rule described by Burks in its commentary
on von Neumann’s work (von Neumann & Burks, 1966) appear rather cumbersome and the
description of organs and their respective functions appears even more so. The plan of the
universal constructor is almost indecipherable. We were able to overcome all these difficulties
by using our graphic environment, where the automaton formalism was conveniently expressed
by means of graphic symbols. In this paper, however, we will not refer to any questions
concerning the implementation of the graphic environment that permitted us to create cells,
define transition rules and build up any sort of cell assembly.
6
Cells states and rules governing their evolution (transition rule) are conveniently
represented by using symbols and diagrams rather than logical and mathematical formulae. Not
only is this method useful as a mnemonic expedient but also is very efficient for characterizing
and express states and functions not only of single cells but also of complex organs. Cellular
automata can be described either in terms of cell states, evolving according to certain transition
rules, or in terms of functional relations amongst nearby cells. The graphic representation neatly
favors the latter.
Von Neumann’s automata are built on a planar lattice of square cells, each one of which
admits 29 states. In Fig.1 these states are represented by small symbols followed by short
denotations of their functional meanings.
To represent all possible configurations of a cell, together with the four neighbors which a
cell transition depends on, a huge number of states should be considered, i.e. all the
29 2 105 7≈ ⋅ states of a cell quintuplet (a cell together with its four neighbors). A transition rule
is a particular function defined over the domain of quintuplet-states and taking values onto the
co-domain formed by the 29 state of the central cell. Von Neumann’s transition rule is one of
the possible 29 1029 30 000 0005
≈ , , transition rules. The overwhelming majority of the many-to-one
correspondences (transitions) which form the rule leave the central cell unaltered (trivial
transition). Configurations leading to non-trivial transitions, although comparatively fewer in
number, are so many that it would be necessary to use several pages of this paper to represent
all of them. A substantial economy is achieved if: i) a few cell-symbols are introduced in order
to represent some classes of states; ii) different transitions are grouped in the same class
whenever different configurations lead to the same final state; iii) meta-symbols are used to
express logical relationships between classes of cells.
It appears useful to characterize cells in certain states as belonging to a cell-type or class,
so that some cell-state transitions can be interpreted as cell-type changes and others as changes
in the same cell type.
7
A basic property of von Neumann’s automata is that each cell state can be obtained by
repeated excitation of a fundamental state that characterizes the cell as a vacuum cell. In our
environment this type of cell is represented as a blank or a square contour (Fig.1). The action of
the transition rule on a cell is easily described as a local effect caused by the
Fig.1 The complete set of von Neumann’s automaton cell states is represented by graphic symbols. States aregrouped into classes according to their functions. This classification can also be understood as a subdivision ofcells into cell types. Cells of a certain type can be quiescent or excited. The excitation of a cell is represented by ablack or white spot on its symbol. The vacuum state (fundamental state) is represented by a square box. Anyother state can be thought of as an excitation of this. The sensitised states are intermediate steps towards thegeneration of all other states from the vacuum state (see Fig.2). Unexcited ordinary and special transmissionstates, together with unexcited confluent state, form the class of quiescent states. These are stable states, in thesense that they remain unvaried unless one or more of their neighbours is found in a suitable excited state. Asunder appropriate conditions excitation transmits from cell to cell, this process can be described in terms ofinput-induced cell excitation. By contrast, the sensitised states, whether affected by input or not, evolve towardsquiescent states. Excited ordinary and special transmission states, and the excited confluent states can affectneighbouring cells according to the automaton transition rule (see Fig.3). In any case, they tend to evolvespontaneously towards the respective unexcited states. Transmission cells can be linked together to formtransmission lines for the propagation of signal trains. The confluent cell is generally set at the afference of twoor three ordinary transmission lines to perform logical AND operation. The logical OR operation is performed bydirect afference of transmission lines of the same type. When simply inserted into an ordinary transmission line,the confluent cell acts as a delay element. When inserted between the end of an ordinary transmission line and thebeginning of a special transmission line, the confluent cell acts as a bridge element for the conversion of anordinary signal train to a special signal train. The duality associated with the definition of two types oftransmission states is motivated by the need to ensure the reversibility of cell generation, i.e. the annihilation ortransition to the vacuum cell of any cell state. An input carried by a special transmission cell annihilates (kills)any cell of ordinary transmission or confluent type. Special transmission cells are annihilated (killed) by inputfrom an ordinary transmission cell. All these functions are completely represented by the transition ruleillustrated in Fig.3.
8
injection of a discrete sequence of pulses from one or more of the four nearest neighbors of the
cell (left, top, right, bottom). In particular, the injection of a small sequence of pulses (from one
up to five) through any side of a vacuum cell results, after a short time evolution, in a stable or
quiescent state. Cells in a quiescent state, or quiescent cells, are identified in Fig.1 by the
absence of a small black or white spot. Quiescent states are basic states of cell types - namely:
ordinary transmission cells; special transmission cells; the confluent cell - characterized
according to certain functional roles. The transition of the vacuum cell to a quiescent cell
occurs through a short chain of intermediate states each characterizing the cell as a sensitized
cell. A sensitized cell always evolves towards a quiescent cell either spontaneously or under the
action of a pulse sequence. The generated quiescent cell depends upon the pattern of the
injected sequence. Thus, the sensitized states can be thought of as the nodes of a bifurcation
tree leading from the vacuum cell to quiescent cells. In Fig.2 the transitions along the branches
of the bifurcation tree are represented as respectively induced by the signal trains indicated on
the right hand side. Further excitation of a quiescent cell results in an excited cell. This tends to
recover the quiescent state at the next step.
In Fig.3, the compact representation of all the correspondences of von Neumann’s
transition rule are displayed. Classes of correspondences are represented by setting initial cell
quintuplets on the left and cells resulting from transitions on the right of the thick arrows.
Different states of an initial cell for which the transition produces the same result are
symbolically grouped into the same bag. Cells in the central bag of a bag-quintuplet and cells in
the output bag are possibly separated by horizontal bars to mean that the transition applies
exclusively to cells respectively set into corresponding places. Symbol ? stands for any cell,
symbol ∼∼∼∼X stands for any cell but X. Meta-symbol ⇒⇒⇒⇒ means “evolves to”. The notation ‘‘&R’’
stands for all the configurations of the symbol disposition set on the left that can be obtained by
one or more π/2 rotations and possibly a reflection with respect to the vertical or the horizontal
direction. These operations are understood to act both locally and globally on the cell lattice†.
All the transition rules, with the exception of those regarding the sensitized states, are indeed
invariant under π/2 rotations and reflections with respect to the principal symmetry axes of the
lattice.
†We define an operation as “global” if it acts on the cell lattice as on a point lattice, thus causing cell displacement butnot local change of cell state; as “local” if it does change the cell state but not cell positions in the lattice.
9
At first glance, this transition rule appears rather complicated. We must consider,
however, that it is one of a fantastically huge number of possible transition rules and that,
therefore, a fantastically great amount of information would generally be needed to describe one
randomly singled out from their set. We realize then that, after all, it is a very simple rule!
Actually, the true interesting question is: why is von Neumann’s transition rule so simple? The
only answer we can propose is: because it reflects intuitive functional meanings of cell
transitions. Indeed, these can be interpreted as natural elementary processes occurring in an
automaton possessing simple construction and computation properties. Clearly, von Neumann’s
rule neither is the sole one possessing such properties, nor do these properties are such to assure
an optimal implementation of the universal constructor. Indeed, other rules are possible with
fewer (Codd, 1968) or more states per cell and we could realize that simpler and more efficient
automata can be implemented by assuming other rules.
Fig.2 The sensitised cell tree. When the vacuum state (the square box) is targeted by an one-up-to-five-bitlong input sequence carried by an ordinary or special transmission line, it evolves towards a quiescent cellaccording to the branching rule represented above. As a particular case, the first sensitised state, generatedfrom the vacuum state by a single pulse, evolves spontaneously to the quiescent left ordinary transmissionstate. To the right of the final quiescent states the respective generating pulse sequences are represented inbinary code.
10
11
Fig.3 Von Neumann’stransition rule. All non-trivialcell-state transitions aregraphically represented inprogressive order ofapplication (see below). Eachenumerated diagramillustrates the transition of thecell states represented bygraphic symbols in the centralbag on the left into the cellstates represented by the bagon the right of the thickarrow. The central bag issurrounded by four bagscontaining the possible cellstates set around the centralcell before the transition.Initial conditions which areequivalent under thetransition rule are representedby cells put into the same bagon the left of the thick arrows.Horizontal-line partitionsappearing in both initialcentral bags andcorresponding final bagsmean orderedcorrespondences between theinitial states grouped in thecentral bag and final states.Question mark ? stands for“any cell”. Symbol ~ meansany cell but that indicated bythe subsequent symbol. Thenotation &R meanscompletion of the cellconfiguration(s) representedon the left by the inclusion ofall those obtained by π/2rotations and/or reflections(both in the global and thelocal sense). The rule isapplied to each quintuplet ofthe cell lattice as follows: assoon as the n-th initialcondition (n = 1, 2, ..., 10) ismatched for the given celllattice quintuplet, theindicated transition is appliedand the search for possiblesubsequent matches isinterrupted. This means thateach transition is applied onlyif the preceding ones are not;in case it does apply, all thesubsequent transitions areignored.
12
3. The transition rules
A perfect understanding of von Neumann’s transition rules is easily reached by
considering simple multicellular systems. One of these is the transmission line, i.e. an oriented
line formed by a head-to-tail sequence of transmission states of the same class (ordinary or
special). The transition rule simply guarantees that in a system like this a train of pulses
(excited cells) propagates in the given orientation. It also ensures that the confluence of two or
three transmission lines into a single transmission line acts as the logical OR for the incoming
pulses. By contrast, the confluence into a confluent cell acts as the logical AND (Fig.4).
In von Neumann’s view, all the machinery described so far was created to guarantee the
following general properties for the automata:
1) Any structure formed by a finite number of quiescent cells can be produced by the excitation
of vacuum cells. This makes it possible that a constructing arm builds organs, or an entire
automaton. The condition for this to happen is that the constructed structure be formed by
quiescent cells, i.e., that no structure starts working or evolving in time unless its
construction is completed.
2) Suitable assemblies formed by quiescent cells behave as organs capable of performing
information processing, i.e., producing certain outputs after having been fed by certain
inputs. This implies that quiescent cells can act both as elements of transmission lines and/or
logical operators.
3) Any cell can be destroyed, i.e. reduced to the vacuum cell (annihilated), by an appropriate
action. This is necessary for the completeness of constructive capability. To provide this
function and ensure a sufficient degree of cell-system stability, von Neumann subdivided the
transmission cells into two classes: ordinary transmission cells and special transmission
cells. A pulse coming from a special transmission cell annihilates any cell of a different
class; in turn, a special state is annihilated by a pulse coming from an ordinary transmission
Fig.4. Examples of signal train confluence: a) direct confluence combines two incoming trains according to thelogical OR rule; b) confluence into a confluent cell combines incoming trains according to the logical AND rule.
13
cell. So any ordinary transmission line not terminating in a confluent cell or an ordinary
transmission cell with opposite direction carries pulses ultimately resulting in a destructive
or a constructive action. The same is true for a special transmission line not ending at a
special transmission cell with opposite direction. Thanks to these properties, constructing
arms and reading arms can be formed by a parallel combination of both types of
transmission lines. The same properties are used to implement counters, switches, traffic
deviators etc. In Fig.5 two elementary organs (an encoder and a decoder) are represented in
a few stages of their evolution after being activated by inputs.
4. General properties of the universal constructor
Cells of different types can be assembled to form organs specialized for various functions. In
order for a cell assembly to be considered a meaningful organ it must admit a simple
functional interpretation. In general this does not happen for a random assembly. In other
words, meaningful organs are an extremely small subset of all possible cell assemblies and
their large structural redundancy reflects the simplicity of their functions.
(In the automaton language, the exact meanings of expressions like “meaningful”,
“functional simplicity”, “structural redundancy” etc. cannot be easily stated, as these belongs
to a meta-linguistic level. We presume that our knowledge is wide enough to allow us to
intuitively understand such meanings.)
Fig.5. The encoder E10101001 and a decoder D10111 in some of their evolution stages. Logical AND-ORconfluences can be combined with suitable delay lines to form any desired sort of encoder and decoder. a)An encoder: a single-pulse input results in the signal train representing the binary sequence 10101001 onthe output transmission line. b) A decoder: the signal-train input 10111 results in a single pulse; should thetrain not contain the indicated binary sequence, no pulse would be generated. Conventionally, binarysequences are ordered assuming that the first bit represents the first incoming pulse.
14
Organs, in turn, can be assembled to form more complicated structures which can be
interpreted as machines that are capable of sophisticated behavior once fed by simple inputs.
According to this definition a machine exhibiting a complex behaviour cannot be
considered an organ.
How a system formed by elementary organs, each displaying simple functional
properties, can exhibit very complicated behaviors can be explained in the context of
algorithm theory. For the purpose of automaton theory the construction of complex machines
culminates in the realization of machines which are complicated enough to perform any
desired function.
By universal constructor it is generally meant a machine which, once properly fed by a
piece of input information (program), is capable of producing any desired cell assembly, in
particular an automaton like itself. The universal constructor planned by von Neumann is
formed of three parts: 1) a constructing arm, to excite vacuum cells into quiescent cells; 2) a
reading-writing loop, to collect pieces of information stored in a tape-shaped cell assembly;
3) a control system, to translate the program into a sequence of commands for the
constructing arm.
In general, the program is a cell assembly formed by an array of vacuum and quiescent
cells set in a form suitable for the reading-writing loop exploration. Being external
descriptions of automata, programs belong to a logical (or class) type one level higher than
the type of automata themselves (according to the same criterion, program descriptions
belong to a second higher logical type). Therefore the program of a self-reproducing
automaton cannot be considered part of the automaton itself; in particular, the program of a
universal constructor must be thought of as an external attachment to the constructor. This
has relevant implications from a logical standpoint as, in order to complete self-
reproduction, the program itself must be replicated. This requires a self-reproducing
universal constructor to perform a double recursion on the program: the first to reproduce the
constructor, the second to copy the program. Moreover, this implies that the concept of
universal constructor and the concept of self-reproducing automaton are logically distinct.
We omit deepening further this matter here and refer to a future paper for a discussion on
self-reproduction.
The universal constructor can be implemented in several ways, the main differences
among these regarding the degree of program compression. The more compressed the
program the more sophisticated the control-system decoder must consequently be. It is likely
15
that a universal constructor making use of highly compressed programs needs a universal
computer (universal Turing machine) as a decoder. Von Neumann considered universal
constructors of both types: those not embedding and those embedding a universal computer.
Only the latter can make use of highly compressed programs. There is a substantial
difference between the two as the uncompressed program for the self-reproduction of a
universal constructor is necessarily formed by a cell number several times greater than that
of the universal constructor. However, such a difference may not be characterized so easily
as it is conceivable that a universal constructor makes use of an uncompressed program to
generate a Turing machine which then enables it to decompress another program.
In our experience, uncompressed programs turned out to be about twenty times larger
than that of the automaton to be built. The compression of these programs by current
procedures (ZIP coding) produced about twenty times compression. Considering that the
standard compression techniques can be further improved exploiting the peculiar forms of
redundancy affecting the organs, the size of a highly compressed program is likely to be a
few times smaller than that of the automaton to be built. Unfortunately, we had to limit
ourselves to building a universal constructor fed by an uncompressed program, as the
construction of an automaton of the second type proved to be very difficult; this being
putatively related to the poor algorithmic performance of the transition rule proposed by von
Neumann.
5. The universal constructor and its basic organs
Von Neumann’s transition rule does not allow two signal trains to cross along intersecting
transmission lines. The lack of a suitable crossing cell makes it difficult to govern signal
traffic in complicated situations. A way around this obstacle is to produce a kind of signal
multiplexing based on the introduction of coded sequences of signals. Single pulses can be
transformed into particular pulse sequences by suitable encoding organs (encoders). Several
sequences can be sequentially injected into a single transmission line and thereby distributed
at different decoding organs (decoders). This arrangement is shown in Fig.6.
16
In certain cases problems of crossing can be solved by using switching organs (switches).
These are based on the creation/destruction properties of certain elementary cell
configurations. An ordinary transmission cell can be annihilated by an excited special
transmission cell pointing at it. The same special transmission cell can transmit suitable
signal trains to the vacuum cell resulting from the former annihilation so as to excite a
quiescent ordinary transmission state of any desired direction. This kind of switch is
exemplified in Fig.7.
Fig.6 Signal multiplexing. Systems of encodersand decoders can be combined to control thespatial distribution of signals. A single-pulsepresented at the input of one of the decoders shownon the left is first encoded in a signal train and thenintercepted in this form by a correspondingdecoder on the right, thus resulting in a single pulseat the decoder output. Encoded signals arecollected by the back-reversed U-shapedtransmission line (collecting line) and therebydistributed to the decoders. This way, a set ofparallel inputs coming from the left can betranslated into a differently ordered set of paralleloutputs. The system works properly provided thatinput times are suitably arranged in order to avoidthe superposition of signal trains along thecollecting line.
Fig.7 Example of switch. First a singlepulse input at A sets the cell indicated bythe long-thin arrow on the left (crossingcell) to a down ordinary transmissionstate, thus making the input from Bcontinue its propagation along thevertical direction. Then a similar inputsets the crossing cell to a left ordinarytransmission cell, thus deviating thepropagation of any input coming from Bto the left. This switch state alternation isbased on the annihilation and creationproperties of the special transmission cellrepresented by the four black arrows on
17
Encoders, decoders and switches can also be used to implement conditional procedures of
the form if...then. In Fig.8 a conditional logic organ is described.
Von Neumann’s transition rule also lacks cell states that provide for long lasting memory.
This occurs because any excited cell that is not further excited by an adjacent cell decays into
the quiescent state with in one-step. So, the only way to store a piece of information is to
maintain a signal sequence circulating in a loop. In Fig.9 a simple organ for storing, releasing
and deleting one-bit memory is described.
The constructing arm is obtained by joining two transmission lines in parallel, one line is
formed by ordinary transmission states and the other by special transmission states. The two
lines end in such a way that one of two terminal cells can annihilate the other (Fig.10). By
Fig.8. The conditional logic organ of theuniversal constructor. This organ, which isused to control the constructing arm of vonNeumann’s universal constructor, outputsat O one of the four possible signal trainsemitted by encoders E10101, E1101, E1011,E11001. These trains, once conveyed tocollecting line L, cause the constructingarm to be respectively rightwardselongated, upwards elongated, downwardscontracted, leftwards contracted. In the lastcase, a sequence for the generation of anew cell can be transmitted from A to theend of the constructing arm. Theaforementioned encoders are respectivelyactivated by an input sequence at Iaccording as to whether this matches oneof the binary patterns 11001, 10101,10011 or differs from these. In the lattercase the input sequence is transmitted fromA for the cell generation.
Fig.9 One-bit memory unit. A pulse input at Bactivates a short signal-train circulation in loop L. Asubsequent pulse at A frees the loop from the signal-train circulation. A pulse at C is transmitted to Donly when the loop is activated.
18
the alternate injection of suitable signal trains along the two lines the following operations
can be performed: vertical and horizontal elongation or contraction; creation of any one or
two quiescent cells at the end of the arm. The constructing function of the arm depends upon
the right order and the type of train signal injection. If not properly fed, the operative
capability of the arm is impaired. To ensure that the arm works properly, its transmission
lines must be fed through a control organ.
Fig.10. The constructing arm and its control. The retraction and the elongation of the constructing arm areobtained by the mutual interaction between the end cells of the arm and the annihilation or creation of a new pairof end cells from the vacuum. In order for that to happen, suitable signal trains must be conveyed in the rightorder and with appropriate delays to the ordinary and special transmission lines which are tightly flanked to formthe constructing arm. These signal trains are simultaneously generated by encoders represented in the figure.During horizontal retraction, the arm can convey signal trains coming from the external input Ie which result in thegeneration of a quiescent state by vacuum excitation. The machinery represented here provides the correctoperation sequence.
19
The tape-reading loop consists of a constructing arm and a signal-return line parallel to
the arm and running one-cell line apart from this. In the space between constructing arm and
signal return line the tape is to be found, it is a sequence formed by vacuum cells and
downward ordinary transmission cells in arbitrary order. It represents a piece of information
to be used for the constructing function (Fig.11). Unfortunately, it has a shortcoming:
reading a vacuum cell needs the replacement of this cell by a downward ordinary
transmission cell. This necessitates its subsequent destruction in order for the original tape to
be restored. Consequently, the reading time grows linearly with the position of the bit to be
read. We found an alternative implementation of the reading loop without this shortcoming
by interposing an array of confluent states between the constructing arm of the reading loop
and the tape (Fig.12). All the organs so far described are necessary components of the
universal constructor (Fig.14).
Fig.11. The reading loop and a fragment of its control. It is formed by an arbitrary sequence of vacuum cells anddownward ordinary transmission cells interposed between a constructing arm, ending with a downward ordinarytransmission cell, and a return line formed by an array of leftward ordinary transmission cells. The constructingarm can be retracted or elongated by sending two appropriate signal trains to its twofold input. To read the tape asignal quintuplet 10101 is sent at the ordinary transmission line of the constructing arm. If a downward ordinarytransmission state is met at the current position of the tape, the quintuplet is directly transmitted to the return line.If, instead, a vacuum cell is met a downward ordinary transmission state is activated at the current place by the firstfour pulses of the incoming quintuplet, so that the last pulse of the quintuplet is transmitted to the return line.Therefore the return line either transmits the quintuplet or a single pulse depending on whether the tape had adownward ordinary transmission cell or a vacuum cell at the current reading position. To restore the tape to itsoriginal form, the returned signals must be subsequently recognised in order to activate the tape restorationprocedure. As the restoration consists of an ordinary cell annihilation, it can only be performed by a specialtransmission state operating at the end of the constructing arm. To accomplish this operation one-step reading loopelongation must be performed. A shortcoming of this procedure is that, if the tape has to be continuously restored,the reading time increases with the distance of the reading-loop current position from the tape origin. Evidently, asophisticated arrangement of decoders and encoders must be used to provide all these functions. An alternativeprocedure not suffering from this shortcoming is described in Fig 12.
20
Fig.13. Memory control. As von Neumann’stransition rule does not allow theimplementation of static memories, the one-bitmemory decribed in Fig.9 must be used inorder for bits coming from the reading loop tobe collected and grouped into quintuplets. Thisoperation is necessary to govern theconstructing arm because both arm motion andcell generation require pieces of informationencoded in quintuplets. The organ illustatedhere provides for precisely such functions. Onthe right, five one-bit memories are arranged ina column which is sequentially fed by amultiplexer governing the allocation of theincoming bits. The system works as follows.Logical bits 1, coming from the reading loop,are transmitted to I1, whereas logical bits 0 aretransmitted to I0. Both types of incoming pulsesactivate sequencer S generating in progressionfive encoded sequences. I0 action differs fromI1 action by the deletion, occurring at D0, of theencoded sequence. The encoding ordering isobtained exploiting the annihilation propertiesof special transmission states. This process isaccompanied by incrementing of counter C.Fifth bit detection causes this counter to bereset and the bits stored in M1, M2, ..., M5 to bereleased and collected in a quintuplet by line L.
Fig.12. Alternative implementation of the reading loop. By inserting an array of confluent cells between thereading-loop constructing arm and the tape, a fast reading procedure can be implemented. Reading is nowperformed by sending single pulses to the ordinary transmission line of the constructing arm. This methoddoes not affect the tape cells, thus making it unnecessary for the return signal to be recognised for taperestoration. Therefore the tape can be quickly read by an alternation of single pulses and arm-elongatingsignal trains.
21
Fig. 14. The universal constructor. The constructing arm A and the reading loop L (in their germinal forms), anumber of encoders, decoders, switches, one-bit memories are arranged here to form a universal constructor.Several organs described in the previous figure captions can be recognised here: on the left is the memorycontrol separately illustrated in Fig.13. At the middle-top, the logical supervisor described in Fig.8 can be seen;at the right-top the constructing arm and its control and at the right-bottom the reading loop and its control areevident. In order for the pieces of information retrieved from the tape to be used for directing the constructingprocedure, quintuplets of single bits must be collected and temporarily stored in a system of five one-bitmemory loops. This operation is needed because the read bits are retrieved sparsely but must be conveyed in
22
close sequence to the constructing arm supervisor. On the left the organ performing this operations can berecognised. At the end fivefold collecting cycle the stored piece of information is released at point R. Thecomplexity of this structure is partly due to the lack of crossing cells, i.e. cells allowing two transmission linesto cross each other without causing signal interference. This makes it necessary to use complicated multiplexingsystems (Fig.6) for implementing signal crossing. This shortcoming can be avoided by enlarging vonNeumann’s transition rule. This universal constructor is a simple transducer of the piece of information storedin the tape into the corresponding cell assembly to be built by the constructing arm. As the production of onequiescent cell needs five bit information (Fig 2), the tape length must be at least five times greater than thenumber of the cell assembly to be built. To reduce this ratio, tape information must be stored in a compressedform. If this is the case, a suitable decoder for tape data decompression must be used within the universalconstructor. Conceivably, highly compressed information needs a decoding organ equivalent to a universalTuring machine (universal computer). An automaton like this would be substantially larger than the onepresented here.
5. Generalizing the von Neumann’s transition rules
As discussed in the previous section, von Neumann’s universal constructor suffers from
some shortcomings which prevent the full exploitation of cellular automata potentialities for
parallel processing. Basically these shortcomings can be identified as: 1) the lack of crossing
cell states enabling the intersection of two transmission lines without interference for the
travelling signals; 2) the lack of a cell state behaving as a one-bit static memory. Both of
these functions can be ensured by a slight but somewhat sophisticated extension of von
Neumann’s transition rule (Fig.15). The extended version of von Neumann’s rule as
described above makes it possible to build a universal constructor much simpler than the one
shown in Fig.14. By using crossing cells a system simultaneously reading n-tapes can be
implemented. In Fig.16 a nine-tape fast reading system is shown. Here one-bit static
memories are not used because the good dynamic properties of the automaton make it
unnecessary to temporarily store information to be sent to the constructing arm.
23
Fig.15. The extended version of vonNeumann’s transition rule. Thetransition rule graphically representedhere replaces the one illustrated in Fig.3.Note that the quiescent states are thesame for the two transition rules, even ifthree new cell states have beenintroduced. All of these are newexcitation states of the confluent cell,which are needed to implement crossingprocesses. A confluent state behaves as acrossing element only if it is found at theintersection of two crossing transmissionlines, i.e. if it is interposed between twoincoming and two outgoing transmissionlines. The function of the confluent stateas a logical AND or a bifurcationelement is the same as accounted for bythe old transition rule when the confluentcell is found at the intersection of threetransmission lines. When the confluentcell is posed between one directlyincoming and one outgoing transmissionline, it also works as stated by the oldtransition rule. However, in this case thebehaviour of the confluent cell isdifferent from the old one when nooutgoing transmission lines depart fromit. In this special case, the new transitionrule states that the confluent cell, onceput into the excited or next excited state,does not decay until an outgoingtransmission state is created at one of itsneighbours.
24
Fig.16. The nine tape reading system. Nine reading loops sandwiching their respective tapes are fed incascade by the same signal trains providing for reading loop elongation and information retrieval. Crossingcells can be recognised as connection elements between subsequent reading loops. The tapes are of the typedescribed in Fig.12, so no delay for checking the type of bit read is needed. This structure exploits parallelprocessing potentialities of the planar cell lattice much more than is possible by automata evolvingaccording to von Neumann’s rule.
25
Fig.17. A universal constructorevolving according the extendedversion of von Neumann’s transitionrule. Availability of crossing cellsmakes it easy to group severalprocesses in parallel. In thisuniversal constructor nine readingloops work in cascade readinginformation stored as shown inFig.12. The collected bits areconveyed in real time to form a pairof quintuplets for the control of theconstructing arm. The first readingloop provides the header bit for bothquintuplets. The immediate use ofcollected pieces of informationmakes one-bit memoriessuperfluous. This constructor worksmuch more rapidly than the oneillustrated in Fig.14 for three mainreasons: 1) the parallel action of thereading loops; 2) the absence ofdelay in reading; 3) the twofoldgenerative action of the constructingarm. This universal constructor isnot only far more efficient but is alsosubstantially smaller than the oldone.
26
6. Discussion
The most appealing feature of von Neumann’s automata, which is related to the possibility of
implementing the universal constructor, is the possibility of creating cellular automata capable of
performing any sort of computation by the injection of a suitable signal train into a planar lattice
totally formed by vacuum cells. On the other hand, a planar lattice of cells like those proposed by
von Neumann would be the ideal environment for the implementation of parallel computations
provided that the cell lattice could be implemented into silicon based hardware. As it is plausible
that optimal parallel computations need processors tailored to the tasks to be performed, cellular
automata seem to afford the best perspective for the technical implementation of parallel
computers. Unfortunately, as evidenced by our study, the transition rule proposed by von
Neumann suffers some drawbacks which seems to impair this perspective. Some remedy was
provided by our extended transition rule: the crossing cells and the static confluent cell allowed
us to build a far more speedy and simple universal constructor than that of von Neumann while
preserving the possibility of generating any desired sort of automaton by vacuum excitation.
However, this extended transition rule, although permitting fast parallel processes, is far from
being adequate for the arithmetical computations usually needed in mathematical practice. The
point is that von Neumann’s automata are optimized for the implementation of universal
construction capabilities, but are not so successful for the implementation of logical and
mathematical procedures.
This occurs for two main reasons: 1) the logical operations permitted by both von Neumann’s
and our extended transmission rule are incomplete as the logical NOT operation is not represented
in them; 2) in a signal train the logical bit 0 is represented by a unexcited transmission cell (the
logical 1 being represented by the excited transmission cell).
The exclusion of logical NOT is necessary if every organ has to be generated in its quiescent-
state. Indeed, a NOT-cell occurring in a transmission line would divide this into one excited part
and one unexcited part, thus making excited states unavoidable whenever a NOT-cell is present
within an organ. The identification of quiescent transmission states with 0 bit states arises the
problem of delimiting the bit field of a signal train by two coded sequences. The first coded
sequence can simply be assumed to be a logical 1, but a structured bit field is needed in order to
mark the train end.
All these difficulties are overcome by a more sophisticated transition rule, provided the cell-
state number is substantially increased. A cellular automaton endowed with local computation
27
properties, enabling the implementation of both logical and arithmetical parallel processing, will
be presented in a forthcoming paper.
References
- E.Codd (1968), Cellular Automata. Academic Press, New York.
- C.G.Langton (1984). Self-Reproduction in Cellular Automata. Physica 10D, 135-144;
(1986). Studying Artificial Life with Cellular Automata. Physica 22D, 120-149.
- E.F.Moore (1970) Machine Models of Self-Reproduction. in the Essays on Cellular Automata.
187-203. Edited by A. Burks, Univ. of Illinois, Urbana.
- J.von Neumann (1966), The Theory of self reproducing automata. Edited by A. Burks, Univ. of
Illinois Press, Urbana.
- J.A.Reggia, S.L.Armentrout, Hui-Hsien Chou and Yun Peng (1993), Simple Systems That
Exihibit Self-Directed Replication. Science, 259, 1282-1287.
- J.Thatcher (1970), in Essays in Cellular Automata. 132-186. Edited by A. Burks, Univ. of
Illinois, Urbana.
- A.Turing (1936) On Computable Numbers, with an Application to the Entscheidungproblem.
Proc. London Math. Soc., Series 2, 42, 230-265.
- S.Wolfram (1986), Theory and Applications of Cellular Automata. World Scienfic Pub. Co.,
Singapore.