A Brief History of Cellular Automata - CS Department · A Brief History of Cellular Automata PALASH...

28
A Brief History of Cellular Automata PALASH SARKAR Indian Statistical Institute Cellular automata are simple models of computation which exhibit fascinatingly complex behavior. They have captured the attention of several generations of researchers, leading to an extensive body of work. Here we trace a history of cellular automata from their beginnings with von Neumann to the present day. The emphasis is mainly on topics closer to computer science and mathematics rather than physics, biology or other applications. The work should be of interest to both new entrants into the field as well as researchers working on particular aspects of cellular automata. Categories and Subject Descriptors: F.1.1 [Conputation by abstract devices]: Models of Computation; K.2 [Computing Milieux]: History of Computing General Terms: Theory Additional Key Words and Phrases: Cellular automata, cellular space, homogeneous structures, systolic arrays, tessellation automata 1. INTRODUCTION Cellular automata were originally pro- posed by John von Neumann as formal models of self-reproducing organisms. The structure studied was mostly on one- and two-dimensional infinite grids, though higher dimensions were also considered. Computation universality and other computation-theoretic ques- tions were considered important. See Burks [1970] for a collection of essays on important problems on cellular au- tomata during this period. Later, physi- cists and biologists began to study cellu- lar automata for the purpose of modeling in their respective domains. In the present era, cellular automata are being studied from many widely differ- ent angles, and the relationship of these structures to existing problems are be- ing constantly sought and discovered. Next, we would like to clarify the purpose of this survey as compared to other related work. There is an excel- lent survey of CA by A.R. Smith III [Smith III 1976]. However, it is more than twenty years old. There are also two other surveys [Vollmar 1977; Ala- dyev 1974] which are quite old. Cur- rently, it is perhaps quite impossible to survey the whole of CA research. There is a good survey on computation theo- retic aspects of CA by Culik II et al. [1990]. There are also books on CA [Garzon 1995; Chaudhuri et al. 1997; Wolfram 1986] which cover specific top- ics of CA research. In this survey we try to cover the major questions asked about CA as opposed to the use of CA in Author’s address: Applied Statistics Unit, Indian Statistical Institute, 203 B.T. Road, Calcutta, India 700035; email: [email protected]. Permission to make digital / hard copy of part or all of this work for personal or classroom use is granted without fee provided that the copies are not made or distributed for profit or commercial advantage, the copyright notice, the title of the publication, and its date appear, and notice is given that copying is by permission of the ACM, Inc. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and / or a fee. © 2000 ACM 0360-0300/00/0300–0080 $5.00 ACM Computing Surveys, Vol. 32, No. 1, March 2000

Transcript of A Brief History of Cellular Automata - CS Department · A Brief History of Cellular Automata PALASH...

A Brief History of Cellular AutomataPALASH SARKAR

Indian Statistical Institute

Cellular automata are simple models of computation which exhibit fascinatinglycomplex behavior. They have captured the attention of several generations ofresearchers, leading to an extensive body of work. Here we trace a history ofcellular automata from their beginnings with von Neumann to the present day.The emphasis is mainly on topics closer to computer science and mathematicsrather than physics, biology or other applications. The work should be of interest toboth new entrants into the field as well as researchers working on particularaspects of cellular automata.

Categories and Subject Descriptors: F.1.1 [Conputation by abstract devices]:Models of Computation; K.2 [Computing Milieux]: History of Computing

General Terms: Theory

Additional Key Words and Phrases: Cellular automata, cellular space,homogeneous structures, systolic arrays, tessellation automata

1. INTRODUCTION

Cellular automata were originally pro-posed by John von Neumann as formalmodels of self-reproducing organisms.The structure studied was mostly onone- and two-dimensional infinite grids,though higher dimensions were alsoconsidered. Computation universalityand other computation-theoretic ques-tions were considered important. SeeBurks [1970] for a collection of essayson important problems on cellular au-tomata during this period. Later, physi-cists and biologists began to study cellu-lar automata for the purpose ofmodeling in their respective domains. Inthe present era, cellular automata arebeing studied from many widely differ-ent angles, and the relationship of these

structures to existing problems are be-ing constantly sought and discovered.

Next, we would like to clarify thepurpose of this survey as compared toother related work. There is an excel-lent survey of CA by A.R. Smith III[Smith III 1976]. However, it is morethan twenty years old. There are alsotwo other surveys [Vollmar 1977; Ala-dyev 1974] which are quite old. Cur-rently, it is perhaps quite impossible tosurvey the whole of CA research. Thereis a good survey on computation theo-retic aspects of CA by Culik II et al.[1990]. There are also books on CA[Garzon 1995; Chaudhuri et al. 1997;Wolfram 1986] which cover specific top-ics of CA research. In this survey we tryto cover the major questions askedabout CA as opposed to the use of CA in

Author’s address: Applied Statistics Unit, Indian Statistical Institute, 203 B.T. Road, Calcutta, India700035; email: [email protected] to make digital / hard copy of part or all of this work for personal or classroom use is grantedwithout fee provided that the copies are not made or distributed for profit or commercial advantage, thecopyright notice, the title of the publication, and its date appear, and notice is given that copying is bypermission of the ACM, Inc. To copy otherwise, to republish, to post on servers, or to redistribute tolists, requires prior specific permission and / or a fee.© 2000 ACM 0360-0300/00/0300–0080 $5.00

ACM Computing Surveys, Vol. 32, No. 1, March 2000

modeling of natural phenomena. We fo-cus on topics which are closer to com-puter science and mathematics ratherthan physics or other applications. Webelieve that such a survey has not beenpreviously attempted, and will prove tobe useful to both fresh entrants into thisfield and to experts working on particu-lar aspects of CA. However, we wouldlike to point out that any review of CAis bound to be incomplete. We have beenmotivated in choosing topics based onour knowledge and interest. The afore-mentioned surveys by A.R. Smith IIIand Culik II et al. have helped usgreatly in preparing this work. The bib-liography associated with this article isnot comprehensive, though we believethat there are sufficient links to almostall aspects of CA. Additional bibliogra-phies can be found in the books men-tioned above. An online bibliography onCA is also available at

http://alife.santafe.edu/alife/topics/cas/ca-faq/ca-faq.bib

At this point we would like to make afew remarks on the problem of trying towrite a history of any scientific topic. Achronological ordering of ideas is diffi-cult to adhere to, since an idea may beintroduced at some point in time, ispursued vigorously for a while, and may

disappear from the literature for quitesome time, only to be taken up again ata later point. There is almost no finalstatement on any idea. A thematicgrouping of topics is possible and ismostly used. However, in such an ap-proach one might have to include workfrom different decades under the samegroup, and this presents its own prob-lems. The scientific temper variesacross time, which leads to a distinctdifference in the approach to a problem.So even though the topic may be thesame, the method and questions mayvary considerably. In this paper we tryto take a chronological view of workdone in the area of cellular automataover the past forty years, and we orderthe topics based upon their first appear-ance in the literature. We have dividedthe work into three broad categories.

—Classical: The themes which weremore or less influenced by the initialwork of von Neumann.

—Modern: The themes which were in-fluenced by the work of Wolfram onone hand, and by developments ofother branches of computer science onthe other hand. In this part we re-strict ourselves to topics closer tocomputer science than physics.

—Games: Apart from the Game of Lifeand s-game we have also included theFiring Squad problem in this section.The problem formulation of the FiringSquad problem has more of the flavorof a game than a synchronizationproblem. Also, this problem somehowdoes not fit into any of the above twoclasses.

In the rest of the article we abbreviateboth cellular automata and cellular au-tomaton by CA. We consider differentvarieties of CA, but the exact structuremeant will always be clear from thecontext.

CONTENTS

1. Introduction2. Classical

2.1 Beginnings2.2 Variants of Cellular Automata2.3 Biological Connection2.4 Fault-Tolerant Computing2.5 Language and Pattern Recognition2.6 Invertibility, Surjectivity and Garden of Eden

3. CA Games3.1 Firing Squad Problem3.2 Game of Life3.3 s~s1! -Game

4. Modern Research4.1 Empirical Study4.2 Classification of CA4.3 Limit Sets and Fractal Properties4.4 Dynamics of CA4.5 Computational Complexity4.6 Finite CA and its Applications

5. Conclusion

Brief History of Cellular Automata • 81

ACM Computing Surveys, Vol. 32, No. 1, March 2000

2. CLASSICAL

2.1 Beginnings

The simplest description of a CA is aone-dimensional array (possibly two-way infinite) of cells. Time is discrete,and at each time point each cell is inone of a finite set of possible states. Thecells change state at each clock tick, andthe new state is completely determinedby the present state of the cell and itsleft and right neighbors. The function(called the local rule) which determinesthis change of state is the same for allcells. The automaton does not have anyinput, and hence is autonomous. Thecollection of cell states at any time pointis called a configuration or global stateof the CA, and describes the stage ofevolution of the CA. At time t 5 0, theCA is in some initial configuration, andhenceforth proceeds deterministicallyunder the effect of the local rule, whichis applied to each cell at each clock tick(see Figure 1).

Application of the local rule to eachcell of the CA results in a transforma-tion from the set of all configurationsinto itself. This transformation is calledthe global map, or global rule of the CA.This is a very simple description of aCA, although it is perhaps the moststudied structure.

The automaton originally describedby von Neumann is a two-dimensional

infinite array of uniform cells, whereeach cell is connected to its four orthog-onal neighbors (see Figure 2).

This was originally called a cellularspace, but the term CA is more popularnow. It was introduced by von Neumann[1966] as a formal model of self-repro-ducing biological systems. Key ideas ofthe construction can be traced backeven earlier to his talk on modeling ofbiological systems [von Neumann1963a]. The main purpose of von Neu-mann was to bring the rigor of axiom-atic and deductive treatment to thestudy of “complicated” natural systems.The basic idea of a self-reproducing au-tomaton is presented in von Neumann[1963a], and is a beautiful adaptation ofthe idea of constructing a universal Tur-ing Machine (TM). Here we present abrief sketch of the idea.

2.1.1 Self-Reproducing Automata. First,let us note that it is not very difficult toimagine the following two kinds of au-tomata. The first kind is an automatonA which when given an instruction I canuse it to construct an automaton (ormachine) which is encoded by I. In fact,I can be considered to be composed ofsimpler instructions, each of which isused to construct the basic parts alongwith instructions which specify how toput these basic parts together. The sec-ond automaton (say B) is even simpler.It copies an instruction I into the con-

Figure 1. Evolution of an 1-d CA.

82 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

trol part of some other automaton. Nowconsider A and B along with a controlautomaton C, which operates as follows.Given an instruction I, C runs A tocreate an automaton A1 correspondingto I and then runs B to copy the instruc-tion I into the control part of A1. Let Dconsist of A, B and C. Then, clearly, D isan automaton which requires an in-struction I to operate. Let ID be theinstruction which codes D. Let E be anautomaton formed from D by copying IDinto the control portion of D. Now it iseasy to see that E constructs itself, andhence is capable of self-reproduction.This simple description ignores the cod-ing and other formal details. Thesewere later formalized by von Neumann[1966] himself, in which he describes acellular space where each cell can be inany one of 29 possible states. The struc-ture is capable of non-trivial self-repro-duction in the sense that it can supporta universal computer. The process ofself-reproduction can be visualized asfollows [Smith III 1976]. Initially, themachine is placed in an environmentwhere in each direction there is anyamount of hardware available (a “hard-

ware soup”). Following local rules, theinitial configuration goes through a se-quence of steps whereby it extends an“arm” into the hardware soup and cre-ates a copy of itself, and then detachesthe newly created machine from itself.The original proof of von Neumann wassimplified and reformulated severaltimes [Arbib 1966; Banks 1970] (seealso Smith III [1976]).

The notion of self-reproduction intro-duced by von Neumann is asexual, inthe sense that the offspring is derivedfrom a single parent. In this form ofreproduction, the offspring is con-structed from a single “genetic” tapewhich contains an encoding of the ma-chine. Sexual reproduction have alsobeen considered, and Vitanyi [1973]contains a description of a machinewhich constructs an automaton fromtwo “genetic” tapes, where the resultingoffspring is not an exact copy of eitherparent.

It is important to note that a self-reproducing machine is to be nontrivial,in the sense of being capable of univer-sal computation. Otherwise, a 1-d arraywith a single quiescent cell and a localrule copying this cell to the left andright neighbors can be considered to beself-reproducing. This brings up thequestion of CA capable of universalcomputation and universal construc-tors. If a machine can construct a set ofautomata, then it is called an universalconstructor over this set. If this set con-tains the automaton itself, then it isself-reproducing. Before we discuss thequestion of universal computation, webriefly mention the general problem ofpattern replication.

