SIMULATION OF BIOLOGICAL CELLS BY SYSTEMS
COMPOSED OF STRING-PROCESSING FINITE AUTOMATA*
Walte'l' R. Stahl,t Robert W. Coffin,'! and Ha1Tlj E. Goheen§
INTRODUCTION
simultaneous solution of hundreds or thousands
of differential equations, many of whose coefficients probably cannot be measured experimentally (see Pardee 82) , poses a difficult problem.
Actual cells may contain thousands of different
genes and hundreds of thousands of synthetic
units. Major questions of solvability and stability of such systems must be faced in an attempt
to model a complete cell.
In the last few years enormous progress has
been made in clarifying the operational mechanisms of living cells. It has been established
beyond reasonable doubt that all aspects of cell
activity are controlled by sequences of elementary genetic units. A comma-free triplet coding
in the four-letter alphabet of DNA is transcribed on RNA and causes the formation of
sequences of amino acids, which make up polypeptides and proteins. Various theories of
transcription control for such systems are now
under study. Recently, synthetic nucleic acid
(RNA) chains have been fed into the cell
machinery, thus demonstrating that protein
synthesis can be controlled artificially. Numerous finer details of the problem could be mentioned (see Crick,9 Nirenberg,31 Rich,39 Waddington,57 and Anfinsen 1) but shall not be considered in this report.
The present report describes a fundamentally
different approach to the problem of simulating a cell, some aspects of which were reported
earlier in Stahl and Goheen. 45 Since genes and
proteins are representable as linear chains or
strings, it is proposed that molecular mechanisms of cells be simulated by string-processing
finite automata. In this model strings representing DNA, RNA, proteins and general bio,;
chemicals are subjected to controlled copying,
synthesis into longer strings and breakdown into shorter ones, with use of what may be called
"algorithmic enzymes." A major property of
these logical operators is that they are combinable into large systems with complex properties.
There arises the question of what type of
mathematical modelling method is best suited
for simulation of molecular genetics. In the
past numerical models, based on chemical kinetics expressed in terms of simultaneous differential equations, have usually been applied.
Impressive results were obtained by Chance et
al., 7 Garfinkel,13 Hommes and Zilliken 18 and
others. However, it has also become clear that
* This
The materials below deal in turn with a new
computer simulation system for studying finite
automata, the properties of algorithmic enzymes, experimental studies with systems of the
latter and lastly with some questions of solv-
report was prepared under the support of Grant GM-11178 of the National Institutes of Health.
t Scientist, Oregon Regional Primate Research Center, Beaverton, Oregon, and Associate Professor, Department
of Mathematics, Oregon State University, Corvallis, Oregon.
t Chief Programmer, Department of Biomathematics, Oregon Regional Primate Research Center, Beaverton,
Oregon.
§ Professor, Department of Mathematics, Oregon State University, Corvallis, Oregon.
89
From the collection of the Computer History Museum (www.computerhistory.org)
90
PROCEEDINGS-SPRING JOINT COMPUTER CONFERENCE, 1964
ability for model cells defined entirely by automation-like enzyme operators.
THE AUTOMATON SIMULATION SYSTEM
The quintuplet command code proposed by
Turing is used in the programming system and
well described in Turing,50 Davis lo and elsewhere. Turing's device was designed for proofs
of computability and in principle requires an
infinite tape and infinite number of recursive
steps for such demonstrations. This circumstance does not prevent one from using the
quintuplet code for general purpose simulation
of automata. The late John von Neumann 55 .56
pointed out that the Turing Machine represents
a means of programming or simulating any
algorithm, as well as for computability demonstrations. McNaughton 26 has emphasized that
the Turing Machine should be considered as the
most general of automata.
A compiler based on the Turing quintuplet
notation <,but not really modelling the Turing
Machine) has been designed and is described in
Coffin, Goheen and Stah1. 8 Simulation of a considerable number of different automata on the
system, including ones for pattern recognition,
has revealed that a computer program for
modelling of automata is a useful research tool,
which may find practical applications when it
is desired to use a· "variable programmed automaton." Results substantiating this conclusion are reported in Stahl, Coffin and Goheen 44
and Stahl, Waters and Coffin.46 A special compiler, constituting an "automaton simulation
program," was written for a SDS-920 computer and has processing rates of up to 10,000
quintuplet commands per second. Rates of over
one million automation commands a :second
should be possible with presently .known technology. A number of special provisions have
.been included for automatic sequencing of different circumscribed algorithms or automata
presented as lists of quintuplets, debugging,
selective printout of string during simulation
runs, and so forth.
A Turing compiler should not be evaluated on
the basis of the inefficient operation of 'most
Turing Machines described in the literature to
date. The authors are using individual Turing
Programs (algorithms) exceeding 1700 quintuplets in size and a complete syst~m (namely,
the algorithmic cell) , which includes over
43,000 quintuplets. Interesting results have
been obtained for the problem of recognition of
hand-printed letters (A-Z) and shall be reported elsewhere (Stahl, Waters and Coffin 46 ).
Naturally, automaton simulation has a special
'range of application, as do research compilers
such as LISP, IPL-V, or COM IT.
The Turing Machine is a device which operates on individual symbols presented on a single
long tape, along which a reading head moves
left or right, one cell square at a time. A capability is provided for erasing and writing individual symbols and for recording the "state"
of the Turing Machine, which defines uniquely.
its response to a particular viewed symbol.
Only one type of program command is used
and consists of a quintuplet (or matrix table
with output triplets of symbols), which usually
appears as follows: symbol, scanned, state of
machine, new state, motion (right-R, left-L
and stay in place-P) and symbol to replace
existing symbol before motion is carried out.
A quintuplet such as 12 A :15RB is read "if in
state 12 and A is viewed, then replace A by B,
go to state 15 and move right one square." A
final logical halt of the automaton takes place
on such an entry as 26* :26P*, which is read "if
asterisk is seen in state 26, remain in place,
stay in state 26 and do not alter asterisk."
In principle, the Turing Machine must have
available an infinite tape and amount of time,
but precisely the same notation can be used with
finite automata and this has been done by such
authors as McNaughton,26 Myhill,30 Trakhtenbrot49 and others. The quintuplet command
structure need not in itself connote the extended
and often inefficient "shuffling" operation of
the cl~ssical Turing Machine.
ALGORITHMIC ENZYMES
The concept of a Turing quintuplet code may
be illustrated with a simple but biologically provocative example in which.a ;finite antomatoD
simulates ,a ;l~ic enzyme iflla't breaks ·down
"strings. ',Tatile I is a 'quintuplet program for
an "automaton enzyme"wnich lyses strings in
the alphabet (AGCT), representing the four
nucleic acid bases adenine, guanine, cytosine
and thymine. A typical input tape into the
From the collection of the Computer History Museum (www.computerhistory.org)
SIMULATION OF BIOLOGICAL CELLS
automaton using this code might be
••• cp cp:=A-C-G-C-C-T-T-A-G-C-A:=4> 4> ...
(1)
in which "4>"-empty cells, ":="-start of
string, "-"-bond between letters.
Table I
TURING PROGRAM FOR A SIMPLE
LYTIC ENZYME
cp :lR4>
2 T:2RT
1 := :2R:=
2 /:2R/
2 := :2P:=
3 := :3P:=
2 A:2RA
3 -:2R/
2 C:2RC
3 /:2R/
1
2 G:3RG
2 -:2RFollowing a single left to right pass the string
in (1) will be converted into
:=A-C-G/C-C-T-T-A-G/C-A:=
(2)
in which every bond immediately to the right of
a G, regardless of what synlbol is next to it on
the left or right, is converted into an "open
bond" (/).
Operation commences at the left end of the
string .. The empty symbols (cp) are passed over
by entry 1 cp :lR4>. When the left end-marker
(:=) is seen control passes to state 2. In state
2 all symbols except G (namely, A,C,T and -)
are simply skipped over, as in 2 ~ :2R-. If G is
seen, by entry 2 G :3RG, control passes to state
3, which next encounters a "bond" and converts it to an "open bond" using entry 3 - :2R/.
Provisions are also made for skipping over any
existing open bonds, as in entry 2 / :2R/. Stopping occurs in state 2 or 3, on an entry such as
3 := :3P!::::.
Table II is a sample of coding for a string
synthesizing finite automaton, which was described in Stahl and Goheen 45 and is the prototype for the algorithmic enzymes noted in this
paper. The cited work also includes automata
91
for copying and complementary copying of
strings (as in DNA transcription), and for more
complex types of lysis.
In general, the construction of quintuplet
programs for automata is straightforward. It
is noteworthy that they are truly interchangeable because of the very standard format. It is
clear, however, that string-processing enzymes
might also be represented by other types of
automata, such as Wang's58 modified Turing
Machine and that it would be entirely feasible
to design special compilers that accept a "statesymbol" table.
While the lytic enzyme of Table I was given
principally as an example, it is interesting to
note that reconstruction of a parent protein
string following the action of several lytic enzymes is an important problem today for nucleic
acid and protein analysis. Rice and Bock38 have
pointed out that application of three specific
lytic enzymes, which split "next to" only three
of the four specific bases in DNA, does not allow
a unique reconstruction of the parent chain.
This is an excellent example of algorithmic Ullsolvability arising in a biological context, and
moreover even in very classical form, namely,
solution of a ~'word problem" by algorithmic
methods.
It must be emphasized that the lytic enzyme
of Table I in no way models the physiochemical
properties of any real enzyme that might perform the indicated lysis, and only simulates the
string-processing aspects of the enzyme action.
This type of model is somewhat comparable to
the McCulloch-Pitts 25 imitation of neurons by
the threshold Boolean "logical neuron," in that
both model systems are rather gross from the
biological viewpoint, but involve a consistent
mathematical methodology. The McCullochPitts neuron can be combined into large systems, such as perceptrons, and much the same
step has been taken with algorithmic enzymes,
The main problem in biological modelling is
probably that of finding well-defined mathematical methods which can be applied with
profit to the biological system.
From the collection of the Computer History Museum (www.computerhistory.org)
92
PROCEEDINGS-SPRING JOINT COMPUTER CONFERENCE, 1964
Table II
TURING PROGRAM FOR CONDITIONAL STRING SYNTHESIS
1= :2R==
1cf>:lRcf>
1a :11Lx
2=:2P=
2* :2R*
2</> :2R</>
2a :2Ra
2b:2Rb
2c :2Rc
2e :3Le
3=:4R=
3* :3L*
3</> :3L</>
3a :3La
3b:3Lb
3c :3Lc
4</> :SR</>
4a :SRa
4b:5Rb
4c :SRc
4e:SRe
5* :4R*
5a:SRa
5b:6Rb
5c :SRc
6=:7L=
6* :7L8
6a:SRa
6b:SRb
6c :SRc
7=:9R=
7* :7L*
7</> :7L</>
7a :7La
7b:7Lb
7c :7Lc
7e:7Le
S=:SP=
S* :4R*
S</> :SR</>
Sa :SRa
Sb:SRb
Sc :SRc
9</> :12R</>
9a :10Ra
9b:12Rb
9c :12Rc
ge :12Re
10= :lL=
10* :lL*
lOa :12Ra
lOb :12Rb
10c :12Rc
11=:13R=
11 * :llL*
II</> :114
11a :11La
lIb :llLb
11c :llLc
lIe :llLe
12= :12P=
12* :9R*
1q</> :12R</>
12a :12Ra
12b:12Rb
12c :12Rc
13</> :17R</>
13a :14Ra
13b:17Rb
13c :17Rc
13e :17Re
13x:17Rx
14= :ISL=
14* :13R*
14a :17Ra
14b:17Rb
14c :15Rc
The concept of studying cells algorithmically
was probably implied in von Neumann's55 work
on self-reproduction of structures composed of
finite automata. This model has been extensively analyzed and extended by Burks 4 and
Moore. 2!1 The growth and stability of automaton-like arrays is considered in Lofgren,22
Ulam,54 Eden,ll Blum:l and others. Rashevsky:l7
15=:16L=
15* :16L*
15a:17Ra
15b:17Rb
15c:17Rc
16=:20R=
16</> :19L*
16a :16L</>
16c :164
17= :lSL=
17*:13R*
17</> :17R</>
17a :17Ra
17b :17Rb
17c :17Rc
lS=:lSP=
lS* :lSL*
184> :lSL4>
lSa :lSLa
lSb :lSLb
lSc :ISLc
ISe :ISLe
lSx :ISLa
19=:20R=
19* :19L*
19</> :194
19a :19La
19b :19Lb
19c :19Lc
1ge:19Le
19x:19Lx
20* :20R*
20</> :20Rcf>
20a:20Ra
20b:20Rb
20c:20Rc
20e:21r</>
20x :20R</>
21=:22R*
21 * :21R*
21</> :21R</>
21a:21Ra
21b:21Rb
21c :21Rc
21e:21Re
21x :21R</>
224>:23Ra
23</> :24Rc
244>:25Ra
25</>:26L=
26=:2R=
26* :26L</>
264> :26L4>
26a:26La
26b:26Lb
26c :26Lc
26e:26Le
suggested the application of the Markov "Normal Algorithm" (A. A. Markov 24 ) to the genetic
codes, but did not define any complete cell
model. Pattee:l5 proposed that a simple automaton could produce long biological chains of
a repetitive kind. Induction and repression
mechanisms in cells are analyzed by Jacob and
Monod. 20 Sugita 47 and Rosen 40 explore the
From the collection of the Computer History Museum (www.computerhistory.org)
SIMULATION OF BIOLOGICAL CELLS
Boolean logical representation of cells. Turing
himself wrote a paperS1 entitled "The Chemical
Basis of Morphogenesis," but used differential
equations rather than algorithm theory in this
study. Soviet workers such as Frank 12 and
Pasynskiy34 discuss some general aspects of
cellular control theory. Lyapunov23 proposes
the systematic study of interacting automata
subjected to executive~ hierarchies of control
.and Medvedev 27 deals with errors in genetic
coding.
An "algorithmic cell" is defined in this report
as a system of string-processing finite automata,
representing enzymes, together with the cell
contents, identified as strings. Smaller biochemicals which are not as obviously strings as
DN A or proteins may be coded as strings. This
is done routinely in or<iinary chemical nomenclature. Furthermore, the linearly-coded enzymes (proteins) must be able to recognize any
normal biochemical in the cell, and this may be
interpreted to mean that some sort of a string
coding of biochemicals is possible. Biochemists represent DNA, RNA and proteins in an
associative symbolic notation; but this fact has
not been subjected to mathematical interpretation. That is, molecular biologists now assume
that the four DNA bases, the four RNA bases
and the 20 or so pertinent amino acids can and
should be presented as symbols in an associative (parentheses free) linear string notation.
Much progress has been made recently in showing the details of the nucleic acid to protein
coding (Nirenberg31 ). It is noteworthy that a
normal algorithm is implied in the DNA triplet
to amino acid substitution coding, e.g., CAC
~ Pro. (cytosine-adenine-cytosine c.odes the ~
amino acid proline). Although the DNA to protein coding is understood, almost nothing is
known about the grammer, syntactical relationships or programming techniques used by the
cell during its strictly deterministic, and therefore algorithmic, growth, differentiation and
functioning.
Figure 1.1 is a flow chart of string syntheses
taking place in a typical cell model of the type
suggested in this report. At present 43 separate
threshold algorithmic enzymes are used and
produce a total of nine different final products.
The complete model cell consists of the enzyme
93
operators stored on m~gnetic tape, a 2000 symbol memory which has a place for each string
and its numbers at any moment of operation,
and three "housekeeping programs" (written
entirely in quintuplets representing specialized
finite automata) which perform addition, generation of pseudo-random variables, totalling
operations, counting, etc. While this type of
programming is obviously not as efficient as
a conventional computer methods for straightforward arithmetic operations, it is a consistent
automaton simulation methodology and very
flexible. For example, total cell size may be
controlled by simply introducing a special automaton that changes rates of "diet" letter entry
as a function of total cell string count. A complete growth experiment with an algorithmic
cell requires about 30-45 minutes and involves
hundreds of thousands of individual enzyme
steps.
The algorithmic enzyme used in the cell
model is more complex than the one defined by
Table II and functions as follows. Each enzyme
is stored as a program of about 1000 quintuplets on magnetic tape and called into the
core memory by the compiler program when a
preceding enzyme or a "housekeeping automaton" writes in a "call number" in a specific
region of the memory tape. As the first step,
threshold checks are made of "energy" represented as a simple string and of one or two
control strings, by interrogation of the binary
numbers associated with these strings. If these
thresholds are met it is next ascertained that
the substrates (input materials) for the specific
enzyme are available in sufficiently highquantities and that the final product is not already
present in excessively large amounts. If these
added threshold conditions are met, the enzyme
functions, producing a fixed quantity of its
product, while removing appropriate quantities
of the materials that went into the latter. After
this is done the algorithmic enzyme writes in
another "call number" which controls which
housekeeping program or other enzyme shall
function next.
In Figure 1 the enzymes are identified by
number, as #113, and the "k" value indicates
synthetic rate for a unit cycle, while the strings
along the flow lines are the control substances.
From the collection of the Computer History Museum (www.computerhistory.org)
94
PROCEE'DINGS-SPRING JOINT COMPUTER CONFERENCE, 1964
1119
I~l"
k4
CAA
11
;V
m~
k8
AB
k4
AA
1m
AB/G/D
~-\
l33
y
6
AA
\
ED
k4
113V-
\\
G
k4
Be
\ BACDC
\
ABC
(future
use)
AHA
\
BDCAA
132 --'152
f.
k4
I
R~CDC
\
AHA
:~ ~rl #l~~~~ ~
:
J
BBB
,."
k16
AlUI
/~AIIA
GB
(futtir'e use)
k8
AC
AllAH
BD/B/B
~
M!
1131/
k8
lUI
BACDC
Ilt~O
DC or
BD-
B*BJB
I~l~~DC
AD 'mAl:· AD/AlA
0 AW
B
or AB/G/D
AC
MCD/C/DBA
CM
"fAA/A/AB
(D
Y
k8150
AL/C/D
f~.~47::~:/D
k4
MCDC
112
k4
~~
112h(
~l!Q
GD
-
4
nm
An/G/D
~ ~148
~~ .. _.-
k8
lHH
YATID/GGYABD
Figure 1.1. Main String Syntheses (each pathway is shown with algorithmic enzyme call number, rate and
control substances).
A complete set of specifications for the enzymes
shown in Figure 1 will be published elsewhere.
It can be seen from Figure 1 that certain "inducer strings," such as AHA, HHH, etc., control
the action of sets of coordinated reactions.
Moreover, synthesis of these "control strings"
is subjected to induction or repression as a
function of certain special strings that may be
supplied from the outside, as by an adjacent
model cell, or manufactured in the cell if levels
of "metabolite strings" meet certain arbitrary
thresholds. A reasonable correspondence can be
drawn between the activities of the algorithmic
cell model and known basic cell activities, including blocking and unblocking of DNA, formation of messenger RNA, synthesis of enzymes
and proteins on ribosomes, production of metabolites by enzymes, etc.
The flow chart of Figure 1 is entirely arbitrary and does not attempt to represent any
actual cell. It must be noted that a real cell
may have tens of thousands of enzymes and
genes, and that firm quantitative data is avail-able at present only for limited sets of enzymatic reactions. Nevertheless, one may study
the basic mathematical problems presented by
string-synthesizing automata. The final products of the algorithmic cell model, as shown in
Figure 1 were designed to combine into several
different two-dimensional arrays. An example
of a unit in such an array is given in Figure 2.
A "complementation algorithm" is applied to
the product strings. This states that any 'two
strings will stick together or polymerize providing that they have at least three complementary bonds, such as A with B, B with A,
From the collection of the Computer History Museum (www.computerhistory.org)
SIMULATION OF BIOLOGICAL CELLS
C with D, etc. Presence of a non-complementary
eond negates two complementary bonds. This
may be considered to be still another kind of
discrete threshold action that generates complex entities from simplier units.
I.~
~
I
C
D
K
.
r
C
JZ
lI!!!!!
64
32
l1i
1<128
'
-121
Ib)eh .... itaaia.
JZ
X
l! &..L
II. I_tal Hatertab Suppl1fd ••
W"fgrJ-Ueg
•
(128ua.1C.
of .-ch)
'12V~
104
JA.
(Outlide
production
coa.trol)
BD
i
I
'1.~
-
CC
VhaI ......t
ale. . .t. patm-ya provitJed..
cc:
(R)
(I) (F)
16
16
121
121
1
1
AllGU11 productiOll ABA., wbic!~1JII._II .. t:iaM.,. ••
lIJ .Allan proWcUOIl AmI, wbkb
eoatzob n I " tV pthws,=.
CCC Allon ps:oductUa. _ . which
e0atr0lopa'-YV.
111)
~tDOl
.1.11_ produt:t1o:rlABAll. wbtclt
coatzol.a alternat. pathuaya VI
ad VII. u..tead ., tIl aDd IV
BBIBIB
1.
1149
k4
.../G/'
1IHHB. Productioa. cODtrolled by tob1
cell dze.. vl.a #149. Wttl.
1154, ISS co stop fUrthet
srowtb •
.!ll!!ill
Figure 1.2. "Diet," "Energy," and "Control" Substances.
The short string
prevents regular
cross-linking with
product V, by filling in open space.
\
See comments
with unit VII~
The control strings are so chosen that they
regulate the coordinated formation of one or
more final products that polymerize together.
There are sufficient product strings so that different types of arrays are possible and may lead
to long individual chains, cross-linked chains,
circumscribed blocks of strings and even grids
with a special border that limits further growth .
All the operations leading to these results are
defined by firm algorithms. However, pseudorandom variables are added to generation rates
and this results in less "mechanical" action.
PrOducts I and II are induced
by control substance CC
and combine into a three
I! Y
/
piece unit.
VL\
~~
fII
This small product
can fit into (1+11)
and prevent any
further polymerization.
Strings III and IV are made
in coordinated manner if
DD is present. 'They can combine with (1+11) to give
a long chain polymer.
95
~
VI~
This cross-linking
unit is made if substance CCC is present.
It cam CDmb.ine units
from (I+n+UI+IV), to
give two-dimensional grid
pattern.
Units VI and VII are induced by substance AHAH
and can combine with the
(I+II)unit to give a
long chain pattern. Crosslinking is possible but the
AHAH control path'-1ay does
not result in production
of cross-link unit V.
COMPLEMENTATION ALGORITHM:
Any two strings which collide are assumed
to link or l'polymerize" if three or more complementary bonds are present (A-B~B~,C-D, etc.). A non-complementary bond negates two
complementary ones. A single collision is assumed to test all bonds.
Figure 2. Two-Dimensional Configurations Associated with String Products of the Algorithmic Cell Model.
From the collection of the Computer History Museum (www.computerhistory.org)
96
PROCEEDINGS-SPRING JOINT COMPUTER CONFERENCE, 1964
EXPERIMENTAL STUDIES WITH THE
ALGORITHMIC CELL
In a typical run the cell model reaches equilibrium after about some 40-50 passes through
the sequence of algorithmic enzymes, whose
activity or inactivity is determined by induction
and repression conditions. During the run
printouts of quantities of each string are obtained 'periodically, as on every second or fourth
unit pass. Cycles of operation, totals of strings
of given sizes, grand totals and total use of
energy are also recorded and used for assessing
the efficiency of a given cell control system.
Among the specific experiments that will be
performed with the cell model are included 1)
curtailing or completely limiting input substances; 2) introducing a "leakage" of one or
more suqstances; 3) limiting ~nergy use or
"suffocating" the cell with unremoved products;
4) suddenly eliminating (as if b)' surgery or
trauma) the entire contents of certain reservoirs; 5) adding large random variables to all
the generation rates and watching to see if the
system will stabilize or oscillate; 6) driving the
system with periodic inputs of elementary
"diet" letters and noting the transfer functions
to other parts of the system; 7) "heating" or
"cooling" the cell, by appling a simple constant
multiplication factor to rates (k values) of all
enzymes and then checking stability. Other
tests are also possible.
Another experimental study is directed towards finding out approximately what fraction
of random changes in the quintuplet commands
shall lead to a final cell system that "grows out
of control," like cancer. With about 45,000
quintuplets, each capable of many random
"mutations," exhaustive testing is not practical
~ven with this small system. However, it is
possible to make random changes in representative quintuplets of the more important enzymes
and determine whether they cause the algorithmic cell to die, shrink, grow wildly, interact
abnormally with adjacent cells (that is, fail to
differentiate properly), stop producing one or
more of the required final products, etc. All
these examples have clear-cut biological
counterparts.
EX'periments are also planned on competition
between two or more algorithmic cells, which
are subjected to random mutations in selected
enzymes. This is done by having the cells draw
upon a common diet and share a pool of some,
but not all, strings. It is then possible to model
experimentally a kind of simulated natural
selection, in which the cell that first reaches
final "adult" size is selected over lagging ones.
Self-reproduction, as such, can be modelled
with the above system, and would involve having the algorithmic enzyme quintuplets listed on
a long "gene" string, which is copied at time of
reproduction. Self-reproduction becomes 'possible when the length of the "gene" coding is
sufficient to define a certain minimum number
of operational enzymes which account for cell
structure, basic metabolism, gene copying and
over-all control of t~e entire simulated cell system. This type of self-reproduction differs in
certain fundamental respects, i.e. exclusive use
of strings from the "kinematic" or "grid" reproduction considered by von Neumann,55
Burks4 and Moore,29 and also does not resemble
very closely the geometric growth systems of
Ulam 54 or Eden.l1 The details of an existence
demonstration for self-reproduction in an algorithmic cell model shall be considered elsewhere.
As was noted above the final string products
of the cell model combine or polymerize to form
rather intricate two-dimensional arrays, somewhat reminiscent of known protein polymers
such as collagen or muscle fibers. Following
polymerization, which at present is modelled by
hand but could be represented on a digitallycontrolled projection screen, certain specific
sequences of letters may be read off around the
margins of the two-dimensional arrays which
may be chains, cross-linked chains, grids or
irregular crystal-like structures resembling
those described in Ulam. 54 Future studies will
make use of algorithmic pattern recognition
strategies to determine when an array has
reached its final desired configuration and also
what may be done to repair such an array if
it has been injured, i.e., a corner chopped off
a grid. In the biological world there is a clear
counterpart to these abstract studies in the
ability of cells and tissues to regenerate missing
parts using strictly determinate procedures
which are clearly coded in their gene sequences.
From the collection of the Computer History Museum (www.computerhistory.org)
SIMULATION OF BIOLOGICAL CELLS
The described system is a sequential, not
parallel, simulator. In the real cell it is known
that tens of thousands, if not millions, of copying and synthetic activities may 'proceed in
parallel. It is possible to mimic the effects of
many identical enzymes acting simultaneously
by increasing rates of production, and to minimize real-time non-simultaneity problems by
using a rather short unit time period, during
which no one synthetic chain is produced in
large quantity. However, future studies will
explore various ways of simulating a parallel
string-processing system.
As noted, the above system does not attempt
to model any real cell or the properties of real
enzymes in a physiochemical sense. Recent
studies of enzyme action (Labouesse et al.,21
Monod et a1. 28 ) have shown that they are
formidable objects from the physiochemical
standpoint, because they are composed of hundreds of individual amino acids and have a
complex three-dimensional structure. They are
now believed to function, at least in part,
through physical dislocations of certain enzyme
regions after a given substance becomes attached to a receptor location. One must keep in
mind that these remarkable logical machines,
which can be characterize,d as "coiled up" or
"multiply connected" strings, are determined
solely by the linear array of their ,amino acids,
which are in turn coded by the gene base
sequences. Physiochemical models of this "conformation" system have not been very satisfying.
Possibly the central question is choice of type
of automaton to simulate an enzyme: it might
use numbers, the Boolean variables 1 and 0, or
letter strings, as discussed above. The differential equations models can be subsumed under
analog-type systems that :process real numbers
(concentrations and rates). Sugita47 and
Rosen 40 suggest a Boolean logical model of
cellular biochemical mechanisms. Arbib2 and
others have demonstrated the algorithmic
equivalence of the Turing Machine, finite automaton and McCulloch-Pitts net, so the Boolean method and general string approach are
theoretically equivalent. However, it appears
that string-processing methods are more appropriate for contemporary molecular biology,
97
which already uses biochemical strings (nucleic
acids and amino acids in proteins) as a basic
tool.
ALGORITHMICALLY UNSOLVABLE
PROBLEMS FOR AN ALGORITHMIC CELL
One of the most interesting conclusions which
can be drawn from the above model is that a
cell composed of string-processing enzymes,
coded by strings of genetic symbols, has definite
limitations on what it can do, i.e., there are
many plausible situations for which it would
have no adaptive algorithm, or "definite procedure," to use Turing's own term.52
One has to consider what kind of logical
problems may be solved by a well-defined, circumscribed system of finite automata of the
above type, i.e., ones which may copy strings,
synthesize or lyse strings whil~ obeying a
principle of "conservation of letters" (with the
exception of some random variables imposed on
reaction rates), and also perform certain types
of blocking and unblocking actions, simulating
cellular induction and repression. In addition
the enzymes may be combined into structures
that have barrier properties, i.e., which allow a
string to ,pass from one region to another. Enzymes may also be linked into fairly complex
subassemblies. Insofar as is known today, the
cell does not contain specialized molecular automata that perform binary logic, arithmetic,
compute or "think" in any ordinary sense.
A system of 43 algorithmic enzymes has
logical abilities that are qualitatively far more
complex than those of an individual enzyme, but
still circumscribed. Consider, for example, what
happens when an algorithmic enzyme contained
in a virus attacks an algorithmic cell. This
virus enzyme may lyse an important string of
the cell, or use normal biochemical strings in the
cell for its own purposes. The original cell may
or may not be able to resynthesize the lysed
products or to produce enough of them to overcome its losses. It mayor not contain any precoded lytic enzymes that can dissolve the enzymes or other constituents of the virus.
What is much more basic, perhaps, is that
there may exist no algorithm by which the cell
system can identify a virus on the basis of its
genetic or protein sequences, or from its initial
From the collection of the Computer History Museum (www.computerhistory.org)
98
PROCE'E'DINGS-SPRING JOINT COMPUTER CONFERENCE, 1964
effects on itself, which may result in new products that the cell is unable to recognize. If a
cell attempted to "compute" the string composition of a new enzyme (there is no evidence that
cells do this) designed specifically to attack a
virus, it would also have to solve the following
problems, which have well-defined algorithmically unsolvable counterparts in Turing Machine theory (see Davis,lO Trakhtenbrot49 ): 1)
will a new proteolytic enzyme (all enzymes are
known to be proteins) lyse other desirable proteins of the parent cell (the "applicability problem" of a Turing Machine) ; 2) will a new proteolytic enzyme lyse itself (the "self-applicability problem" of a Turing code applied to itself
-see Trakhtenbrot49 ); 3) will a new enzyme
result in a stopping or equilibrium condition of
the whole cell (the "stopping problem" of a
Turing Machine-see Davis 10 ); 4) will a new
enzyme give a final cell configuration which is
compatible with all stages of coordinated
growth and development ("translatability problem," or predicting final cell configuration
when gi,!en an earlier one); 5) is the "computed" enzyme the most efficient one (this relates to the algorithmically unsolvable problem
of minimality of a Turing Machine coding-see
McNaughton 26 ); 6) will the system with the
new enzyme be stable and resist instability
during certain possible cellular situations.
Quite similar problems arise if a cell attempts
to distinguish a cancer cell from a normal cell,
so as to be able to kill it. It is pertinent to ask
if the normal defensive cells perform a kind of
Turing's Test 53 on potentially cancerous ones,
acting in some abnormal way.
As a specific example, suppose a hypothetical
cellular automaton were engaged in design of
an enzyme of about 150 amino acids (given in
associative notation, as Asp-Lys-Glu-Lys ... )
which could attack a virus. One would have to
know how this enzyme would function during
all past and future stages of growth and differentiation. Information about the latter is
present in the genes, but it is not clear how the
cell could get access to the desired information
without a "dump" from gene memory, which
might result in loss of recursive control. In
effect, the cell would have to model its own
condition during all possible earlier and later
states of differentiation. Moreover, the cell is
unable to predict what sort of other biochemicals (or viruses) might be present in the environment at later times or the effects of the new
potential enzyme on its status in natural selection against other cells. Furthermore, the
postulated cellular automaton would have to
anticipate the final three-dimensional structure
of an enzyme, with its "conformation" (physical
folding) properties in abstracto, since once a
new enzyme was actually made it might lyse
the automaton in question or otherwise interfere with normal cell controls.
Reasoning of the above type would suggest
that acquired characteristics are not inherited
because in the general case a cell attempting to
carry out the indicated adaptation is faced with
algorithmically unsolvable problems. If direct
genetic adaptation were possible it would confer
a tremendous advantage and basic reasons
why it does not occur should be sought. However, the problem is complicated by the fact
that real cells are much more complex than the
abstract model of this report and is discussed
further in another report (StahI 43 ).
It must be noted that the described model
does not adequately simulate either the parallel
string processing or real-time processing problems in a 'cell, in which a given algorithm must
be completed in approximate time synchronism
with existing developmental algorithms.
McNaughton,26 Rabin and Scott,36 Burks,5 and
others have considered some aspects of computability for "growing automata" and realtime computability problems. The deliberate
design of new algorithmic enzymes might also
involve certain questions of solvability for
multiple-tape Turing Machines, the isomorphisms (Sorkin42) and composition of automata
(Glushkov 16 ), one-way or back-and-forth reading machines (Schutzenberger 41 ), state identification experiments on existing molecular automata (Gill,14 Ginsberg 15 ), and adaptive abilities of automata (Tsetlin 48 ).
Algorithmic unsolvability may be referred to
Turing Machine theory or to general recursive
computation theory. If the latter methodology
is used one would presumably reach the conclusion that no decision procedure existed for
the choice of amino acids (or gene bases) for a
given adaptive problem. In the case of a malig-
From the collection of the Computer History Museum (www.computerhistory.org)
SIMULATION OF BIOLOGICAL CELLS
nant cell one might say that there was a faulty
"transfer of control," or lack of a "stop condition." This type of statement is considered
wholly acceptable to cancer specialists at present and is implied in contemporary discussions
of the cancer problem. Turing Machine unsolvability has the important advantage of
defining several qualitatively distinct unsolvability situations, such as the "stopping problem," "translatability problem," "self-applicability problem," "minimality problem," etc.
The algorithmic cell differs from "learning
models" (see, for example, Pask 33 ) and certain
of the systems described under the term "selforganizing systems" (Yovits and Cameron59 )
because, as contrasted with the latter and the
brain, it cannot "learn" its environment, and
only responds to it selectively with available
precoded algorithms. Interesting problems arise
in the study of neurons represented as stringprocessing systems. Adaptation by the brain
does not, of course, imply adaptation by the
genes in neurons. Algorithmically unsolvable
problems would clearly ·arise if "new" brain
circuits were to be designed by a hypothetical
neuronal molecular automaton, For example,
Hennie 17 has stated a number of unsolvable
preblems connected with iterative nets, which
may be composed of non-specific threshold
neurons.
To state an example, it appears plausible that
the deliberated design of a new integrative circuit by a frog brain, for the purpose of detection
of some new specific type of a bug projected on
its retina and based on an iterative type of circuit, might involve algorithmically unsolvable
problems. Pursuing a related line of reasoning,
Cannonit06 has discussed Godel's incompleteness theorem as applied to intelligent machines.
DISCUSSION AND CONCLUSIONS
Careful study of the existing literature in
both molecular biology and finite automata
theory, including also recent Soviet reports,
suggests that the model proposed in this report
has not been used before. At present it is in a
developmental stage, and is running as described on an SDS--920 computer.
It has been noted above that the model does
not attempt to use numerical data from bio-
99
chemical studies. However, it will be tested in
this capacity, with use of finite approximations
to enzyme kinetics. Quantitative modelling will
become really meaningful when a sufficiently
complete and accurate set of parameters is
available for an actual cell. Most existing quantitative biochemical models are of the steadystate compartment type and demonstrate
changes of equilibria in open systems. The present model is designed, on the other hand, to
study coordinated growth and progressive differentiation of a cell. Both types of studies
obviously have a place.
Since real cells are so c-omplex, and may include thousands of different enzymes present in
many copies, there arises the very real question
of what kind of mathematical or algorithmic
tool is best suited for the simulation of enzymes
and cells. In this report it is suggested that
finite automata are a suitable axiomatic tool.
While the proposed model is imperfect, it does
allow a new and mathematically consistent
representation of such extremely characteristic
biological phenomena as differentiation, induction and repression controlled by environmental
biochemicals, coordinate·d gro'l:lth, development
of cancers, competition betw~en cells, etc. The
need for some new nlathematical attack on the
problem has been strongly stressed by such
senior biologists as Waddington. 57
As concerns the Turing quintuplet programming technique, it is more efficient than
has been supposed and is well suited for study
of the properties of systems of automata. It is
effective where intensive logical processing of
a non-standard variety is to be done on a rather
small amount of input information, but, of
course, extremely inefficient where much information must be used at one time or for conventional numerical processing. Other reports
will take up the useful range of application of
the described automaton simulation programming technique.
A model of a general synthetic system may
also be of interest in realms other than cellular
biology. For example, it may be proposed that
in any general production process the addition
of a letter to a string can represent a "next
processing step," while joining of smaller
strings indicates combination of subassemblies
From the collection of the Computer History Museum (www.computerhistory.org)
100
PROCEE'DINGS-SPRING JOINT COM·PUTER CONFERENCE,
or completed parts. Alternatively, each processing step may stand for some specific informational processing task. Abstract models of
this type are interesting for studies of parasitism and suggest, for example, that viruses,
tapeworms and human embezzlers might be
subsumed under one consistent theory of events
in "synthetic productive systems." The analogy
is loose and speculative, but provocative.
As another example, it has been known for
several years that mammals are able to defend
themselves non-specifically against viruses by
production of a genetically precoded substance
known as "inteferon" (Isaacs 19 ). The mode of
action of this complex biochemical material is
not clear, but when it is discovered it will be
interesting to study what algorithm controls its
release and how it relates to the unsolvability
problems discussed above. There is also much
interest in the study of algorithms that may be
used to distinguish normal from malignant cells.
Work described in the above is intended as a
starting point for studies which deal with
specific problems in the design of cellular control algorithms that are stable in the presence
of environmental fluctuations, coding errors
(mutations) and can to some extent resist parasitic systems such as viruses or cancer cells.
Compared with any real cell the model is very
crude, but it bears much the same relationship
to real tissue cells as the McCulloch-Pitts
neuron has to actual brain neurons. The logical
neuron has been useful as a firm mathematical
tool for study of the over-all properties of
brain models and the algorithmic cell can serve
in a very similar capacity for systems of cells.
BIBLIOGRAPHY
1964
Elfmlents." Proc. IFIP Congres8, Munich,
Germany, 1962. North Holland Publishing
Company, Amsterdam, 1963. pp. 379-385.
5. BURKS, A. W. "The Logic of Fixed and
Growing Automata." In Proc. Int. Symp.
Switching Theory. Part I. Harvard Univ.
Press, Cambridge, Mass., 1959. pp. 147188.
6. CANNONITO, F. B. '~The Godel Incompleteness Theorem and Intelligent Machines."
In Proc. AFIPS Spring Joint Compo Conf.,
San Francisco, Calif. May 1962. pp. 71-77.
7. CHANCE, B.,; et al. "Metabolic Control
Mechanisms. Part V. Solution for the
Equations Representing Interaction Between Glycolysis and Respiration in Ascites
Tumor Cells." J. Biol. Chem. 235 :24252439,1960.
8. COFFIN, R. W., H. E. GOHEEN, and W. R.
STAHL. "Simulation of a Turing Machine
on a Digital Computer." Proc. AFIPS
Western Joint Computer Conference, Las
Vegas, Nev., November 1963.
9. CRICK, F. H. C. "On the Genetic Code."
Science 139 (3554) :461-464, 1963.
10. DAVIS, M. D. Computability and Unsolvability. McGraw-Hill, New York, 1958.
11. EDEN, M. "A Probabilistic Model of Morphogenesis." In Symposium on Information Theory in Biology. H. P. Yockey,
R. L. Platsman, H. Quastler, eds. Pergamon
Press, New York, 1958. 'pp. 359-370.
12. FRANK, G. M. "Self-Regulation of Cellular
Processes." In Biological Cybernetics.
N. M. Sisakayan and A. I. Berg, eds. Acad.
Sci. USSR, Moscow, 1962. (In Russian).
Available as JPRS 19637. pp. 40-55.
1. ANFINSEN, C. B. In The Molecular Basis of
Evolution. John Wiley Science Editions,
New York, 1963. p. 115 et seq.
13. GARFINKEL, D. "Computer Simulation of
Steady-State Glutamate Metabolism in Rat
Brain." J. Theoret. Biol. 3 :412-422, 1962.
2. ARBIB, M. "Turing Machines, Finite Automata and Neural Nets." J. Assoc. Compo
Mach. 8 (4) :467-475, 1961.
14. GILL, A. "State-Identification Experiments
in Finite Automata." In/ormation and
Control. 4:132-154, 1961.
3. BLUM, H. F. "On the Origin and Evolution
of Living Machines." Amer. Sci. 49 :474501, 1961.
15. GINSBURG, S. "On the Length of the
Smallest Uniform Experiment Which
Distinguishes the Terminal States of a
Machine." J. Assoc. Compo Mach. 5 :266280, 1958.
4. BURKS, A. W. "Toward a Theory of Aumata Based on More Realistic Primitive
From the collection of the Computer History Museum (www.computerhistory.org)
SIMULATION OF BIOLOGICAL CELLS
16. GLUSHKOV, V. M. "Abstract Theory of
Automata." Uspekhi Mat. Nauk, 16(5):
3-62, 1961. (In Russian).
17. HENNIE, F. C. "Iterativ@ Arrays of Logical
Circuits." MIT Press Research Monographs, Cambridge, Mass. John Wiley,
New York, 1961.
18. HOMMES, F. A., and F. W. ZIt.LIKEN. "Induction of Cell Differentiation: III. A
Quantitative Approach in the Analysis of
Induction." Bull. Math. Biophys. 24:7180,1962.
19. ISAACS, A., H. G. KLEMPERER, and G. HITCHCOCK. "Studies on the Mechanism of Action
of Interferon." Virology 13 :191-199, 1961.
20. JACOB, F., and J. MONOD. "Genetic Regulatory Mechani~s in the Synthesis of Protein." J. MoZec. Bioi. 3 :318-356, 1961.
21. LABOUESSE, B., B. H. HAVSTEEN, and G. P.
HESS. "Conformational Changes in Enzyme Catalysis." P1'OC. Nat. Acad. Sci.
48 (12) :2137-2145, 1962.
22. LOFGREN, L. "Kinematic and Tesselation
Models of Self-Repair." In Biological P.rototypes and Synthetic Systems. E. E. Bernard and M. R. Kare, eds. Plenum Press,
New York, 1962.
23. LYAPUNOV, A. A. "Some Questions on the
Teaching of Automata." In Principles of
the Design of Self-Learning Systems. Kiev,
USSR. Available -as JPRS 18181, 1963. pp.
180-185.
24. MARKOV, A. A. "The Theory of Algorithms." Amer. Math. Soc.- T1'anslation Ser.
2. 15:1-14, 1960.
25. MCCULLOCH, W. S., and W. PITTS. "A
Logical Calculus of the Ideas Imminant in
Nervous Activity." Bull. Math. Biophys.
5 :115-133, 1943.
26. McNAUGHTON, R. "The Theory of Autommata-A Survey". Adv. in Computers. 2:
379-421, Academic Press, New York, 1961.
27. MEDVEDEV, Zh. A. "Errors in the Reproduction of Nucleic Acids and Proteins, and
Their Biological Significance." Pr'oblems
Kibernetikii No.9. A. A. Lyapunov, ed.
Gos. Izd. fiz-Mat. Lit., Moscow, 1963, pp.
241-264. (In Russian).
101
28. MONOD, J., J. P. CHANGEUX, and F. JACOB.
"Allosteric Proteins and Cellular Control
Systems." J. Molec. BioI. 6 :306-329, 1963.
29. MOORE, E. F. "Machine Models of SelfReporduction." In Mathematical Problems
in the Biological Sciences. Sympos. No. 14
of Amer. Math. Soc., Providence, R.I.,
1961. pp. 17-33.
30. MYHILL, J. "Linear Bounded Automata."
WADD Tech. Note 60-165. Wright Air
Development Division, Wright Patterson
Air Force Base, Ohio, 1960.
31. Nirenberg, N. W. "The Genetic Code, Part
II." Sci. Amer. 208(3) :80-94, 1963.
32. PARDEE, A. B. "Biochemistry: Sterile or
Virgin for Mathematicians." In Mathematical Problems in the Biological Sciences.
Sym,pos. No. 14 of Amer. Math. Soc.,
Providence, R.I., 1961. pp. 69-82.
33. PASK, G. "The Simulation of Learning and
Decision-Making Behavior." In Aspects of
the Theory of Artificial Intelligence. C. A.
Muses, ed. Plenum Press, New York, 1962.
PP. 165-210.
34. PASYNSKIY, A. G. "Some Problems of Biochemical Cybernetics." Vest. Acad. Nauk
USSR. 32 :25-31, 1962. (In Russian).
35. PATTEE, H. H. "On the Origin of Macromolecular Sequences." Biophys. J. 1 (8) :
683-'110, 1961.
36. RABIN, M. 0., and D. SCOTT. "Finite Automata and Their Decision Problems."
iBM J. Res. and Develop. 3 :114-125, 1959.
37. RASHEVSKY, N. "Mathematical Foundations of General Biology." Ann. N.Y. Acad.
Sci. 96:1105-1116, 1962.
38. RICE, W. E., and R. M. BOCK. "The Problem of Sequence Determination in Transfer
RNA." J. Theoret. Biol. 4 (3) :260-267,
1963.
39. RICH, A. "The Transfer of Information
Between the Nucleic Acids." In Synthesis
of Molecular and Cellular Structu1'es. D.
Rudnick, ed. Ronald Press, Inc., New York,
1961. pp. 3-11.
40. ROSEN, R. "Digital Computers and the
Problems of Cellular Regulation." Report
read at 1963 Denver Conference of the As-
From the collection of the Computer History Museum (www.computerhistory.org)
102
PROCE!EDINGS-SPRING JOINT COMPUTER CONFERENCE, 1964
sociation for Computing Machinery, August 27-30, 1963.
41. SCHUTZENBERGER, M. P. "On the Definition
of a Family of Automata." Inform. and
Control. 4 :245-270, 1961.
42. SORKIN, YU. 1. "Algorithmic Solvability of
the Problem of Isomorphism of Automata."
Doklady Nauk USSR. 137(4) :804-806,
1961. (In Russian).
43. STAHL, W. R. "Solvable and Unsolvable
Problems for an Algorithmic Model of a
Cell." (Submitted for publication).
44. STAHL, W. R., R. W. COFFIN, and H. E. GoHEEN. "The Turing Machine as a Research
Tool for Algorithmic Simulation." (Submitted for publication).
45. STAHL, W. R., and H. E. GOHEEN. "Molecular Algorithms." J. Theoret. Biol. 5 :266287,1963.
46. STAHL, W. R., M. C. WATERS, and R. W.
COFFIN. "Pattern Recognition Algorithms
Implemented as Turing Programs." (Submitted for publication).
47. SUGITA, M. "Functional Analysis of Chemical Systems in Vivo Using a Logical Circuit
Equivalent. II. The Idea of a Molecular
Automaton." J. Theorret. Biol. 4 (2) :179192, 1963.
48. TSETLIN, M. L. "On the Behavior of Finite
Automata in Random Media." A vtomat. i
Tele·mekh. 22:1345-1354, 1961. (In Russian) .
49. TRACHTENBROT, B. A. "Algorithms and the
Machine Solution of Problems." (In Russian). Available under the title Algorithms
and Automatic Computing Machines. D. C.
Heath and Co., Boston, Mass., 1963.
50. TURING, A. M. "On Computable Numbers,
with an Application to the Entscheidungsproblem." Proc. London Math. Soc. Ser. 2.
42:23-265, 1937.
51. TURING, A. M. "The Chemical Basis of
Morphogenesis". Phil. Trans. R01jal Soc.,
Sere B. 237 :37-72, 1954.
52. TURING, A. M. "Solvable and Unsolvable
Problems." Science News (London). 31:
7-23,1954.
53. TURING, A. M. "Can a Machine Think?"
Reprinted in The World of Mathematics.
J. R. Newman, ed. Simon and Schuster,
New York, 1956. pp. 2099-2123.
54. ULAM, S. "On Some Mathematical Problems Connected with Patterns of Growth
of Figures." In Mathematical Pl'oblerns in
the Biological Sciences. Sym·pos. No. 14 of
the Amer. Math. Soc., Providence, R.I.,
1961. pp. 215-224.
55. VON NEUMANN, J. "The Genral and Logical
Theory of Automata." In Cerebral M eclwnisms and Behav'iol'. L. A. Jeffress, ed.
John Wiley, New York, 1951. pp. 1-41.
56. VON NEUMANN, J. In The Compute l' and
the Bl°ain. Yale University Press, New
Haven, Conn., 1958. pp. 69-73.
57. WADDINGTON, C. H. In New Patterns in
Genetics and Develop'ment. Columbia University Press, New York, 1962.
58. WANG, H. "A Variant to Turing's Theory
of Computing Machines." J. Assoc. Compo
Mach. 4 (1) :63-92, 1961.
59. YOVITS, M. C., and S. CAMERON. Self-Organizing Systems. Pergamon Press, New
York, 1960.
From the collection of the Computer History Museum (www.computerhistory.org)
© Copyright 2026 Paperzz