COMPUTING with CELLS and ATOMS an Introduction to Quantum, DNA and Membrane Computing AUTHORS ADDRESSES
Total Page:16
File Type:pdf, Size:1020Kb
Cristian S. CALUDE, Gheorghe PAUN˘ COMPUTING WITH CELLS AND ATOMS An Introduction to Quantum, DNA and Membrane Computing AUTHORS ADDRESSES: Cristian S. Calude Department of Computer Science School of Mathematical and Information Sciences The University of Auckland Private Bag 92019, Auckland, New Zealand E-mail: [email protected] Gheorghe P˘aun Institute of Mathematics of the Romanian Academy PO Box 1-764, 70700 Bucure¸sti, Romania E-mail: [email protected] Cristian S. Calude, Gheorghe P˘aun COMPUTING WITH CELLS AND ATOMS An Introduction to Quantum, DNA and Membrane Computing Taylor and Francis London, New York, 2000 Copyright: Taylor and Francis 2000 Contents Preface vii 1 Prerequisites 1 1.1 Preliminary Notions and Notations . 1 1.2 Operations on Strings and Languages . 2 1.3 A General Computing Framework . 3 1.4 Chomsky Grammars . 8 1.5 Lindenmayer Systems . 10 1.6 Automata and Transducers . 11 1.7 Characterizations of Computably Enumerable Languages . 14 1.8 Universal Turing Machines and Type-0 Grammars . 16 1.9 Complexity . 19 1.10 Bibliographical Notes . 21 2 DNA Computing 23 2.1 The Structure of DNA . 23 2.2 Complementarity Induces Computational Completeness . 26 2.3 Operations on DNA Molecules . 30 2.4 Adleman’s Experiment . 36 2.5 Other DNA Solutions to NP Complete Problems . 43 2.6 A Two-Dimensional Generalization . 50 2.7 Computing by Carving . 55 2.8 Sticker Systems . 64 2.9 Extended H Systems . 77 2.10 Controlled H Systems . 86 2.11 Distributed H Systems . 95 2.12 Bibliographical Notes . 106 3Membrane Computing 109 3.1 P Systems with Labelled Membranes . 110 3.2 Examples . 117 3.3 The Power of P Systems . 121 3.4 Decidability Results . 127 v vi Contents 3.5 Rewriting P Systems . 131 3.6 P Systems with Polarized Membranes . 135 3.7 Normal Forms . 144 3.8 P Systems on Asymmetric Graphs . 154 3.9 P Systems with Active Membranes . 156 3.10 Splicing P Systems . 168 3.11 Variants, Problems, Conjectures . 176 3.12 Bibliographical Notes . 178 4 Quantum Computing 179 4.1 The Church–Turing Thesis . 179 4.2 Computation is Physical . 181 4.3 Reversible Computation . 183 4.4 The Copy Computer . 186 4.5 Maxwell’s Demon . 187 4.6 Quantum World . 189 4.7 Bits and Qubits . 190 4.8 Quantum Calculus . 191 4.9 Qubit Evolution . 195 4.10 No Cloning Theorem . 203 4.11 Measurements . 204 4.12 Zeno Machines . 206 4.13 Inexhaustible Uncertainty . 209 4.14 Randomness . 213 4.15 The EPR Conundrum and Bell’s Theorem . 216 4.16 Quantum Logic . 223 4.17 Have Quantum Propositions Classical Meaning? . 226 4.18 Quantum Computers . 234 4.19 Quantum Algorithms . 241 4.20 Quantum Complexity . 263 4.21 Quantum Cryptography . 272 4.22 Information and Teleportation . 274 4.23 Computing the Uncomputable? . 279 4.24 Bibliographical Notes . 280 5 Final Remarks 283 Bibliography 285 Index 307 Preface Quand je vous aimer? Ma foi, je ne sais pas. Peut-ˆetre jamais, Peut-ˆetre demain! Carmen The computers as we know them today, based on silicon chips, are getting better and better, and are doing more and more for us; in practice, we can no longer live without our intelligent prostheses. Nonetheless, they still give rise to frustrations, and not just among academics. Though ever faster in speed and ever larger size, silicon-based computers are not yet able to cope with many tasks of practical interest. There are still too many problems that are effectively intractable because to “solve” them using “classical” machines re- quires a huge amount of computing time. It seems that progress in electronic hardware (and the corresponding software engineering) is not enough; for instance, the miniaturization is approaching the quantum boundary, where physical processes obey laws based on probabilities and non-determinism, something almost completely absent in the operation of “classical” comput- ers. So, new breakthrough is needed. The idea of such a breakthrough is not really new. It involves going “to the bottom”, where – Feynman assures us – “there is plenty of room”. So one possible way to proceed is to get closer to the innermost structure of matter, beyond micro,intonano, even into femto. This means computing directly with molecules and atoms, maybe even with their parts. From the physical point of view, this means quantum physics, an incred- ible successful, but controversial subject with a great history and a most promising future. One hope is for a quantum computer, a computer of a completely different type that can make use of the strange but wonderful phenomena that occur at the atomic and intra-atomic levels. However, there are problems: just think about the wave-particle duality of quanta, about the possibility of a particle existing in several places at the same time and of several particles being in the same place at the same time, about tele- portation, and so forth. There are a number of challenging difficulties from the computability point of view: for instance, that observation modifies the vii viii Preface observed system, which means that reading some information destroys that information, or that quantum interference of particles cannot be controlled using current technology. Fortunately, for billions of years nature itself has been “computing” with molecules and cells. When speaking about computability in nature, we think it is better to use quotation marks; we do not accept that nature computes except in a metaphorical sense. Bees know no geometry, rain drops solve no differential equation when falling. Only man sees hexagons in beehives and a potential field on the surface of a water droplet. However, less metaphorical and so more visible is the way nature has used (and is still using . ) DNA in evolution. Thus another hope for the future is to use DNA and other proteins, manipulated by tools already known to biochemistry and genetic engineering (for instance, enzymes, “one of the most intelligent gifts nature has made to us”, as it has been said), and to develop “wet computers”, with core chips consisting of bio-molecules. Both these ideas, Quantum Computing and DNA Computing, have been explored intensively in recent years. A third idea, explored only recently, is also biochemically inspired: Membrane Computing. This seeks to make use of the way nature “computes” at the cellular level, where an intricate processing of materials, energy, and information takes place in a membrane structure which determines the architecture of the “cell-computer” and ac- tively participate in the “computation”. The aim of this book is to introduce the reader to these fascinating areas, currently located towards the science-fiction edge of science: computing with cells and atoms. Although mathematically oriented (more precisely, mathematics of the kind involved in theoretical computer science), the book does not go into full formal detail (complete proofs, for instance). Our intention is to present basic notions and results from the three domains mentioned above, Quantum Computing, DNA Computing, and Membrane Computing, providing just a glimpse of each. Of course our selection is biased and partisan, favouring subjects which we have dealt with in our personal research, but a number of fundamental matters are included: Adleman’s experiment and its continua- tions, in the DNA area, and Shor’s algorithm, in the quantum area. Because our interest (and our competence) tends toward formal models of computability, we shall skip over much “practical” information to do with physics and biochemistry. The general strategy we adopt is to look to reality (whatever this means;1 passively, but safely, for us reality is what we can find in books and call such) in search of data supports (hence data structures) and operations on these data structures. With these ingredients we can define a process (in the form of a sequence of transitions among configurations de- scribing states of a system) which, provided that an input and an output can 1“We are both onlookers and actors in the great drama of existence”, according to N. Bohr. Preface ix be associated with it, is considered a computation. The complete machin- ery is individualized as a computing system. Although this is crucial from a practical point of view, we do not restrict ourselves to “realistic” systems, implementable today or in the immediate future. We look for plausible com- puters and, in the main, for models of them. Progress in technology, physical or biochemical, is so rapid (and unpredictable) that it is not efficient to limit consideration to knowledge and tools that are available today (or tomorrow). In a sense, we are replaying Turing’s game: just consider machines with infi- nite tapes and prove universality theorems about them; maybe, one day this will at least encourage some practitioners to build real devices that resemble these machines. In the areas of DNA and Membrane Computing, we are inspired by what happens in vivo and we try to approach as possible what can be done in vitro, but we work in info, in symbolic terms. In Quantum Computing we also look at possibilities of transcending Turing computability barrier. The constant test bed for the new computability devices we consider will be the usual hierarchies in computability theory, namely Turing and Chomsky classes, and complexity classes. More specifically, we are interested in attain- ing the power of Turing machines which (according to the Church–Turing thesis) have the most comprehensive level of algorithmic computability, if possible, in a constructive manner. Constructively simulating a Turing ma- chine by means of a device from a new class of computing machines provides us with universality for free: starting from a universal Turing machine we get a universal device in our new class.