Amoroso and Cooper have describedin an interesting paper [Amoroso andCooper 1971] 1-d and 2-d CA, whichafter many steps finitely reproduces itsinitial pattern. The rule used is verysimple. For 1-d, it is the sum of the leftneighbor and itself modulo k, where k isthe number of states a cell can assume.For 2-d, the rule is modified to includethe neighbor vertically above the cell. A

Figure 2. A 2-d CA with von Neumann (orthog-onal) neighbourhood.

Brief History of Cellular Automata • 83

ACM Computing Surveys, Vol. 32, No. 1, March 2000

generalisation to higher dimensions isconjectured in Amoroso and Cooper[1971] and proved in Ostrand [1971].Moreover, the pattern “reproduces” in aquiescent environment if k is prime.The CA rule used is linear, and is one ofthe early examples of linear CA.

2.1.2 Computation Universality. Itis not very difficult to see that a CA iscapable of universal computation. Thebasic idea is that a CA can perform astep by step simulation of a single tapeTuring Machine (TM). For convenience,assume that the tape of the TM is two-way infinite. Each cell of the simulatingCA will have two components. The firstcomponent stores the tape symbol of thecorresponding cell of the TM tape, andthe second component indicateswhether the head is scanning the corre-sponding cell of the TM. Then, from theTM’s transition function, it is easy toderive the local rule for the CA. Theessential idea is the following.

(1) If the head is not scanning the cellor its left or right neighbor, the con-tents of the cell do not change.

(2) If the head is scanning the left celland there is a right move, then inthe next step the head scans thepresent cell. Similarly for the otherdirection.

(3) If the head is scanning the cell, thenat the next clock tick, the contentsof the first component of the cell isupdated and the head does not scanthe cell anymore.

Note that this step for step simulationof TM by CA destroys the inherent par-allelism of CA. There have been at-tempts to bring out the power of thisparallelism [Smith III 1972]. Laterwork has shown how to simulate TM byreversible CA [Dubacq 1995]. There ex-ists a universal CA AU with 14 states,which can simulate step by step any CAwhose initial configuration and localrule are encoded as an initial configura-tion of AU (see Culik II et al. [1990]).

Computation universality of one-wayCA and totalistic CA (see Section 2)have also been proved [Culik II et al.1990]. The problem of deciding whethera CA is computation-universal based onthe local rule is undecidable, since oth-erwise the problem of deciding whethera Turing machine is universal would bedecidable. See Martin [1994] for addi-tional work on universal CA and itsS-m-n form.

2.1.3 CA Tradeoffs. An early techni-cal question regarding CA was the dif-ferent kinds of tradeoffs

—between the size of cell (number ofpossible states) and the size of theneighborhood and

—between the size of cell and the speedof computation.

The idea of tradeoff is an immediateconsequence of reformulation of vonNeumann’s original proof of self-repro-ducing machines. The original CA de-scribed by von Neumann used 29 statesper cell. Codd [1968] gave an 8-statemachine. Arbib [1966] provided a sim-ple description where each cell can exe-cute a short program–and hence thenumber of states per cell is large. Banks[1970] provided a 4-state cell whichcould be used to build a self-reproducingCA. Each of these constructions are for2-d infinite CA and uses the so-calledvon Neumann or 5-cell (orthogonal onesand itself) neighborhood.

Generalization of these tradeoff ideasfor construction and computation uni-versal machines is natural and has beenstudied in some depth. The simplestknown construction universal machinewith 4 states per cell and von Neumannneighborhood is that of Banks [1970].He has also described the simplestknown computation universal 2-d CA (3states per cell and von Neumann neigh-borhood). However, for 9 cell or unitsquare neighborhood (also called Mooreneighborhood), 2 states per cell is suffi-

84 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

cient and a particular local rule called“Game of Life” (see Section 3) has beenshown to be computation-universal[Smith III 1976]. Smith III [1971] pro-vides a list of neighborhood size versusstate set size tradeoff results for compu-tation-universal 1-d CA capable of self-reproduction.

The other kind of tradeoff results isrelated to simulation of a CA by anotherCA, which is a basic technique for prov-ing results on CA. Specialization of suchresults to computation-universal CAyields the results just described. It hasbeen observed (but not proved) that thecost of reducing neighborhood or in-creasing speed leads to an increase inthe size of the state set. For a neighbor-hood of M cells and n states per cell, thesize of the state set increases to aboutM n when reduction is to Moore neigh-borhood (a generalization of the 9 neigh-borhood for 2-d CA). Reduction of Mooreneighborhood to von Neumann neigh-borhood is difficult, and increases thestate set size from n to nV, where V isthe volume (number of cells) in a d-dimensional sphere of radius 2d3 / 2

[Smith III 1971]. For the 2-d and 3-dcases, this cost can be significantly re-duced [Butler 1974; Hamacher 1971].Simulations can be carried out withneighborhoods smaller than von Neu-mann. For example, a neighborhoodconsisting of the cell itself and a neigh-bor in each dimension suffices for a stepby step simulation of an arbitrary CA.In fact, the cell itself can also be left out[Smith III 1971]. If a strict step by stepsimulation is not required, then the ini-tial encoding may be omitted, and theCA can itself perform the initial encod-ing. The reverse tradeoff decreasing thestate set size by increasing the neigh-borhood is also possible [Smith III1971]. See also Mazoyer and Reimen[1992] for later work on CA speed-up.

Given a CA, it is possible to designanother CA which simulates the givenCA k times faster at a cost of increase ofstate set size, assuming Moore neigh-borhood before and after simulation

[Smith III 1971]. Both decrease inneighborhood and speed-up can also beachieved at a cost of increase in thestate set size. But there seem to be notheoretical results on the limits of thetradeoff possible. For example, assum-ing finite neighborhood, what is themaximum speed-up possible at a cost ofincrease in state set size? Investigationof this and similar questions can lead tointeresting results.

2.2 Variants of Cellular Automata

A CA is characterized by four features:the geometry of the underlying mediumwhich contain the cells; the local transi-tion rule; the states of the cell; and theneighborhood of a cell. In the followingparagraphs we briefly discuss differenttypes of CA that can arise by varyingthe four features mentioned above. Tothe best of our knowledge, these coverthe several variations considered in theliterature.

2.2.1 Cell States. The cells of a CAcan assume one of a finite number ofpossible states at any point of time.Usually there is one particular state,called the quiescent state, such that thelocal rule takes a cell to the quiescentstate, if all its neighbors are in thequiescent state.

A CA where the cells can have differ-ent state sets is called a polygeneousCA. Such CAs have not received muchattention except for the work of Holland[Burks 1970, Essay 15]. The case wherethe state sets of all cells are the same isthe usual one. This set can have analgebraic structure. For linear CA, thestate set is usually taken to be a field[Martin et al. 1984], though CA withstate sets Zm (the integers modulo m),for arbitrary m have also been studied[Ito et al. 1983]. In the VLSI context,this set is taken to be $0, 1%, the field oftwo elements.

A CA can be visualized as a collectionof a set of finite automaton. Each cell ofthe CA is an individual finite automa-ton. Though it is possible to allow each

Brief History of Cellular Automata • 85

ACM Computing Surveys, Vol. 32, No. 1, March 2000

cell to assume infinitely many states,such kinds of CA have not been studied.However, in Litow and Dumas [1993],CA is described for which the temporalsequence of a cell is an algebraic series,and hence the cell can store an arbi-trary integer.

In the study of limit sets of CA evolu-tion, it has been necessary to equip thestate set with the discrete topology [Cu-lik II et al. 1989].

2.2.2 Geometry. This can be ad-dimensional (possibly infinite) grid.Usually, the term CA is used for suchstructures. In case of finite grids, it ispossible to define different boundaryconditions. The grid is supposed to havea periodic boundary condition in somedimension if it is considered folded inthat dimension. The dimension has afixed boundary condition if the extremecells are considered to be adjacent tocells in some prespecified state whosevalue does not change during the com-putation. In case this prespecified stateis the quiescent state, the boundary con-dition is called a null boundary condi-tion. For linear CA, the quiescent stateis the state zero. Among the fixedboundary conditions, only the nullboundary condition has been studied se-riously. But see Martin et al. [1984] fora brief discussion of other possibilities.It is also possible to consider one end tohave periodic boundary condition andthe other end to have fixed boundarycondition [Bardell 1990].

