- Research Article
90
- 10.1016/s0019-9958(71)90501-8
Cellular automata complexity trade-offs
- Jun 01, 1971
- Information and Control
- Alvy Ray Smith
Cellular automata complexity trade-offs
Since Richard Feynman introduced the notion of computation in 1982, various models of quantum computers have been proposed (R. Feynman, 1992). These models include Turing machines and circuits. We define another computational model, one dimensional cellular automata, and demonstrate that any Turing machine can be efficiently simulated by a one dimensional cellular automaton with constant slowdown. This can be accomplished by consideration of a restricted class of one dimensional cellular automata called one dimensional partitioned cellular automata. We also show that any one dimensional partitioned cellular automaton can be simulated by a Turing machine with linear slowdown, but the problem of efficiently simulating an arbitrary one dimensional cellular automaton with a Turing machine is left open. From this discussion, some interesting facts concerning these models are easily deduced.
Cellular automata complexity trade-offs
Cellular automata complexity trade-offs
Turing Universality of the Game of Life
This chapter describes a Turing machine built from patterns in the Conway’s Game of Life cellular automaton. It outlines the architecture of the construction, the structure of its parts and explains how the machine works. It also illustrates the principle choices made during the design0 [17]. Background information about Turing machines, minimal universal Turing machines (those that simulate any other Turing machine) and non-erasing Turing machines can be found in [20,7,15,14,18]. The importance of Turing machines is the existence of universal Turing machines. Thus a machine that can simulate any Turing machine can simulate a universal Turing machine. It has been proved that Turing machines can be simulated by many types of machine: cellular automata (as one can see in this and other chapters of this book), random access machines [4], register machines [1] and others. In particular Minsky [16] describes a register machine which can simulate a Turing machine. The registers have the unusual property of being able to store positive numbers of any size. Remarkably, a long time ago Conway described [1] a method of constructing a register of this form in the Game of Life. This is discussed later in this chapter.
Read moreComparing 1D and 2D Real Time on Cellular Automata
We study the influence of the dimension of cellular automata (CA) for real time language recognition of one-dimensional languages with parallel input. Specifically, we focus on the question of determining whether every language that can be recognized in real time on a 2-dimensional CA working on the Moore neighborhood can also be recognized in real time by a 1-dimensional CA working on the standard two-way neighborhood. We show that 2-dimensional CA in real time can perform a linear number of simulations of a 1-dimensional real time CA. If the two classes are equal then the number of simulated instances can be polynomial.
Read moreMatrix algebraic formulae concerning some exceptional rules of two-dimensional cellular automata
Matrix algebraic formulae concerning some exceptional rules of two-dimensional cellular automata
Mathematical Dynamical Systems and Computational Systems
The main thesis of this chapter is that a dynamical viewpoint allows us to better understand some important foundational issues of computation theory. Effective procedures are traditionally studied from two different but complementary points of view. The first approach is concerned with individuating those numeric functions that are effectively calculable. This approach reached its systematization with the theory of the recursive functions (Gödel, Church Kleene).This theory is not directly concerned with computing devices or computations. Rather, the effective calculability of a recursive function is guaranteed by the algorithmic nature of its definition. In contrast, the second approach focuses on a family of abstract mechanisms, which are then typically used to compute or recognize numeric functions, sets of numbers, or numbers. These devices can be divided into two broad categories: automata or machines (Turing and Post), and systems of rules for symbol manipulation (Post). The mechanisms that have been studied include: a. Automata or Machines 1. gate-nets and McCulloch-Pitts nets 2. finite automata (Mealy and Moore machines) 3. push-down automata 4. stack automata 5. Turing machines 6. register machines 7. wang machines 8. cellular automata b. Systems of Rules 9. monogenic production systems in general 10. monogenic Post canonical systems 11. monogenic Post normal systems 12. tag systems. I call any device studied by computation theory a computational system. Computation theory is traditionally interested in studying the relations between each type of computational system and the others, and in establishing what class of numeric functions each type can compute. Accordingly one proves two kinds of theorem: (1) that systems of a given type emulate systems of another type (examples: Turing machines emulate register machines and cellular automata; cellular automata emulate Turing machines, etc.), and (2) that a certain type of system is complete relative to the class of the (partial) recursive functions or, in other words, that this type of system can compute all and only the (partial) recursive functions (examples of complete systems: Turing machines, register machines, cellular automata, tag systems, etc.). All different types of computational systems have much in common. Nevertheless, it is not at all clear exactly which properties these mechanisms share.
Read moreA Random NP-complete problem for inversion of 2D cellular automata
A Random NP-complete problem for inversion of 2D cellular automata
Simulation of d′-Dimensional Cellular Automata on d-Dimensional Cellular Automata
In this paper a fast and space efficient method for simulating a d′-dimensional cellular automaton (CA) on a d-dimensional CA (d<d′) is introduced. For d′=2 and d=1 this method is optimal (under certain assumptions) with respect to time as well as space complexity. Let in this case t(n) be the time complexity and r(n) the side length of the smallest square enclosing all used cells. Then the simulation does not need more than O(r 2) cells and has a running time of d′ = d+1 a version with the time and space complexity of O(t 2) will be presented. Finally it will be shown, how it is possible to simulate a 2d-dimensional CA on a d-dimensional CA in a similarly efficient way.KeywordsTime ComplexityCellular AutomatonSpace ComplexityQuiescent StateComputation StepThese keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Read moreImplementing in vivo cellular automata using toggle switch and inter-bacteria communication mechanism
Artificial genetic circuits have been recently proposed to realize unprecedented biological systems which do not exist in nature by combining several genes. For example, recombinant Escherichia coli provides novel artificial functions such as blinking periodically or invading cancer cells. In protein engineering, new functional proteins have been created by site-directed mutagenesis methods. The main purpose of our research is to implement the Cellular Automata (CA) in vivo employing these methods. Computational capacity of CA is equivalent to the universal Turing Machine. CA are multi-cellular systems in which uniform cells are allocated on lattice grid. Each cell has a finite number of states. The state transition is determined by the current state and the states of neighbor cells. Three mechanisms are required to implement CA in bacteria: (1) Sending and receiving signals between cells, (2) Sustaining the state, (3) Sensing input signals and changing the state following the state transition rules. To encode signals for the mechanism (1), we use small molecules inducing transcription. For the mechanism (2), the toggle switch circuit was employed to represent a finite number of states using gene expression. If one gene does express and the other does not, the state is 1, and vice versa, 0. For the mechanism (3), the state transition functions were implemented as logic gates using transcriptional regulatory proteins which bind to specific signal molecules (chemicals). In this paper, we applied this method to in vivo implementation of one-dimensional CA and corroborated whether it behaves correctly. In principle, this method can be applied to any dimensional CA by employing more signal molecules Permission to make digital or hard copies of all or part of this work for to construct more complex logic gate. Furthermore, we succeeded to execute one step calculation of one-dimensional CA in vivo in a laboratory experiment.
Read moreSimulating 3D Cellular Automata with 2D Cellular Automata
The purpose of this article is to describe a way to simulate any 3-dimensional cellular automaton with a 2-dimensional cellular automaton. We will present the problems that arise when changing the dimension, propose solutions and discuss the main properties of the obtained simulation.
Read moreEvolution of One-Dimensional Cellular Automata by 1/f Noise
It is speculated that there is a relationship between 1/f noise and computational universality in cellular automata. We use genetic algorithms to search for one-dimensional and two-state, five-neighbor cellular automata which have 1/f-type spectrum. A power spectrum is calculated from the evolution starting from a random initial configuration. The fitness is estimated from the power spectrum in consideration of the similarity to 1/f-type spectrum. The result shows that the rule with the highest average fitness has a propagating structure like other computationally universal cellular automata, although computational universality of the rule has not been proved yet.
Read moreDigital Images Encryption in Frequency Domain Based on DCT and One Dimensional Cellular Automata
We are living in an age where security of digital information like digital images is becoming more important in many aspects and the tranmission of digital images is increasing over the internal and international computer networks. The protection of digital images from unauthorized access is the main purpose of this paper.This paper introduced an approach to encrypt a digital image in frequency domain through DCT (Discrete Cosine Transform) and one dimenssional cellular automata. It is based on encryption of some quantified DCT coefficient in high frequencies. We applied our proposed model on one hundred numbers of JPEG grayscale images of size 800 × 800. The experimental results have indicated the robustness of our algorithm.KeywordsDigital Images EncryptionFrequency Domain EncryptionCellular Automata
Read moreHigh Speed Computation of Three Dimensional Cellular Automata with FPGA
In cellular automata, a single update rule is applied simultaneously to each cell on the lattice. Therefore, many approaches with parallel and distributed systems have been researched. In this paper, we propose a computation method of three dimensional cellular automata for small FPGA systems with limited memory bandwidth. We implemented the method on a FPGA board (Celoxica RC1000 with one Virtex-E XCV2000E). The speed gain for a 3D Life Game and a 3D Forest Fires model with 128 × 128 × 128 lattice is 386 and 79 times compared with Celeron Processor 1.20GHz.
Read moreEfficient exhaustive listings of reversible one dimensional cellular automata
Efficient exhaustive listings of reversible one dimensional cellular automata
The Turing Machine
The Turing machine convincingly formalized the concepts of “algorithm,” “computation,” and “computable.” It convinced researchers by its simplicity, generality, mechanical operation, and resemblance to human activity when solving computational problems, and by Turing’s reasoning and analysis of “computable” functions and his argumentation that partial “computable” functions are exactly Turing computable functions. Turing considered several variants that are generalizations of the basic model of his machine. But he also proved that they add nothing to the computational power of the basic model. This strengthened the belief in the Turing machine as an appropriate model of computation. Turing machines can be encoded and consequently enumerated. This enabled the construction of the universal Turing machine that is capable of computing anything that can be computed by any other Turing machine. This seminal discovery laid the theoretical grounds for several all important practical consequences, the general-purpose computer and the operating system being the most notable. The Turing machine is a versatile model of computation: it can be used to compute values of a function, or to generate elements of a set, or to decide about the membership of an object in a set. The last led to the notions of decidable and semi-decidable sets that would later prove to be very important in solving general computational problems.
Read moreComputational models
In this chapter, we introduce the definitions of automata Turing machines. We present different flavors of Turing machines including deterministic, probabilistic, and multi-tape machines. We present several complexity classes, i.e. collections of problems that can be solved by a machine with similar resources, including the P and NP classes. We present the Church-Turing thesis, which states that if a problem can be solved by a physical machine, then it can also be solved by any deterministic Turing machine. In the last part of the chapter, we introduce quantum Turing machines and the quantum circuit model. We study the complexity class BQP. This is the class of problems that can be solved by a quantum computer with polynomial resources and a small error probability. Finally, we introduce QMA, the quantum version of the complexity class NP. We present the k-LOCAL problem, and we show that this problem is in QMA
Read more