This is the first ever doctoral thesis in the field of DNA computation. The field has its roots\ud in the late 1950s, when the Nobel laureate Richard Feynman first introduced the concept of\ud computing at a molecular level. Feynman's visionary idea was only realised in 1994, when\ud Leonard Adleman performed the first ever truly molecular-level computation using DNA\ud combined with the tools and techniques of molecular biology. Since Adleman reported the\ud results of his seminal experiment, there has been a flurry\ud of interest in the idea of using DNA\ud to perform computations. The potential benefits of using this particular molecule are enormous:\ud by harnessing the massive inherent parallelism of performing concurrent operations\ud on trillions of strands, we may one day be able to compress the power of today's supercomputer\ud into a single test tube. However, if we compare the development of DNA-based\ud computers to that of their silicon counterparts, it is clear that molecular computers are still\ud in their infancy. Current work in this area is concerned mainly with abstract models of\ud computation and simple proof-of-principle experiments. The goal of this thesis is to present\ud our contribution to the field, placing it in the context of the existing body of work. Our\ud new results concern a general model of DNA computation, an error-resistant implementation\ud of the model, experimental investigation of the implementation and an assessment of\ud the complexity and viability of DNA computations. We begin by recounting the historical\ud background to the search for the structure of DNA. By providing a detailed description of\ud this molecule and the operations we may perform on it, we lay down the foundations for subsequent\ud chapters. We then describe the basic models of DNA computation that have been\ud proposed to date. In particular, we describe our parallel filtering model, which is the first\ud to provide a general framework for the elegant expression of algorithms for NP-complete\ud problems. The implementation of such abstract models is crucial to their success. Previous\ud experiments that have been carried out suffer from their reliance on various error-prone laboratory\ud techniques. We show for the first time how one particular operation, hybridisation\ud extraction, may be replaced by an error-resistant enzymatic separation technique. We also\ud describe a novel solution read-out procedure that utilizes cloning, and is sufficiently general\ud to allow it to be used in any experimental implementation. The results of preliminary\ud tests\ud of these techniques are then reported. Several important conclusions are to be drawn from these investigations, and we report these in the hope that they will provide useful experimental\ud guidance in the future. The final contribution of this thesis is a rigorous consideration\ud of the complexity and viability of DNA computations. We argue that existing analyses of\ud models of DNA computation are flawed and unrealistic. In order to obtain more realistic\ud measures of the time and space complexity of DNA computations we describe a new strong\ud model, and reassess previously described algorithms within it. We review the search for\ud "killer applications": applications of DNA computing that will establish the superiority\ud of\ud this paradigm within a certain domain. We conclude the thesis with a description of several\ud open problems in the field of DNA computation
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.