A more abstract way of defining thegeometry is through group graphs. Thefollowing definition is from Harao andNoguchi [1978]. A group graph is atuple N 5 ~G, h!, where G is a groupwhich defines the nodes for the cellsand h defines a map from G to Gk byh~g! 5 ~h1 + g, . . . , hk + g!, wherehi [ G and + is the group operation.The map h provides the neighborhoodfor the cells. The concept of group graphis a convenient way to describe “uni-form” geometry—a connection patternwhich “looks the same” at all points.

Nonuniform connections have also beenstudied, though the relation betweenuniform and nonuniform geometry hasnot been fully understood (see Jumpand Kirtane [1974]).

So far we have considered what iscalled static CA—the node set and theinterconnection pattern do not changewith time. It is possible to consider nodestatic CA where the node set does notchange with time, but the interconnec-tion pattern may change. Such a struc-ture is still considered static and hasnot received much attention (see Var-shavsky et al. [1970]). However, dy-namic CA—both node set and connec-tions may change—have been studiedextensively due to its use in modeling ofbiological systems. For example, thework of Lindenmayer [1968], as describedin Section 2, falls in this category.

Recently, there has been a recent in-terest in studying CA over Cayleygraphs [Machi and Mignosi 1993; Roka1995; 1994].

2.2.3 Neighborhood. In some casessuch as group graphs, the geometry it-self determines the neighborhood of acell. However, if we are considering ad-dimensional grid it is possible to de-fine different kinds of neighborhood.The von Neumann (orthogonal) neigh-borhood and the Moore (unit cube)neighborhood have already been men-tioned in connection with the tradeoffresults. It is possible to define input andoutput neighborhoods of a cell. A celltakes its input from its input neighbor-hood and its state is available to thecells of its output neighborhood. If thesizes of the input and output neighbor-hoods are equal, then the CA is bal-anced. For balanced but nonuniformneighborhoods, the connection to uni-form neighborhood has been studied inJump and Kirtane [1974]. A variant ofCA where the local rule depends on thesum of the states of the neighboringcells is called totalistic CA, and wasintroduced by Wolfram. Computationuniversality of this kind of CA havebeen proved [Culik II 1990].

86 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

2.2.4 Local Rule. The local rule isusually assumed to be deterministic.This, however, is not necessary, andnondeterministic maps have been stud-ied in connection with language theory[Smith III 1972; Seiferas 1974; Mahajan1992] and reliable computation [Nishioand Kobuchi 1975]. A CA where eachcell has its own local rule is called hy-brid. Such structures have been studiedin connection to VLSI applications[Serra et al. 1990; Chaudhuri et al.1997; Sarkar and Barua 1998b]. It ispossible for a cell to change its local ruleat each time step. In the VLSI context,this is called a programmable CA[Nandi et al. 1994], and in theoreticalstudies on CA the structure has beencalled a tessellation automata.

Next, we discuss three variants of CAwhich have received more attention.

2.2.5 Tessellation Automata. This isa CA with an input line distributed toall cells. The setup can be visualized aseach cell having a finite set of localrules and the input is used to choose theparticular local rule to apply. SeeYamada and Amoroso [1969; 1971] for anice discussion on tessellation spaces.An interesting problem which is inher-ently tessellation-automata-theoretic isthe completeness problem, and relatedto the Garden of Eden problem for CA.The problem is stated as follows. Start-ing from an initial configuration withonly one nonquiescent state, is it possi-ble to apply input to drive the automa-ton to any specified finite configuration?If the answer is yes for some subclass ofautomata, then the subclass is calledcomplete. There are only partial an-swers to this question [Yamada andAmoroso 1970; Maruoka and Kimura1974; 1977]. Tessellation automata havealso been called time-varying CA andtheir formal language-theoretic proper-ties have been studied [Mahajan 1992].

2.2.6 Iterative Automata. This is aCA where only one particular cell isgiven an input. Such structures havebeen considered in connection with lan-

guage recognition studies [Kosaraju1975; Seiferas 1974; Chang et al. 1988].Different tradoff results (similar to CA)for this class have been considered [Cole1969]. In Smith III [1972], it is shownthat this class is an inherently slowerdevice than the usual CA. (Note that inthis case the input is provided one sym-bol at a time to a particular cell,whereas, for a CA, the input is theinitial configuration.) Iterative autom-ata languages contain the context-freelanguages [Kosaraju 1975]. A 1-d itera-tive automaton requires O(n2) steps toaccept a string of a CFL of length n. Thenondeterministic 2-d version of iterativeautomata can accept in linear time anylanguage accepted in linear time by anondeterministic multihead TM with atape of arbitrary dimension [Seiferas1974]. The paper also contains the resultthat the nondeterministic d-dimensionaliterative spaces can accept in lineartime any language accepted in time nd

by a nondeterministic multihead TMbut with a 1-d tape.

An interesting application is a lineartime multiplier designed by Atrubin.The binary representation of the multi-plicands are fed to the first cell (leastsignificant digit) first and the product isoutput from the first cell (again, leastsignificant digit first) with no delay. SeeKnuth [1973] for a good exposition ofthe algorithm. Iterative linear arrayshave also been used in VLSI applica-tions [Kung 1988].

The concepts of tessellation and itera-tive automata can be generalized to tes-sellation and iterative graph automataby defining such structures on groupgraphs [Smith III 1976].

2.2.7 One-Way CA. A one-way CAallows only one-way communication,i.e., in a 1-d array each cell dependsonly on itself and its left neighbor. Onecan also consider dependence on the celland its right neighbor. However, both-side dependence is not allowed. Thislack of two-way flow of information canbe considered to be a restriction on the

Brief History of Cellular Automata • 87

ACM Computing Surveys, Vol. 32, No. 1, March 2000

power of the automaton. However, thereare results which indicate otherwise.Morita [1992] has shown the computa-tion universality of 1-d, one-way revers-ible CA. Language recognition proper-ties of one-way CA have also beenstudied [Chang et al. 1988; Ibarra et al.1985a]. However, Terrier [1996] pro-vides an example of a language which isnot recognizable in real time by one-wayCA or iterative CA, but recognizable inreal time by CA. One-way versions ofthe iterative automata have been de-fined and their properties carefullystudied [Chang et al. 1988]. It turns outthat they can accept PSPACE-completelanguages and the languages acceptedby a linear time-bounded alternatingTM. The investigation in Chang et al.[1988] points out the connection of one-way iterative automata to complexitytheory. (See Section 2.5 for formal lan-guage properties of this class of CA.) Arelated class of automata motivated bydesign of systolic systems and algo-rithms is the class of systolic trellisautomata, which have been quite exten-sively studied by Choffrut and Culik II[1984]; and Culik II et al. [1984]. Thisclass is equivalent to bounded space re-al-time one-way CA. Study of systolicarrays modeled as 1-d, 2-d, one-way CA,and iterative arrays were carried out byIbarra and Kim [1984] and Ibarra et al.[1985b]. This work has resulted in thedevelopment of many easy-to-imple-ment systolic algorithms. One-way CAon Cayley graphs have also been stud-ied [Roka 1994].

2.3 Biological Connection

2.3.1 L-systems. CA were originallyproposed by von Neumann to provide aformal framework for the study of “com-plicated” natural systems. Later workin this direction used a structure calleddynamic CA for modeling of biologicalsystems. One of the early attempts wasby Lindenmayer [1968], who proposed amodel of growth for filamentary organ-isms based on ideas of CA. The class ofCA used is called dynamic CA where

cells may appear or disappear withtime. The key idea is to consider a se-quence (1-d array) of cells of the organ-isms. Then cell division is modeled byallowing a cell to be replaced by morethan one cell, each in some prespecifiedstate. If a cell has a neighborhood con-sisting of its left neighbor, then afterdivision the same neighborhood holds.The model just described is for non-branching filamentary organisms. It isalso possible to extend the theory tomodel branching organisms along witha neighborhood consisting of both leftand right neighbors. For the model withboth left and right neighbors, two out-put functions are defined, the left andthe right output. The input to the leftcell in the next step is the left outputand similarly for the right cell. Thus wemay consider the cell to consist of threecomponents (a technique which has alsobeen used very successfully in other ar-eas of CA). For the branching organism,the local rule specifies the first cell ofthe branch to be created. So if the localneighborhood of a cell is conducive, anew branch is created, which is thenconsidered attached to the basal cell. Acell may give rise to several branches,and in the model it is not possible todistinguish between the relative orien-tation of the branches. However, it isalso possible for the branches to giverise to new branches, and so on. Use ofL-systems in modeling plant life is dis-cussed in detail [Prusinkiewicz and Lin-denmayer 1990]. Later work on suchsystems was mainly formal language-theoretic (see Kari [1997]).

2.3.2 Self-Reproduction and ArtificialLife. The first attempt at modeling ar-tificial life with CA was von Neumann’sself-reproducing automata. An imple-mentation of this construction was done[Pesavento 1995]. Langton [1984] ar-gued that computation universality isnot a fundamental requirement for aself-reproducing automata.

An interesting biological connectionwas studied by Holland [1976]. He usedCA as a model to study the spontaneous

88 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

emergence of self-replicating systems.The CA is used as a model of the uni-verse (called the a-universe) where eachcell has two parts. The first part storesthe state of the cell and the second partindicates the nature of the bond (strongor weak) the cell has with its left orright neighbors. Stochastic operatorsare used to manipulate the states inaccordance with the bonds and in a con-servative manner—elements are nevercreated or destroyed, they are onlymoved about and rearranged by the op-erators. The operators are themselvesencoded by the states of the cells. Thecrucial parameter studied is the ex-pected time until the emergence of self-replicating systems, which is an ar-rangement of the universe which canreplicate itself.

For other work on modeling of artifi-cial life using CA, see Ikegami andHashimoto [1995] and Adami [1994]. Agreat amount of work has been doneusing CA for modeling biological sys-tems. One can see current issues of theJournal of Theoretical Biology for recentwork in this area.

2.4 Fault-Tolerant Computing

The idea of fault-tolerant computingalso originates from von Neumann[1963b], who showed how to build areliable Boolean circuit out of unreliablecomponents. For the case of CA, theunreliable components are taken to bethe cells. Each cell can misoperate andassume an incorrect state, i.e., one notdictated by the local rule. Early work inthis area assumed a fault model calledk-separated misoperation [Nishio andKobuchi 1975], i.e., there exists a finiteset K of Z d such that given a cell x [

Z d at most one cell in the set x 1 Kwill misoperate (here d is the dimensionof the grid, and Z is the set of integers).In Nishio and Kobuchi [1975], it isshown how to construct a CA which willcorrectly simulate an unreliable CAwith k separated misoperation, step for

step. The basic idea is to encode theinitial configuration of the unreliableautomaton suitably to form the initialconfiguration of the simulating automa-ton. The coding is carefully designed sothat each cell in the coded configurationcan use a majority voting rule to decideits state. The local rule of the simulat-ing automaton is almost the same as theoriginal one, except that at each stepeach cell of the simulating automatoncorrects any error in its neighboringcells before applying the local rule. Thisleads to an increase in the neighborhoodsize. It has been shown that under thesame fault model, unreliable CA overgroup graphs can also be simulated inan error-free way [Harao and Noguchi1975].

Gacs [1986] has shown how to con-struct a 1-d CA which can reliably per-form arbitrarily large computations,and where each cell can perform anerror with a positive probability. Thefault model so considered is importantfrom an ergodic theory point of view,and Gac’s result leads to the refutationof the “positive probability conjecture”in statistical physics, which states thatany one dimensional infinite particlesystem with positive transition proba-bilities is ergodic. For recent work onreliable cellular automata, see Gacs[1997].

2.5 Language and Pattern Recognition

A finite CA can be thought of as alanguage acceptor by considering theinitial configuration to be the inputstring and acceptance or rejection is de-termined by a specific cell (say therightmost) going to an accept or rejectstate. For a 2-d CA, the problem is oneof pattern recognition and the acceptcell can be the northeast one in a rect-angular grid or it could be the eastern-most cell in the northernmost row for ageneral 2-d layout. It turns out that thelinear, Dyck and bracketed context-freelanguages can be accepted by CA (alsoby one-way CA) in real time [Smith III1972; Dyer 1980; Ibarra et al. 1985a]. In

Brief History of Cellular Automata • 89

ACM Computing Surveys, Vol. 32, No. 1, March 2000

Smith III [1972], it is shown that nonde-terministic-bounded (the input is delim-ited and all other cells are in the quies-cent state and remain so during thecomputation) CA can recognize theCFLs in real time. The deterministiccase is open. If the number of steps of acomputation is fixed (but language-de-pendent), then the set of languages ac-cepted by nondeterministic 1-d CA isthe set of regular languages [Sommer-halder and Westrhenen 1983]. Here ac-ceptance is defined by all nonquiescentcells entering some final state. This no-tion of acceptance allows languages tobe accepted is less than real time. InIbarra et al. [1985a] it is shown thatthere are noncontext-free languages re-cognizable in O~log n! time, and thatthe languages accepted in o~log n! timeare regular.

Certain language classes can be de-fined by both restricting and enhancingthe power of CA. This is done by intro-ducing the following four conditions:

(1) one-way communication giving riseto oneway CA;

(2) for an input of n symbols, the num-ber of steps of computation requiredis exactly n; this is called real-timecomputation;

(3) for an input of n symbols, the num-ber of steps of computation is pro-portional to n; called linear-timecomputation;

(4) the local rule is nondeterministic,giving rise to nondeterministic CA.

The symbols O, r, l, and N are used asprefixes to the word CA to denote aparticular language class. As an exam-ple, rOCA denotes the class of lan-guages accepted by real-time one-wayCA. The CA is taken to be bounded, sothat all computations take place withinthe n cells of the initial configuration oflength n. The relationships among CAlanguage classes, as well as their rela-tionship to the classical languageclasses, were extensively studied. See

Mahajan [1992] for a good survey ofresults and techniques in this area.Here we briefly mention several impor-tant results. The first (and easy) resultis that the language class CA is equal toDSPACE(n). The class lCA is a subsetof OCA [Chang 1988; Ibarra and Jiang1987; Ibarra et al. 1985b]. This is ob-tained by considering the relationship ofboth OCA and lCA to sweeping autom-ata [Chang et al. 1988]. It is also knownthat rOCA is a proper subset of rCA[Choffrut and Culik II 1984; Culik II etal. 1984], and rCA is equal to lOCA[Choffrut and Culik II 1984]. ThePSPACE-complete language QBF(quantified Boolean formulas) belongsto OCA [Ibarra and Jiang 1987] andNSPACE(În) and ATIME(n) are sub-sets of OCA. The class OCA lies be-tween NSPACE(În) and CA5DSPACE(n), and proper containment betweenOCA and CA would separate these twoclasses, improving Savitch’s result. It isalso conjectured that lCA is properlycontained in OCA, since lCA is a subsetof P and OCA contains QBF, any proofthat lCA5OCA will imply thatP5PSPACE, a rather unlikely result.For the nondeterministic languageclasses, it has been proven in Dyer[1980] that NOCA5NCA5NSPACE(n),the class of context-sensitive languages.Further, it is known that rNOCA con-tains an NP-complete problem [Ibarraand Kim 1984]. Open problems and ad-ditional examples of languages con-tained by rOCA, rCA, lCA, and OCA canbe found in Mahajan [1992].

2.6 Invertibility, Surjectivity and Garden ofEden

A major focus of research in CA is re-lated to questions of invertibility. A CArule r is called invertible if there existsanother rule r21, called the inverse rule,which drives the CA backward, i.e., ifapplication of r to a configuration cproduces a configuration d, then appli-cation of r21 to d produces c. A CA is

90 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

called invertible if its local rule is in-vertible. Richardson [1972] proved thata CA is invertible iff its global map isinjective. The technique does not pro-vide an inverse, as topological argu-ments are used to prove the result. Foran automata-theoretic approach to theproblem, see Culik II [1987]. Amorosoand Patt proved that there is an effec-tive procedure to determine invertibilityof 1-d CA, based on the local rule [Amo-roso and Patt 1972]. Kari [1990; 1994]has shown that for a 2-d CA the ques-tion of determining invertibility fromthe local rule is undecidable. The reduc-tion is from the tiling problem in con-junction with a special version of thetiling problem, called the directed tilingproblem.

The surjectivity of the global map of aCA have also been studied. A configura-tion is called a “Garden of Eden” config-uration if it is not “reachable,” i.e., itcan only occur as an initial configura-tion in any evolution. Existence of sucha configuration shows that the globalmap is not surjective. Myhill [1963]proved that a global map is surjective iffits restriction to finite configurations isinjective. The surjectivity of 1-d CA isdecidable [Amoroso and Patt 1972].Kari [1990; 1994] proves that the prob-lem is undecidable for two dimensionsby showing that the injectivity problemrestricted to finite configurations is un-decidable. To tackle finite configura-tions, Kari [1990; 1994] introduced aspecial class of tilings with the “finitetiling property”.

For linear CA over Zm, Ito et al.[1983] provide necessary and sufficientconditions for invertibility. Computa-tion of the inverse of a CA, even when itis invertible, can be a difficult job. Sato[1994] provides a construction for a spe-cial class of CA, called the group-struc-tured CA. Manzini and Margara [1998]provide an efficiently computable for-mula for the inverse of a d-dimensionallinear CA over Zm. There is a quadratic-time algorithm to determine reversibil-ity and surjectivity of the global map of

a linear CA [Sutner 1991]. The algo-rithm is based on the representation ofa configuration of a linear CA by a finitegraph (a De Bruijn graph) as used byWolfram [1984a].

Given a 1-d CA, it is possible to con-struct an invertible 1-d CA which cansimulate the original CA [Morita 1995].It is even possible to simulate TM byinvertible CA [Dubacq 1995]. Toffoli[1977] has shown how to simulate anyk-d CA by an invertible ~k 1 1!-d CA.This proves the computation universal-ity of invertible CA for dimensionshigher than one; and from the result ofMorita [1995], 1-d invertible CA is alsocapable of universal computation. How-ever, the question of whether a k-d CAcan be simulated by a k-d invertible CAis still open for k . 1. The invertibilityquestion is of fundamental importanceto physics, as it can be used for model-ing microscopically reversible dynami-cal systems; see Toffoli and Margolus[1990] for a survey.

For a finite CA, an injective globalmap has to be bijective. Moreover, if theglobal map of a finite CA is injective, itdoes not necessarily mean that there isan inverse CA, in the sense that there isa inverse local rule that can be used toforce a configuration to retrace the orig-inal evolution. So a finite CA is said tobe invertible if the global map is a bijec-tion. In this case, it is trivial to see thatthe nonexistence of Garden of Eden con-figuration is a necessary and sufficientcondition for invertibility of the globalmap. It is, in general, difficult to deter-mine invertibility of finite CA; seeHarao and Noguchi [1978] for a discus-sion of the dynamics of finite CA. If theglobal map is a linear transformation,then the problem becomes more man-ageable. Extensive discussion on prop-erties of linear or additive CA can befound in Martin et al. [1984]. In fact, for1-d linear CA, the question is easy toanswer [Martin et al. 1984; Sutner1990b; Barua and Ramakrishnan 1996].Extensions to 2-d CA are studied in Ba-rua and Ramakrishnan [1996]; Sutner

Brief History of Cellular Automata • 91

ACM Computing Surveys, Vol. 32, No. 1, March 2000

[1996]; and Sarkar [1996] and multi-dCA in Sarkar and Barua [1998a].

3. CA GAMES

3.1 Firing Squad Problem

This is basically a synchronization prob-lem, but can also be thought of as agame. The problem was first proposedby Minsky around 1957, and first ap-peared in print in Moore [1964]. Thefollowing is a simple description of theproblem. Consider n soldiers (out ofwhich one is a general) standing in arow. The soldiers (including the gen-eral) can communicate only with theirimmediate left and right neighbors. Thegeneral gives the command to fire. Ulti-mately, the soldiers and the general arerequired to fire simultaneously, and forthe first time. In CA terms, the problemis to design a cell and a local rule suchthat starting from an initial configura-tion, where only one cell is on and theother n 2 1 cells are off, there is anevolution such that all the cells enter apredesignated state all at once and forthe first time. Note that the problemcan also be considered on an infinite 1-darray, but then the other cells must allbe in the quiescent state and remain sothroughout. The basic problem is to de-sign a cell which is independent of thenumber of soldiers, and hence will workfor an array of arbitrary length. Thismeans that none of the cells can countupto n. In case the general is one of theend cells, it is easy to see that theminimum time required for synchroni-zation is 2n 2 2 steps. Waksman[1966] provides a solution in 2n 2 2steps. The solution depends heavily onthe idea of signals propagating throughthe array at different speeds. A signal isessentially a symbol which passes fromone cell to its neighbor in a particulardirection (left or right). A signal propa-gates at the “speed of light” if it movesone cell at each step. This is the fastestspeed at which a signal can propagatethrough the array. It is possible for a

cell to suppress a signal for a fixednumber of time steps. Then the speed ofthe signal determines its geometry—theangle that it makes with the horizontal.A minimum state solution to the prob-lem is provided in Mazoyer [1987].

For a solution to the problem wherethe general can be any cell, see Mooreand Langdon [1968]. Culik II [1989]considered several other variation, andhas used the results to disprove a con-jecture of Ibarra and Jiang that real-time one-way CA cannot accept certainlanguages. The problem has also beengeneralized to higher dimensions[Nguyen and Hamacher 1974; Shinahr1974] and node static and dynamic CA[Herman et al. 1974; Varshavsky et al.1970]. A generalization to arbitrarygraphs called the Firing Mob problemwas introduced in Culik II and Dube[1991], where an efficient solution isalso provided. The introduction to CulikII and Dube [1991] also contains a briefhistory of the Firing Squad problem andalso the solutions attempted by variousresearchers. The central result that it ispossible to design such a CA is calledthe Firing Squad theorem, and used inlanguage and pattern-recognition stud-ies of CA [Smith III 1972; Culik II1989]. A related “desynchronization”problem is to design a CA such that allcells are initially in the same state, andultimately only one cell goes to a pre-designated state. It is called the “QueenBee” problem [Smith III 1976].

3.2 Game of Life

This game was originally proposed byConway and made popular throughMartin Gardner’s column in the Scien-tific American [Gardner 1970; 1971].The original motivation was to design asimple set of rules to study the macro-scopic behavior of a population. The cri-terion for choosing the rules was basedon the principle that the growth or de-cay of the population should not be eas-ily predictable. After a great deal ofexperimentation, Conway chose the fol-lowing set up. The population is repre-

92 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

sented by a configuration of a 2-d infi-nite array of cells with Moore (unitsquare) neighborhood, where each cellcan be in one of the states 1 or 0. Thelocal rule is described as follows:

(1) Survival: If a cell is in state 1 (alive)and has 2 or 3 neighbors in state 1,then the cell survives, i.e., remainsin state 1.

(2) Birth: If a cell is in state 0 and hasexactly 3 neighbors in state 1, thenin the next time step the cell goes tostate 1.

(3) Deaths: A cell in state 1 dies (goes tostate 0) of loneliness if it has 0 or 1neighbors. Also, it dies because ofovercrowding if it has 4 or moreneighbors.

Each configuration is called a popula-tion, and the evolution of the populationis studied. As with many CA evolutions,the “Game of Life” shows fantastic vari-ation in the growth patterns of the ini-tial population. A group at MIT hasshown that there is a simple initial con-figuration that grows without limit. Theconfiguration grows into a “glider gun”and, after 40 steps, fires the first “glid-er,” and thereafter continues firing glid-ers after every 30 moves. It has beeninformally proved that the “Game ofLife” is capable of universal computa-tion. For a good account of the game andfor some good pictures, see Gardner[1970; 1971] and Conway et al. [1992].There are also several Internet pagesdedicated to the “Game of Life.”

3.3 s~s1! -Game

This game was first proposed by Sutner[1990a] and is based on the battery-operated toy MERLIN [Pelletier 1987].It is a two-person game and is played ona 2-d finite grid, where each node has abulb that can be either on or off. A moveis made by choosing a node and, as aresult, the states of all the bulbs inorthogonal neighborhood positions tog-gle. A configuration of the game is astate of the grid where some of the

bulbs are on and others are off. Player Achooses two configurations, the initialand the target configurations. Player Bhas to make a sequence of moves start-ing from the initial configuration andreach the target configuration. It is easyto see that choosing a node twice is thesame as not choosing it at all. The orderof the choice of nodes is not important.Thus, any winning strategy (solution)for B can be viewed as a set rather thana sequence. This set of nodes can thenbe thought of as a configuration of thegrid (the bulbs in the set are on, theothers are off). Suppose the initial con-figuration is the all 0 configuration andthe target configuration is Xt. If Z is asolution to this instance, then s~Z ! 5Xt, where s is the global rule of a finite2-d CA whose local rule is the sum(modulo 2) of the four orthogonal neigh-bors. Again, Z is a solution for the pair~ Xs, Xt! iff s~Z ! 5 Xs 1 Xt and hencethe number of solutions (if any exist) is2k, where k is the corank of the linearmap s. Thus, the study of the s-gamereduces to the study of linear 2-d CA[Barua and Ramakrishnan 1996; Sutner1990b]. The corresponding game wherethe state of the chosen bulb alsochanges is called the s1-game. Both thes and s1-games have been studied on2-d and multidimensional grid; seeSarkar and Barua [1998a] for results onmultidimensional CA, and with directrelevance to the multidimensionals~s1!-game. The game has also beenconsidered over arbitrary graphs [Sut-ner 1988b; 1989b], but results are moredifficult to obtain in this setting.

4. MODERN RESEARCH

4.1 Empirical Study

The mid-1980s are an important periodin the history of CA, largely due to thework carried out by Wolfram. The na-ture of his questions represent a para-digm shift in CA research. Wolfram car-ried out an extensive experimental

Brief History of Cellular Automata • 93

ACM Computing Surveys, Vol. 32, No. 1, March 2000

analysis of the growth patterns of CA.An early paper by Wolfram [1983] dis-cusses several statistical parameters ofthe space-time patterns of CA evolution.Later work extended and clarified muchof the intuition in several directions. Anexcellent source of papers on this periodof CA research is a book by Wolfram[1986].

The approach taken is to consider CAas models of complex systems, in thesense that very simple CA rules cangive rise to extremely complicated pat-terns. The mathematical simplicity inCA description is thought to be a signif-icant advantage for modeling, ratherthan using systems of differential equa-tions. A related phenomenon in CA evo-lution is self-organization. Startingfrom random unordered configurationswith maximum entropy, a CA willevolve to states of lesser entropy. This iscontrary to the second law of thermody-namics, which states that reversiblesystems evolve to states of maximal en-tropy. The microscopic irreversibility ofCA is the reason behind this self-orga-nizing behavior.

The 1-d, 3 neighborhood, binary CA isthe one extensively studied by Wolfram.A numbering system for the possiblelocal rules of such a CA can be found inWolfram [1986]. Rules 90 and 150 areimportant. Rule 90 is the sum modulo 2of the states of the nearest two neigh-bors. Rule 150 is the sum modulo 2 ofthe states of the nearest two neighborsand the state of the cell itself. Note thatboth rules 90 and 150 are linear.

The approach taken by Wolfram[1984b] in studying the growth patternsof CA is to define several local andglobal statistical parameters and tostudy their behaviors. Some importantlocal parameters are

—average density of nonzero sites,which is a “rough” measure of thegrowth of CA evolution;

—the average number of triangles ortriangle density T(n) of triangles ofbase length n, in the space time pat-tern (see Figure 3);

—sequence density Qi~n! is the densityof sequences of exactly n adjacentsites with the same value i.

Both the triangle and the sequencedensity follow an exponential rule forevolution from an initial disorderedstate. For example, for large n, T~n! zl2n and the parameter l distinguish be-tween linear (l ' 2) and nonlinear (l' 4 / 3) rules. Another important fea-ture of the space time evolution from aninitial disordered state is that trianglesof all sizes are obtained, and hence thestructure is generated on all scales.

For a finite N-cell CA, one can con-sider the finite set of 2N configurationsto be an ensemble where each configu-ration has equal probability of occur-rence. After evolution for a few timesteps, an equilibrium is achieved wherethe configurations have different proba-bilities according to some distributionfunction. On taking the average overthe ensemble, properties of configura-tions with higher probability dominate.This indicates the self-organizing char-acter of CA evolution. Another measureof self-organization is entropy. For afinite CA, the entropy is defined as(pilog pi, where pi is the probability ofconfiguration i. For irreversible CA,this entropy decreases from an initialmaximum (for random initial configura-tions) to lesser values. A correspondingentropy called “block” or “Renyi” en-tropy can be defined for infinite 1-d CA,and shows a similar phenomenon. Forsecond-order (next state depends onpresent and previous states of neigh-bors) reversible infinite CA, the entropyalmost always increases with time.

Another interesting approach to char-acterize CA evolution comes from for-mal language theory. It was shown inWolfram [1984a] that the set of configu-rations that can appear after t timesteps forms a regular language. The sizeof the minimal DFA after t steps pro-vides an indication of the complexity ofthe set of configurations after t steps.

94 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

For many CA rules, the minimal DFAbecomes more complicated at each stepand the sequence of DFAs does not ap-pear to exhibit any overall structure.Again, for some CA rules, the infinitelimit set of configurations (the set ofconfigurations reachable at arbitrarilylarge time steps) is also a regular lan-guage; but there are others whose regularlanguage complexity grows with time,and hence seem to generate nonregularlanguage in the limit. In fact, Hurd [1987]provided examples of CA with strictly

nonregular, noncontext-free and non-r.e.limit sets. In Green [1987], a CA is de-scribed whose limit set is NP-hard.

A modification of this approach asso-ciates a weight, corresponding to theprobability Pi that each node is visited,to each node of the minimal DFA. Onethen computes the entropy measure(Pilog Pi and uses it to study thegrowth pattern of the configurations fordetails, see the Appendix (Table 11) ofWolfram [1986].

Figure 3. Triangles in the space time pattern of a CA. The pattern shows a self-similar structure.

Brief History of Cellular Automata • 95

ACM Computing Surveys, Vol. 32, No. 1, March 2000

4.2 Classification of CA

A major problem stemming from Wol-fram’s work is classifying CA rules ac-cording to their behavior. The initialempirical classification was proposed byWolfram himself [Wolfram 1984b]. Hisclassification is based on entropy mea-sures and identifies the following fourclasses.

(1) Evolution leads to a homogeneousstate.

(2) Evolution leads to a set of separatedsimple stable or periodic structures.

(3) Evolution leads to a chaotic pattern.

(4) Evolution leads to complex localizedstructures which are sometimeslong-lived. It is believed that thisclass is capable of universal compu-tation.

Later work concentrated on formalizingthe intuitive classifications by Wolframet al. Culik II and Yu [1988] proposedthe following classification. Let r be thelocal rule for a CA. Then

(1) Rule r is in class one iff every finiteconfiguration, i.e. configurations inwhich only a finite number of cellsare in nonquiescent states, evolvesto a stable configuration in finitelymany steps.

(2) Rule r is in class two iff every finiteconfiguration evolves to a periodicconfiguration in finite number ofsteps.

(3) Rule r is in class three iff it isdecidable whether a configurationoccurs in the orbit of another.

(4) Class four comprises all local rules.

They show that the problems of decid-ing membership of a rule r in classesone and two are P1

0-hard. Similarly,class three is S1

0-hard. Sutner [1989c]has shown that classes one and two areP2

0-complete and class three isS3

0-complete. The arguments are based

on encoding TM instantaneous descrip-tions by natural numbers and the simu-lation of TM by CA. It is important tonote that the above classification con-siders only finite configurations. Infi-nite configurations in general cannot befinitely described, and hence cannot betackled by conventional computabilitytheory. A classification of periodicboundary condition CA (whose configu-rations can be thought of as spatiallyperiodic configurations of an infiniteCA) have also been proposed [Sutner1990a]. Using a nonstandard simulationof a TM by a CA, it is shown that theproblem of deciding membership in thehierarchy is undecidable.

In a recent study, Braga et al. [1995]provided a classification of CA based onpattern growth. The pattern growthproperties are shown to be dependenton the truth table of the local rule of thecorresponding CA. This provides an al-gorithm for classifying CA rules, andhence defines an effective hierarchy ofCA rules, in sharp contrast to the unde-cidability results discussed above. Theessential technique is the fact that cer-tain shift-like dynamics in the evolutioncan be discovered by looking at thetruth table of the local rule. Then aproper grouping of rules exhibiting sim-ilar dynamics yields a classificationwhich is close to that of Wolfram; seeCulik II et al. [1990] for other ap-proaches in classifying CA.

A preliminary study of 2-d CA [Pack-ard and Wolfram 1985] shows that it ispossible to classify 2-d CA along thesame lines as 1-d CA. This suggeststhat the global behavior of 2-d CA issimilar to 1-d CA. However, 1-d and 2-dCA show marked differences with re-spect to other properties. Golze [1976]has shown that for 1-d CA every recur-sive configuration (a configurationwhere each cell value can be calculatedeffectively) has a recursive predecessor;but in the 2-d case, even a finite config-uration may fail to have a recursivepredecessor. Again, invertibility of 1-dCA is decidable, while it fails to be sofor 2-d (and higher dimension) CA.

96 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

4.3 Limit Sets and Fractal Properties

One important direction of CA researchin the modern era is the study of thelimit sets of CA space-time patterns.Early work in this area was done byWillson [1978; 1981], and the topic re-ceived an impetus from Wolfram [1983;1984b]. However, the notion of a limit-ing set of configurations obtained byevolving a CA was introduced by Pod-kolzin in 1976 (see Culik II et al.[1990]). Later, we will mention some ofthe work in this area.

4.3.1 Fractal Dimension of Space-Time Patterns. The space time-patternobserved during simulation shows sev-eral kinds of interesting characteristics(see Appendix of Wolfram [1986]). Oneof the important features is a scale in-variance and self-similarity on differentscales. This immediately suggests com-puting the fractal dimension of suchpatterns. Wolfram’s empirical investiga-tion [Wolfram 1983] outlines two natu-ral ways to do this. In the first ap-proach, a parameter T~n! is definedthat measures the density of trianglesof base length n. A geometrical con-struction shows that for rule 90, T~n!z n21.59 and for rule 150, T~n! zn21.69. The invariants 1.59 and 1.69then give the limiting fractional dimen-sion of the patterns. In the second ap-proach, the space-time configurationsare scaled to fit the same perimeter,and one considers the set of all limitpoints. This gives rise to a fractal di-mension which is a “geometric” dimen-sion, and is also called the Kolmogoroffdimension. Willson [1984b] investigatestheoretically why the two approaches tocompute dimension should coincide andprovides examples where the Kolmogor-off dimension differs from the moreusual Hausdorff-Besicovitch dimension.

Theoretical study of the limit sets ofCA evolution via geometric invariantswere performed by Willson [1984a]. Thebasic object of study is the sequence

v, Fv, F 2v, . . . , F pv, . . . ,

where v is a configuration of ann-dimensional CA, and F is the globalrule of some CA. If we fix a state q, thenwe can think of the set of cells (in space-time configuration) having value q as aset of points where each point is givenby an ~n 1 1!-dimensional vector. LetXp be the above set corresponding toF pv. Consider the set Xp/p, where thevectors of Xp/p are obtained by dividingeach vector of Xp by p. This scalingensures that the space-time configura-tions fit the same perimeter at eachtime step. Let Lim~v, q! be the set ofpoints in the limit p 3 `. This limit istaken as an approximation of Xp andproperties of the limit indicate the natureof the growth pattern in space-time con-figurations. For example, if Lim~v, 1! isa tetrahedron, then we expect the con-figurations to grow into a tetrahedralform. When the CA rule is linear (mod2), it has been shown that the limit setis a compact subspace of Euclideanspace and can have fractional Hausdorffdimension. For linear CA, this providesa formal proof of Wolfram’s basic intu-ition. Space-time patterns of arbitrarylinear CA have also been studied [Taka-hashi 1992]. The corresponding limitsets are generally fractals. The self-sim-ilar structure is characterized by a tran-sition matrix, whose maximum eigen-value determines its Hausdorffdimension.

4.3.2 Limit Sets of CA Evolution.Limit sets were also studied from a dif-ferent direction using formal language-theoretic methods [Hurd 1987; Culik IIet al. 1989]. In this approach, the set ofconfigurations rather than the space-time patterns are considered. For ad-dimensional infinite CA having S asthe set of cell states, the set of configu-rations is SZd

. When S is endowed withthe discrete topology, then SZd

with theproduct topology is compact by Ty-chonoff’s theorem, and the global map Gof the CA is a continuous function. Let-

Brief History of Cellular Automata • 97

ACM Computing Surveys, Vol. 32, No. 1, March 2000

ting SZd

5 V0 and V i 5 G~V i21! for i$ 1, each V i is a compact subspace ofSZd

and V 5 ùi$0

V i is the limit set for

the CA. This V is the object of study. Itwas shown in Culik II [1989] that, ford $ 2, it is undecidable whether V con-tains a finite configuration. Using thenotion of a limit set of a CA, it is possi-ble to define a limit language as follows.Consider a 1-d CA, then every configu-ration is a bi-infinite word over S. For aconfiguration c, define

L@c# 5 $w [ S* :

w is a finite subword of c%

and let L@C# 5 øc[C

L@c# for a set of

configurations C, then L@V# is the limitlanguage. The membership problem forsuch a limit language is undecidable[Culik II et al. 1990]. For a survey ofresults regarding this limit language,see Culik II et al. [1990]. Given a CA,the complement of the limit language isr.e. [Culik II et al. 1990]. Also, for anylanguage whose complement is r.e., onecan construct a CA whose limit lan-guage yields the chosen language afterintersection with a regular languageand a e-limited homomorphism. Thiscan be used to show that there exists aCA whose limit language is not r.e. Sim-ilar properties have been obtained forP, the closure of the points periodicunder the global CA map; see Culik II etal. [1990] for details.

4.4 Dynamics of CA

4.4.1 State Transition Diagram.One can define a State Transition Dia-gram (STD) for an infinite CA by con-sidering an infinite directed graphwhose vertices are the configurations ofthe CA and whose edges represent one-step evolution of the CA. This was doneby Podkolzin (see Culik II et al. [1990]),where it is shown that the STD eitherhas a single connected component or

has uncountably many connected com-ponents. If a CA has only one singleconnected component, it is called a nil-potent. It has been proved (see Culik IIet al. [1990]) that, for two or more di-mensions, the problem of CA nilpotencyis undecidable. The same result wasproved by Kari [1992] for one dimen-sion. Podkolzin has also shown that, forany CA, either the limit set is a single-ton and the CA is nilpotent, or the limitset contains an infinite number of ele-ments; see Culik II et al. [1990] forfurther discussion on limit sets.

4.4.2 Symbolic Dynamics. Anotherinteresting approach to the study of dy-namic properties of CA is to considerthe CA as a computational device actingon bi-infinite strings, on one hand, andas a continuous function on a compactmetric space on the other. This givesrise to considerations of symbolic dy-namics on bi-infinite strings. If S is thestate set for a cell of a 1-d CA and Z isthe set of integers, then SZ is the set ofall configurations of the CA. It shouldbe noted that if G is a global CA map,then it is a shift-invariant continuousmap from SZ to SZ. The converse thatany shift-invariant continuous mapfrom SZ to SZ arises as a CA map wasproved by Hedlund [1969]. A topologi-cally closed subset of SZ is called asubshift if it is invariant under the shiftmap. A subshift is said to be of finitetype if no bi-infinite word in it containsany block from an excluded finite set. Asofic system is the image of a shift-invariant continuous map acting on asubshift of finite type. It has beenshown that each sofic system is avv-regular set, and for each i $ 0,Gi~SZ! is a vv-regular set [Culik II andYu 1991] where G is the global map of aCA; see Culik II and Yu [1991] andCulik II et al. [1990] for a more detaileddiscussion.

4.4.3 Topological Properties. A topicclosely related to limit sets, which has

98 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

received a lot of attention in recenttimes, is the topological properties ofCA. These properties arise when a CA isconsidered to be a discrete time dynam-ical system. As mentioned before, theset of d-dimensional CA configurationswith global map F can be consideredequipped with the product topologywhen the state set of a cell is given adiscrete topology. An element of a sub-basis for this topology is a set of config-urations such that a particular cell ofall the configurations in the set are in afixed state. It is possible to define sev-eral distance measures on the set ofconfigurations, all of which induce theproduct topology (see Finelli et al.[1998] for an example).

One can define several dynamicalproperties [Manzini and Margara 1999;Finelli et al. 1998; Hurd et al. 1992]such as

(1) Topological transitivity: For eachpair of nonempty open subsets U,V # X, there exists n $ 0 such thatF n~U ! ù V Þ f.

(2) Sensitivity to an initial condition: Ifthere exists d . 0 such that for allconfigurations x and for all e . 0there exists a configuration y andan n $ 0 such that d~x, y! , e andd~F n~x!, F n~ y!! . d.

(3) Attractor: A nonempty subset Z ofconfigurations is an attractor for Fiff there exists an open set U of

configurations such that F~U# # U !and Z 5 ù

j$0F j~U !.

(4) Expansivity: If there exists d . 0such that for every pair of distinctconfigurations x, y there exists aninteger n such that d~F n~x!,F n~ y!! . d. Since n can vary overthe set of integers, this definitionmakes sense only if the associatedCA is invertible. For noninvertibleCA, this definition can be modifiedby restricting n to be nonnegative.

In this case, the CA is said to pos-sess positive expansivity.

(5) Topological entropy: Informally thismeasures the uncertainty of the for-ward evolution of any dynamicalsystem in the presence of an incom-plete description of an initial config-uration. A definition tailored to 1-dCA is provided in Hurd et al. [1992].

(6) Lyapunov exponents: This is usuallydefined over differentiable spaces.An adaptation of this concept for thetopology on CA configurations isprovided in Shereshevsky [1992].

Many interesting results have been ob-tained for these and other topologicalproperties. Hurd et al. [1992] haveshown that the topological entropy ofCA is uncomputable. However, for lin-ear and positively expansive CA, thiscan be computed as shown in Michele etal. [1998]. Attractors of CA are studiedin Blanchard et al. [1997] and in Kurka[1997]; and linear CA in Manzini andMargara [1999]. Complete characteriza-tions of most topological parameters forlinear CA have also been done (seeManzini and Margara [1999] for a list ofsuch properties). The relationship ofLyapunov exponents to expansivity andsensitivity were studied in Finelli et al.[1998]. A classification of CA into fivedisjoint classes based on the structureof their attractors was made by Kurka[1997].

4.5 Computational Complexity

An early task in the study of CA’s com-putational complexity is learning theminimum number of steps required toperform certain computations. Seriousattempts at studying complexity-theo-retic questions regarding CA is a laterdevelopment. Wolfram [1984a] showshow to construct a graph to representconfigurations reachable after one timestep of a 1-d CA. All possible infinitepaths through the graph represent allpossible configurations. The notion canbe generalized to a finite number of

Brief History of Cellular Automata • 99

ACM Computing Surveys, Vol. 32, No. 1, March 2000

time steps and also to limit sets. Thegraph can be regarded as the state tran-sition graph of a finite automaton thatmay be nondeterministic. The equiva-lent minimum state DFA can be con-structed, and the number of states insuch a DFA provides a measure of thecomplexity of the corresponding configu-ration set. For some interesting proper-ties of this measure, see Wolfram[1986]. A consequence of Wolfram’s re-sult is that the predecessor existenceproblem (i.e., given configuration X,does there exist a configuration Y suchthat Y evolves to X in one time step?)for 1-d CA is decidable.

This leads to a more formal study ofthe computational complexity of CA. Inparticular, it was important to find NP-complete problems for CA. First resultsappeared in Green [1987], where a CAis constructed for which the followingproblems are NP-complete:

—determining if a given subconfigura-tion s can be generated after ?s? timesteps;

—determining if a given subconfigura-tion s will recur after ?s? time steps;

—determining if a given temporal se-quence (values of a particular celltaken over time) of states s can begenerated in ?s? time steps.

The particular CA described is quitecomplicated, since an arbitrary struc-ture of the 3-SAT problem has to beencoded in the essentially local commu-nication mechanism of a CA. For aninfinite CA, certain problems [Sutner1989a] such as configuration reachabil-ity (CREP, source configuration X; tar-get configuration Y; is Y reachable fromX?), and predecessor existence (PEP)are undecidable. Undecidability ofCREP is easy to see, since a CA cansimulate a TM, and configurations ofthe CA encode instantaneous descrip-tions of TM. Hence the halting problemfor TM can be translated to CREP byasking whether a halting configuration

is reachable from the initial configura-tion. In fact, CREP is S1

0-complete forinfinite CA of any dimension. However,for PEP there is a marked difference forthe 1-d and higher dimensional CA.From Wolfram’s characterization of 1-dCA using regular grammars [Wolfram1984a], it follows that PEP is decidable.On the other hand, Yaku [1973] hasshown that for 2-d CA restricted to fi-nite configurations, PEP is equivalentto the problem of whether a TM halts onthe empty tape, and hence is S1

0-complete.Similar results for finite CA are stud-

ied in Sutner [1995]. For 1-d CA, PEP isNLOG-complete, and is NP-complete forall dimensions higher than one. In Sut-ner [1995], examples of local rules areconstructed such that CREP isPSPACE-complete/NP-complete for 1-dCA. For 1-d CA, if one restricts atten-tion to a polynomially bounded versionof CREP (i.e., the number of steps isless than or equal to some polynomial inthe number of cells), it is possible toconstruct a local rule such that CREP isP-complete (w.r.t. log space reductions).For 2-d CA, an example of rule r isprovided such that CREP is NP-com-plete. A classification of CA rules simi-lar to that of Culik and Yu (for infiniteCA) is connected to several deep prob-lems in complexity theory.

Durand [1994; 1995] provides com-plexity results for CA with a differentflavor. The injectivity problem for 2-dCA restricted to finite configurationsand von Neumann neighborhoods isco-NP complete [Durand 1994]. This re-sult is about arbitrary CA and is differ-ent from the above results where exam-ples of CA are provided for which aproblem is complete for some complexityclass. Hence this kind of result may becalled uniform complexity results. Du-rand [1995] also proves that the revers-ibility problem for 2-d CA restricted tocertain types of finite configurations iscomplete for the class RNP introducedby Levin.

100 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

4.6 Finite CA and its Applications

A finite CA has a finite number of cells.Figure 4 shows a 4-cell CA whose localrule is the sum modulo 2 of the states ofthe left and right neighbors. For finiteCA, the dynamical properties are com-pletely captured by the State TransitionDiagram (STD), which is a directedgraph whose nodes are configurations ofthe CA, and there is a edge from node ito node j iff configuration i leads toconfiguration j in one time step. Since afinite CA is an autonomous determinis-tic machine, it is easy to see that theSTD will consist of components, witheach component having a unique cycleand trees of height $ 0 rooted on thecycle vertices. The cycles capture thesteady state behavior of the system andare sometimes called attractors, while abranch in a tree captures the initialtransient behavior. One can ask severalimportant questions regarding the dy-namical parameters of the system; thenumber of cycles, length of the cycles,height of the trees, branching degree ofeach node, etc. For an arbitrary CAsuch questions are very difficult to an-swer. For CA with a periodic boundarycondition, some results for reversibilityand maximal cycle length are presentedin Harao and Noguchi [1978]; see Leeand Kawahara [1996] for recursive for-mulas describing STD of finite CA.However, a complete characterization isnot known and generalization to higherdimensions is difficult.

4.6.1 Linear CA. For finite linearCA, much more information can be ob-

tained using algebraic methods. TheSTD in this case shows a more uniformbehavior [Martin et al. 1984]; the treesrooted on any cycle vertex are isomor-phic to the tree rooted on the null con-figuration, the indegrees of all the nodesare equal, and equal to the dimension ofthe kernel of the linear map, etc. For awealth of results on the STD of 1-dperiodic boundary CA, see Martin[1984]. Additional results can be foundin Guan and He [1986]. For 2-d CA,Kawahara et al. [1995] investigatewhen the configuration reachable in onetime step from the all ones configura-tions lies on a cycle. The dimension ofkernel of 2-d linear CA were studied byseveral authors [Barua and Ramakrish-nan 1996; Sutner 1988b; 1990b; Sarkar1996], and is related to the s-gamementioned before. For multidimensionalCA, it is difficult to obtain a character-ization of the dimension of the kernel,but a characterization of reversibility ispresented in Sarkar and Barua [1998a].

An important problem in the alge-braic analysis of linear CA is the repre-sentation of the linear global map. Mar-tin et al. [1984] use dipolynomials torepresent the configuration of a periodicboundary CA. The next configuration isobtained by multiplying the presentconfiguration with a fixed polynomial(which represents the local rule) moduloX N21, for an N cell CA. The algebra ofdipolynomials is then used in the alge-braic analysis of the map. The extensionof this method to multidimensional CAis possible, but requires working withmultivariate dipolynomials, which isdifficult (see Martin et al. [1984] fordetails). However, the technique of di-polynomials cannot be used directly forthe null boundary condition. Anotherway to use dipolynomials (or polynomi-als) to handle null boundary conditionsarises from a nice technique introducedin Martin et al. [1984], whereby anN-cell null boundary 1-d CA can be em-bedded in a ~2N 1 2!-cell periodicboundary 1-d CA. Kawahara et al.[1995] extended this approach to study

Figure 4. A 4-cell null boundaryCA.

Brief History of Cellular Automata • 101

ACM Computing Surveys, Vol. 32, No. 1, March 2000

2-d null boundary CA. However, thepolynomial method fails for hybrid CA.A different approach to the problem,and one that is extensively used inVLSI applications, is to represent theglobal rule of a CA by a matrix. For anuniform periodic boundary 1-d CA, thematrix is circulant, and for nearestneighborhood null boundary 1-d CA, thematrix is tridiagonal. The characteristicand minimal polynomial for this matrixencodes all information about the STDof the CA; for details, see Barua andRamakrishnan [1996] and Sutner[1996]. A generalization to multidimen-sional CA results in the linear operatorbeing represented by a sum of Kro-necker products of certain special matri-ces [Sarkar and Barua 1998a]. Anotherapproach to multidimensional linear CAcan be found in Le Bruyn and Van denBergh [1991], where each cell state isconsidered a vector.

All of the above discussion is for CAon grids. However, linear CA on arbi-trary graphs was studied by Sutner[1989b; 1988a]. In Sutner [1989b], it isshown that the all-ones configuration isnot a Garden of Eden for a linear binaryCA on any finite graph. For a CA on afinite undirected graph with additioncarried out in some finite Abelianmonoid, the predecessor existence prob-lem is studied in Sutner [1988a]. It isshown that the problem is polynomialtime solvable if the underlying monoidis a group and is NP-complete for anarbitrary monoid. Further, a linear timealgorithm is presented to decide revers-ibility over a special class of graphs.

A more abstract treatment of linearCA, where the cell space is an Abeliangroup and the state space is a finitecommutative ring, can be found in Asoand Honda [1985]. An interesting de-composition of a CA with state spaceZm, into a set of CA with state spacepower of a prime which divides m isalso presented in Aso and Honda [1985].In yet another approach to the study oflinear CA, the generating function forthe temporal sequence of a cell is stud-

ied and is shown to be an algebraicseries [Litow and Dumas 1993]. Addi-tional results on linear CA can be foundin the work of Jen [1988]; for fractalproperties of infinite linear CA, see Sec-tion 4.

4.6.2 VLSI Applications. One impor-tant area of application for finite CA isin VLSI design; see Chaudhuri et al.[1997] for details of applications of addi-tive cellular automata to VLSI. The lo-cal communication structure of CA andthe homogeneous nature of each cell areprovided as strong arguments in favorof using CA for VLSI. In its use as aVLSI structure, it is often offered as areplacement for the Linear FeedbackShift Register (LFSR). Perhaps themost successful area of applying VLSIfor CA is generation of pseudorandomsequences, and their use in built-in self-test (BIST). The successive configura-tions of a CA are taken as a randomsequence. Other areas of VLSI whereCA is used are in error-correcting codes,private key cryptosystem, design of as-sociative memory, aliasing, and testingthe finite state machine.

In the VLSI context, the 1-d binaryCA is most common, though use of a 2-dstructure has been reported. Since non-linear CA cannot be analyzed satisfacto-rily, they are not used in applications.Most applications are based on CAwhere the global map is a linear oraffine map. Another important featureof CA used in VLSI applications is thenull boundary condition, since periodicboundary conditions require “long dis-tance” communication between the endcells. Also, the CA structure is usually ahybrid one, where each cell has its ownlocal rule. For theoretical questions re-garding hybrid 1-d CA, see Bardell[1990]; Nandi and Chaudhuri [1996];Tezuka and Fushimi [1994]; Serra andSlater [1990]; and Sarkar and Barua[1998b]. An important problem in VLSIapplications is to design a null bound-ary 90/150 CA given an irreducible orprimitive polynomial, which is the char-acteristic polynomial for the CA. The

102 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

problem was first mentioned in Bardell[1990], and a solution appears in Serraand Slater [1990] using a version of theLanczos tridiagonalization algorithmover GF~2!. However, a much simplerand elegant algorithm appears in Te-zuka and Fushimi [1994]. For periodicboundary CA, the characteristic polyno-mial can always be factored. This issuggested in Bardell [1990] and tackledin Nandi and Chaudhuri [1996]. SeveralCA-based cryptographic primitives suchas stream ciphers, private key crypto-systems, public key cryptosystems, andhash functions have been proposed; seeNiemi [1997] for details.

5. CONCLUSION

CAs have been studied from several dif-ferent angles other than the ones men-tioned here (they are important, but arenot included here mainly because theyare either new or have an extensiveliterature requiring a separate survey).A (perhaps incomplete) list of these top-ics includes modeling in physics [Wol-fram 1986] (see also Physica D vols. 10(1984) and 45 (1990)); asynchronous CA[Pighizzini 1994]; cellular neural net-works [Chua and Yang 1988]; quantumCA [Richter and Werner 1996; Watrous1996]; relation to polyomino tilings[Aigrain and Beauquier 1995]; and theinteresting work done at the Santa FeInstitute on evolving a CA with geneticalgorithms [Mitchell et al. 1994].

ACKNOWLEDGMENTS

The author is greatly indebted to RanaBarua for reading the manuscript and,more importantly, for all the discus-sions on CA that made this work possi-ble. Comments and suggestions fromanonymous referees helped in improv-ing the presentation and treatment ofseveral topics.

REFERENCES

ADAMI, C. 1994. On modeling life. Artif. Life1, 4 (Summer 1994), 429–438.

AIGRAIN, P. AND BEAUQUIER, D. 1995. Polyominotilings, cellular automata and codicity.Theor. Comput. Sci. 147, 1-2 (Aug. 7, 1995),165–180.

ALADYEV, V. 1974. Survey of research in thetheory of homogeneous structures and theirapplications. Math. Biosci. 15, 121–154.

AMOROSO, S. AND COOPER, G. 1971. Tessellationstructures for reproduction of arbitrary pat-terns. J. Comput. Syst. Sci. 5, 455–464.

AMOROSO, S. AND PATT, Y. 1972. Decision proce-dures for surjectivity and injectivity of paral-lel maps for tessellation structures. J. Com-put. Syst. Sci. 6, 448–464.

ARBIB, M. 1966. Simple self-reproducing uni-versal automata. Inf. Control 9, 177–189.

ASO, H. AND HONDA, N. 1985. Dynamical char-acteristics of linear cellular automata. J.Comput. Syst. Sci. 30, 291–317.

BANKS, E. 1970. Cellular automata. AI Memo198. MIT Artificial Intelligence Laboratory,Cambridge, MA.

BARDELL, P. 1990. Analysis of cellular automataused as pseudorandom pattern generators.In Proceedings of the on IEEE InternationalTest Conference, IEEE Press, Piscataway, NJ,762–768.

BARUA, R. AND RAMAKRISHNAN, S. 1996. s -Game,s1-game and two-dimensional additive cellu-lar automata. Theor. Comput. Sci. 154, 2,349–366.

BLANCHARD, F., KURKA, P., AND MAASS, A. 1997.Topological and measure-theoretic propertiesof one-dimensional cellular automata.Physica D 103, 1-4, 86–99.

BRAGA, G., CATTANEO, G., FLOCCHINI, P., AND VO-GLIOTTI, C. Q. 1995. Pattern growth in ele-mentary cellular automata. Theor. Comput.Sci. 145, 1-2 (July 10, 1995), 1–26.

BURKS, A., Ed. 1970. Essays on Cellular Au-tomata. University of Illinois Press, Cham-paign, IL.

BUTLER, J. T. 1974. A note on cellular automatasimulations. Inf. Control 3, 286–295.

CHANG, J. H., IBARRA, O. H., AND VERGIS, A. 1988.On the power of one-way communication. J.ACM 35, 3 (July 1988), 697–726.

CHAUDHURI, P. E. AL. 1997. Additive CellularAutomata Theory and Applications. Vol.1. IEEE Press advances in circuits and sys-tems series. IEEE Press, Piscataway, NJ.

CHOFFRUT, C AND CULIK, K 1984. On real-timecellular automata and trellis automata. ActaInf. 21, 4 (Nov. 1984), 393–407.

CHUA, L. AND YANG, L. 1988. Cellular neuralnetworks: Theory and applications. IEEETrans. Circ. Syst., 1257–1290.

CODD, E. 1968. Cellular Automata. AcademicPress, Inc., New York, NY.

COLE, S. 1969. Real-time computation by n-di-mensional iterative arrays of finite state ma-chine. IEEE Trans. Comput. 18, 349–365.

Brief History of Cellular Automata • 103

ACM Computing Surveys, Vol. 32, No. 1, March 2000

CONWAY, J., GUY, R., AND BERLEKAMP, E. 1992.Winning Ways: For Your Mathematical Plays,vol. 2.

CULIK II, K. 1987. On invertible cellular au-tomata. Complex Syst. 1, 1035–1044.

CULIK II, K. 1989. Variations of the firingsquad problem and applications. Inf. Pro-cess. Lett. 30, 3 (Feb. 1989), 153–157.

CULIK II, K. AND DUBE, S. 1991. An efficientsolution of the firing mob problem. Theor.Comput. Sci. 91, 1 (Dec. 9, 1991), 57–69.

CULIK II, K, GRUSKA, J, AND SALOMAA, A 1986.Systolic trellis automata: Stability, decidabil-ity and complexity. Inf. Control 71, 3 (Dec.1986), 218–230.

CULIK, K., HURD, L. P., AND YU, S. 1990.Computation theoretic aspects of cellular au-tomata. Physica D 45, 1-3 (Sep. 1990), 357–378.

CULIK, K., PACHL, J., AND YU, S. 1989. On thelimit sets of cellular automata. SIAM J.Comput. 18, 4 (Aug. 1989), 831–842.

CULIK II, K. AND YU, S. 1988. Undecidability ofCA classification schemes. Complex Syst. 2,2 (Apr., 1988), 177–190.

CULIK, K. AND YU, S. 1991. Cellular automata,vv-regular sets, and sofic systems. DiscreteAppl. Math. 32, 2 (July 1991), 85–101.

DUBACQ, J. 1995. How to simulate Turing ma-chines by invertible one-dimensional cellularautomata. Int. J. Foundations Comput. Sci.6, 4, 395–402.

DURAND, B. 1994. Inversion of 2D cellular au-tomata: some complexity results. Theor.Comput. Sci. 134, 2 (Nov. 21, 1994), 387–401.

DURAND, B. 1995. A random NP-complete prob-lem for inversion of 2D cellular automata.Theor. Comput. Sci. 148, 1 (Aug. 21, 1995),19–32.

DYER, C. 1980. One-way bounded cellular au-tomata. Inf. Control 44, 261–281.

FINELLI, M., MANZINI, G., AND MARGARA, L. 1998.Lyapunov exponents versus expansivity andsensitivity in cellular automata. J. Complex-ity 14, 2, 210–233.

GÁCS, P. 1986. Reliable computation with cellu-lar automata. J. Comput. Syst. Sci. 32, 1(Feb. 1986), 15–78.

GACS, P. 1997. Reliable cellular automata withself-organization. In Proceedings of the Con-ference on Foundations of Computer Science,

GARDNER, M. 1970. The fantastic combinationsof John Conway’s new solitaire game“Life”. Sci. Am. 223, 120–123.

GARDNER, M. 1971. On cellular automata, self-reproduction, the Garden of Eden and thegame of “Life”. Sci. Am. 224, 112–117.

GARZON, M. 1995. Models of Massive Parallel-ism: Analysis of Cellular Automata and Neu-ral Networks. EATCS monographs on theo-retical computer science. Springer-Verlag,Berlin, Germany.

GOLZE, U. 1976. Differences between 1- and2-dimensional cell spaces. In Automata,

Languages, Development. North-HollandPublishing Co., Amsterdam, The Netherlands,369–384.

GREEN, F. 1987. NP-complete problems in cel-lular automata. Complex Syst. 1, 453–474.

GUAN, P. AND HE, Y. 1986. Exact results fordeterministic cellular automata with additiverules. J. Stat. Phys. 43, 463–478.

HAMACHER, V. 1971. Machine complexity ver-sus interconnection complexity in iterative ar-rays. IEEE Trans. Comput. C-20 (Apr.),321–323.

HARAO, M. AND NOGUCHI, S. 1975. Fault toler-ant cellular automata. J. Comput. Syst. Sci.11, 171–185.

HARAO, M. AND NOGUCHI, S. 1978. On some dy-namical properties of finite cellular automata.IEEE Trans. Comput. 27, 1.

HEDLUND, G. 1969. Endomorphisms and auto-morphisms of the shift dynamical systems.Math. Syst. Theory 4, 3, 320–375.

HERMAN, G. 1974. Synchronization of growingcellular arrays. Inf. Control 25, 2, 103–122.

HOLLAND, J. 1976. Studies of the spontaneousemergence of self-replicating systems usingcellular automata and formal grammers. InAutomata, Languages, Development. North-Holland Publishing Co., Amsterdam, TheNetherlands, 385–404.

HURD, L. 1987. Formal language characteriza-tions of cellular automata limit sets. Com-plex Syst. 1, 69–80.

HURD, L., KARI, J., AND CULIK II, K. 1992. Thetopological entropy of cellular automata isuncomputable. Ergodic Theor. Dynamic.Syst. 12, 255–265.

IBARRA, O. H. AND JIANG, T. 1987. On one-waycellular arrays. SIAM J. Comput. 16, 6 (Dec.1, 1987), 1135–1154.

IBARRA, O. AND KIM, S. 1984. Characterizationsand computational complexity of systolic trel-lis automata. Theor. Comput. Sci. 29, 123–153.

IBARRA, O. H., PALIS, M. A., AND KIM, S. M. 1985.Fast parallel language recognition by cellularautomata. Theor. Comput. Sci. 41, 2,3 (Mar.1985), 231–246.

IBARRA, O., PALIS, M., AND KIM, S. 1985. Someresults concerning linear iterative (systolic)arrays. J. Parallel Distrib. Comput. 2, 182–218.

IKEGAMI, T. AND HASHIMOTO, T. 1995. Activemutation in self-reproducing networks of ma-chines and tapes. Artif. Life 2, 3, 305–318.

ITO, M., OSATO, N., AND NASU, M. 1983. Linearcellular automata over Zm. J. Comput. Syst.Sci. 27, 125–140.

JEN, M. 1988. Linear cellular automata and re-curring sequences in finite fields. Commun.Math. Phys. 119, 13–28.

JUMP, J. AND KIRTANE, J. 1974. On the intercon-nection structure of cellular networks. Inf.Control 24, 74–91.

104 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

KARI, J. 1990. Reversibility of 2D cellular au-tomata is undecidable. In Cellular Autom-ata: Theory and Experiment, H. Gutowitz, Ed.MIT Press, Cambridge, MA, 379–385.

KARI, J. 1992. The nilpotency problem of one-dimensional cellular automata. SIAM J.Comput. 21, 3 (June 1992), 571–586.

KARI, J. 1994. Reversibility and surjectivityproblems of cellular automata. J. Comput.Syst. Sci. 48, 1 (Feb. 1994), 149–182.

KARI, L., ROZENBERG, G., AND SALOMAA, A. 1997.L systems. In Handbook of Formal Lan-guages, vol. 1: Word, Language, Grammar, G.Rozenberg and A. Salomaa, Eds. Springer-Verlag, New York, NY, 253–328.

KAWAHARA, Y. ET AL. 1995. Period lengths ofcellular automata on square lattices with rule90. J. Math. Phys. 36, 3, 1435–1456.

KNUTH, D. E. 1997. The Art of Computer Pro-gramming, Volume 2: SeminumericalAlgorithms. 3rd ed. Addison-Wesley Long-man Publ. Co., Inc., Reading, MA.

KOSARAJU, S. R. 1975. Speed of recognition ofcontext-free languages by array automata.SIAM J. Comput. 4, 3 (Sept.), 331–340.

KUNG, S. Y. 1987. VLSI Array Processors.Prentice-Hall information and system sci-ences series. Prentice-Hall, Inc., Upper Sad-dle River, NJ.

KURKA, P. 1997. Languages, equicontinuity andattractors in cellular automata. ErgodicTheor. Dynamic. Syst. 17, 229–254.

LANGTON, C. 1984. Self-reproduction in cellularautomata. Physica D 10, 134–144.

LE BRUYN, L. AND VAN DEN BERGH, M. 1991.Algebraic properties of linear cellular automa-ta. Linear Alg. Appl. 157, 217–234.

LEE, H. AND KAWAHARA, Y. 1996. Transition di-agrams of finite cellular automata. Bull. Inf.Cybern. 28, 1.

LINDENMAYER, A. 1968. Mathematical modelsfor cellular interactions in development. partsI and II. J. Theor. Biol. 18, 280–315.

LITOW, B. AND DUMAS, PH. 1993. Additive cellu-lar automata and algebraic series. Theor.Comput. Sci. 119, 2 (Oct. 25, 1993), 345–354.

MACHÌ, A. AND MIGNOSI, F. 1993. Garden ofEden configurations for cellular automata onCayley graphs of groups. SIAM J. DiscreteMath. 6, 1 (Feb. 1993), 44–56.

MAHAJAN, M. 1992. Studies in language classesdefined by different types of time-varying cel-lular automata. Ph.D. Dissertation.

MANZINI, G. AND MARGARA, L. 1999. Attractorsof linear cellular automata. J. Comput. Syst.Sci..

MANZINI, G. AND MARGARA, L. 1998. Invertiblelinear cellular automata over Zm : Algorith-mic and dynamical aspects. J. Comput. Syst.Sci. 56, 1, 60–67.

MARTIN, B. 1994. A universal cellular automatain quasi-linear time and its S-m-n form.Theor. Comput. Sci. 123, 2 (Jan. 31, 1994),199–237.

MARTIN, O., ODLYZKO, A., AND WOLFRAM, S. 1984.Algebraic properties of cellular automata.Commun. Math. Phys. 93, 219–258.

MARUOKA, A. AND KIMURA, M. 1974.Completeness problem of one-dimensional bi-nary scope-3 tessellation automata. J. Com-put. Syst. Sci. 9, 1, 31–47.

MARUOKA, A. AND KIMURA, M. 1977.Completeness problem of multi-dimensionaltessellation automata. Inf. Control 35, 1, 52–86.

MAZOYER, J. 1987. A six-state minimal time so-lution to the firing squad synchronizationproblem. Theor. Comput. Sci. 50, 2 (Sept.1987), 183–238.

MAZOYER, J. AND REIMEN, N. 1992. A linearspeed-up theorem for cellular automata.Theor. Comput. Sci. 101, 1 (July 13, 1992),59–98.

MICHELE, D., MANZINI, G., AND MARGARA, L.1988. On computing the entropy of cellularautomata. In Proceedings of the 13th Inter-national Colloquium on Automata, Languagesand Programming (Rennes, France, July), L.Kott, Ed. Elsevier Sci. Pub. B. V., Amster-dam, The Netherlands.

MITCHELL, M., CRUTCHFIELD, J. P., AND HRABER, P.T. 1994. Evolving cellular automata to per-form computations: mechanisms and impedi-ments. Physica D 75, 1-3 (Aug. 1, 1994),361–391.

MOORE, E., Ed. 1964. Sequential Machines. Se-lected Papers. Addison-Wesley PublishingCo., Inc., Redwood City, CA.

MOORE, E. AND LANGDON, G. 1968. A general-ized firing squad problem. Inf. Control 12,212–220.

MORITA, K. 1992. Computation-universality ofone-dimensional one-way reversible cellularautomata. Inf. Process. Lett. 42, 6 (July 24,1992), 325–329.

MORITA, K. 1995. Reversible simulation of one-dimensional irreversible cellular automata.Theor. Comput. Sci. 148, 1 (Aug. 21, 1995),157–163.

MYHILL, J. 1963. The converse of Moore’s Gar-den-of-Eden theorem. Proc. Am. Math. Soc.14, 685–686.

NANDI, S. AND CHAUDHURI, P. P. 1996. Analysisof periodic and intermediate boundary 90/150cellular automata. IEEE Trans. Comput. 45,1, 1–12.

NANDI, S., KAR, B., AND PAL CHAUDHARI, P. 1994.Theory and applications of cellular automatain cryptography. IEEE Trans. Comput. 43,12 (Dec. 1994).

NGUYEN, H. AND HAMACHER, V. 1974. Patternsynchronization in two-dimensional cellularspaces. Inf. Control 26, 12–23.

NIEMI, V. 1997. Cryptology: language-theoreticaspects. In Handbook of Formal Languages,vol. 2: Linear Modeling: Background and Ap-plication, G. Rozenberg and A. Salomaa, Eds.Springer-Verlag, New York, NY, 507–524.

Brief History of Cellular Automata • 105

ACM Computing Surveys, Vol. 32, No. 1, March 2000

NISHIO, H. AND KOBUCHI, Y. 1975. Fault toler-ant cellular spaces. J. Comput. Syst. Sci. 11,150–170.

OSTRAND, T. 1971. Pattern recognition in tes-sellation automata of arbitrary dimen-sions. J. Comput. Syst. Sci. 5, 623–628.

PACKARD, N. 1985. Two-dimensional cellularautomata. J. Stat. Phys. 30, 901–942.

PELLETIER, D. H. 1987. Merlin’s magicsquare. Am. Math. Monthly 94, 2 (Feb.1987), 143–150.

PESAVENTO, U. 1995. An implementation of vonNeumann’s self-reproducing machine. Artif.Life 2, 4, 337–354.

PIGHIZZINI, G. 1994. Asynchronous automataversus asynchronous cellular automata.Theor. Comput. Sci. 132, 1-2 (Sept. 26, 1994),179–207.

PRUSINKIEWICZ, P. AND LINDENMAYER, A. 1990.The Algorithmic Beauty of Plants. Springer-Verlag, New York, NY.

RICHARDSON, D. 1972. Tessellations with localtransformations. J. Comput. Syst. Sci. 6,373–388.

RICHTER, S. AND WERNER, R. 1996. Ergodicity ofquantum cellular automata. J. Stat. Phys.82, 963–998.

RÓKA, Z. 1994. One-way cellular automata onCayley graphs. Theor. Comput. Sci. 132, 1-2(Sept. 26, 1994), 259–290.

ROKA, Z. 1995. The firing squad synchroniza-tion problem on Cayley graphs. In Proceed-ings of the Conference on MFCS, LectureNotes in Computer Science Springer-Verlag,New York, 402–411.

SARKAR, P. 1996. s1-automata on square grids.Complex Syst. 10, 121–141.

SARKAR, P. AND BARUA, R. 1998a. Multi-dimensional s-automata, p-polynomials andgeneralised S-matrices. Theor. Comput. Sci.197, 1-2, 111–138.

SARKAR, P. AND BARUA, R. 1998b. The set ofreversible 90/150 cellular automata is regular.Discrete Appl. Math. 84, 1-3, 199–213.

SATO, T. 1994. Group structured linear cellularautomata over Zm. J. Comput. Syst. Sci. 49,1 (Aug. 1994), 18–23.

SEIFERAS, J. 1982. Observations on nondeter-ministic multidimensional iterative arrays.In Proceedings of the ACM Symposium on theTheory of Computing, ACM Press, NewYork, NY, 276–289.

SERRA, M. ET AL. 1990. The analysis of one-dimensional cellular automata and theiraliasing properties. IEEE Trans. CAD/ICAS9, 7, 767–778.

SERRA, M. AND SLATER, T. 1990. A Lanczos algo-rithm in a finite field and its applications. J.Comb. Math. Comb. Comp..

SHERESHEVSKY, M. 1992. Lyapunov exponentsfor one-dimensional cellular automata. J.Nonlinear Sci. 2, 1–8.

SHINAHR, I. 1974. Two- and three-dimensionalfiring-squad synchronization problems. Inf.Control 24, 163–180.

SMITH III, A. 1971. Cellular automata complex-ity trade-offs. Inf. Control 18, 466–482.

SMITH III, A. 1972. Real-time language recogni-tion by one-dimensional cellular autom-ata. J. Comput. Syst. Sci. 6, 233–253.

SMITH III, A. 1976. Introduction to and surveyof polyautomata theory. In Automata, Lan-guages, Development. North-Holland Pub-lishing Co., Amsterdam, The Netherlands.

SOMMERHALDER, R. AND WESTRHENEN, S. V. 1983.Parallel language recognition in constanttime by cellular automata. Acta Inf. 19, 397–407.

SUTNER, K. 1988a. Additive automata on graphs.Complex Syst. 2, 6 (Dec. 1988), 649–661.

SUTNER, K. 1988b. On s-automata. ComplexSyst. 2, 1 (Feb, 1988), 1–28.

SUTNER, K. 1989a. The computation complexityof cellular automata. In Fundamentals ofComputation Theory Lecture Notes in Com-puter Science. Springer-Verlag, New York,451–459.

SUTNER, K. 1989b. Linear cellular automataand the Garden-of-Eden. Math. Intell. 11, 2,49–53.

SUTNER, K. 1989c. A note on the Culik-Yuclasses. Complex Syst. 3, 1, 107–115.

SUTNER, K. 1990a. Classifying circular cellularautomata. Physica D 45, 1-3 (Sep. 1990),386–395.

SUTNER, K. 1990b. The s-game and cellular au-tomata. Am. Math. Monthly 97, 1 (Jan.1990), 24–34.

SUTNER, K. 1991. De Bruijn graphs and linearcellular automata. Complex Syst. 5, 19–30.

SUTNER, K. 1995. On the computational com-plexity of finite cellular automata. J. Com-put. Syst. Sci. 50, 1 (Feb. 1995), 87–97.

SUTNER, K. 1999. s-automata and Chebyshev-polynomials. Theor. Comput. Sci..

TAKAHASHI, S. 1992. Self-similarity of linearcellular automata. J. Comput. Syst. Sci. 44,1 (Feb. 1992), 114–140.

TERRIER, V. 1996. Language not recognizable inreal time by one-way cellular automata.Theor. Comput. Sci. 156, 1-2, 281–287.

TEZUKA, S. AND FUSHIMI, M. 1994. A method ofdesigning cellular automata as pseudorandomnumber generators for built-in self-test forVLSI. In Finite Fields: Theory, Applications,and Algorithms Contemporary Mathemat-ics: Cont. Math.. AMS, Providence, RI, 363–367.

TOFFOLI, T. 1977. Computation and construc-tion universality of reversible cellular autom-ata. J. Comput. Syst. Sci. 15, 213–231.

TOFFOLI, T. AND MARGOLUS, N. 1990. Invertiblecellular automata: a review. Physica D 45,1-3 (Sep. 1990), 229–253.

106 • P. Sarkar

ACM Computing Surveys, Vol. 32, No. 1, March 2000

VARSHAVSKY, V., MARAKHOVSKY, V., AND PECHAN-SKY, V. 1969. Synchronization of interactingautomata. Math. Syst. Theory 4, 3, 212–230.

VITANYI, P. 1973. Sexually reproducing cellularautomata. Math. Biosci. 18, 23–54.

VOLLMAR, T. 1977. Cellular spaces and parallelalgorithms, an introductory survey. In Par-allel Computation-Parallel Mathematics, M.Feilmeier, Ed. North-Holland PublishingCo., Amsterdam, The Netherlands, 49–58.

VON NEUMANN, J. 1963a. The general and logi-cal theory of automata. In J. von NeumannCollected Works, A. Taub, Ed.

VON NEUMANN, J. 1963b. Probabilistic logicsand the synthesis of reliable organisms fromunreliable components. In J. von NeumannCollected Works, A. Taub, Ed.

VON NEUMANN, J. AND BURKS, A. W., Eds, 1966.Theory of Self-Reproducing Automata. Uni-versity of Illinois Press, Champaign, IL.

WAKSMAN, A. 1966. An optimum solution to thefiring squad synchronization problem. Inf.Control 9, 67–78.

WATROUS, J. 1996. On one-dimensional quan-tum cellular automata. In Proceedings of the37th IEEE Symposium on Foundations ofComputer Science (FOCS ’96), IEEE Com-puter Society Press, Los Alamitos, CA, 528–537.

WILLSON, S. 1978. On convergence of configura-tions. Discrete Math. 23, 279–300.

WILLSON, S. 1981. Growth patterns of orderedcellular automata. J. Comput. Syst. Sci. 22,29–41.

WILLSON, S. 1984a. Cellular automata can gen-erate fractals. Discrete Appl. Math. 8, 91–99.

WILLSON, S. 1984b. Growth rates and fractionaldimensions in cellular automata. Physica D10, 69–74.

WOLFRAM, S. 1983. Statistical mechanics of cel-lular automata. Rev. Modern Phys. 55, 601–644.

WOLFRAM, S. 1984a. Computation theory of cel-lular automata. Commun. Math. Phys. 96,15–57.

WOLFRAM, S. 1984b. Universality and complex-ity in cellular automata. Physica D 10, 1–35.

WOLFRAM, S. 1986. Theory and Applications ofCellular Automata: Including Selected Papers1983-1986. World Scientific Publishing Co.,Inc., River Edge, NJ.

YAKU, T. 1973. The constructibility of a config-uration in a cellular automata. J. Comput.Syst. Sci. 7, 4, 481–496.

YAMADA, H. AND AMOROSO, S. 1969. Tessellationautomata. Inf. Control 14, 299–317.

YAMADA, H. AND AMOROSO, S. 1970. A complete-ness problem for pattern generation in tessel-lation automata. J. Comput. Syst. Sci. 4,137–176.

YAMADA, H. AND AMOROSO, S. 1971. Structuraland behavioural equivalences of tessellationautomata. Inf. Control 18, 1–31.

Received: June 1998; revised: January 1999; accepted: February 1999

Brief History of Cellular Automata • 107

ACM Computing Surveys, Vol. 32, No. 1, March 2000