DNA Computing.  Elements of complementary nature abound in nature. Complementary parts (in nature) can “self-assemble”. A universal principle?  This.

Slides:



Advertisements
Similar presentations
Applications of Quantum Computing in Bioinformatics
Advertisements

PCR Puzzle Class instructions. Start of lesson Have the following at front of the class: Template.
CSE 311 Foundations of Computing I
Ashish Gupta Ashish Gupta Unremarkable Problem, Remarkable Technique Operations in a DNA Computer DNA : A Unique Data Structure ! Pros.
DNA Computing COMP308 I believe things like DNA computing will eventually lead the way to a “molecular revolution,” which ultimately will have a very dramatic.
Enrique Blanco - imim.es © 2006 Enrique Blanco (2006) A few ideas about DNA computing.
Introducing Natural Algorithms. A passionate affair Nature and Numbers – Friends for ever! I started it !
DNA Computing Computation with the Code of Life Michael Ang Interactive Telecommunications Program New York University February 16,
13-2 Manipulating DNA.
Computability and Complexity 14-1 Computability and Complexity Andrei Bulatov Cook’s Theorem.
Montek Singh COMP Nov 15,  Two different technologies ◦ TODAY: DNA as biochemical computer  DNA molecules encode data  enzymes, probes.
Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Fall 2008.
New Molecular Based Methods of Diagnosis
A Space-Efficient Randomized DNA Algorithm for k-SAT Kevin Chen and Vijay Ramachandran Princeton University.
Presented By:- Anil Kumar MNW-882-2K11
Nucleic Acid Design Applications Polymerase Chain Reaction (PCR) Calculating Melting Temperature (Tm) PCR Primers Design.
What are the 4 nitrogenous bases? Which bases bond together? REMEMBER.
The polymerase chain reaction (PCR) rapidly
DNA: The Molecule of Heredity. If the DNA of one cell is stretched out, it makes a 7 ft. long string There are about 5 trillion cells in the human body.
DOG DNA  You will be assigned a partner.  You will need:  1 envelope with 32 gene strips  Tape  Construction paper  Markers  Trait Map (Moodle)
DNA is the carrier of genetic information in all living species The double-helix structure consists of two strands of DNA wound around each other -Each.
Physical Mapping of DNA Shanna Terry March 2, 2004.
SEMINAR ON BIOMOLECULAR COMPUTING
CSE 6406: Bioinformatics Algorithms. Course Outline
Nucleic Acid Structure Many thanks to Dave Bevan for providing some of the material for this lecture.
DNA Computing on a Chip Mitsunori Ogihara and Animesh Ray Nature, vol. 403, pp Cho, Dong-Yeon.
1 Computing with DNA L. Adelman, Scientific American, pp (Aug 1998) Note: This ppt file is based on a student presentation given in October, 1999.
DNA: The Molecule of Heredity. 15 Questions to be answered throughout this video Make sure you write the questions & answer the questions in the video.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
1 Unit 1: Automata Theory and Formal Languages Readings 1, 2.2, 2.3.
POLYMERASE CHAIN REACTION. DNA Structure DNA consists of two molecules that are arranged into a ladder-like structure called a Double Helix. A molecule.
Algorithms and Running Time Algorithm: Well defined and finite sequence of steps to solve a well defined problem. Eg.,, Sequence of steps to multiply two.
13-1 Changing the Living World
Chapter 11: DNA and Genes (Part 1). 1. Although the environment influences how an organism develops, the genetic information that is held in the molecules.
Is DNA Computing Viable for 3-SAT Problems? Dafa Li Theoretical Computer Science, vol. 290, no. 3, pp , January Cho, Dong-Yeon.
Professor Emeritus, Madras Christian College Adjunct Professor, Chennai Mathematical Institute Chennai, Tamil Nadu, India
1 The Halting Problem and Decidability How powerful is a TM? Any program in a high level language can be simulated by a TM. Any algorithmic procedure carried.
A technique to make a lot of DNA from only a little!
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
Fast parallel molecular solution to the Hitting-set problem Speaker Nung-Yue Shi.
What is restriction fragment analysis? Restriction fragment analysis is a process used to compare the DNA of two or more different organisms.
What is DNA Computing? Shin, Soo-Yong Artificial Intelligence Lab.
Computing with DNA Many thanks to Dave Bevan for providing some of the material for this lecture.
GENE SEQUENCING. INTRODUCTION CELL The cells contain the nucleus. The chromosomes are present within the nucleus.
Human Genomics. Writing in RED indicates the SQA outcomes. Writing in BLACK explains these outcomes in depth.
6.3 Advanced Molecular Biological Techniques 1. Polymerase chain reaction (PCR) 2. Restriction fragment length polymorphism (RFLP) 3. DNA sequencing.
DNA computing on a chip Mitsunori Ogihara and Animesh Ray Nature, 2000 발표자 : 임예니.
1 Biological Computing – DNA solution Presented by Wooyoung Kim 4/8/09 CSc 8530 Parallel Algorithms, Spring 2009 Dr. Sushil K. Prasad.
Expression of the Viral Genome in Host Cells (How do viruses express their genomes?)
Solution of Satisfiability Problem on a Gel-Based DNA computer Ji Yoon Park Dept. of Biochem Hanyang University.
Towards Autonomous Molecular Computers Towards Autonomous Molecular Computers Masami Hagiya, Proceedings of GP, Nakjung Choi
Introduction to PCR Polymerase Chain Reaction
The Church-Turing Thesis Chapter 18. Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve: ●
Forensic Science DNA Analysis 1. History of Biological Evidence in Forensics  DNA fingerprinting  Also known as DNA profiling  Used with a high degree.
DNA HISTORY, STRUCTURE, & REPLICATION. WHAT IS DNA? Deoxyribose Nucleic Acid Polymer made out of sugars (deoxyribose), phosphates, and nitrogen bases.
A PRESENTATION ON DNA COMPUTING Presented By SOMYA JAIN.
Introduction to PCR Polymerase Chain Reaction
Chapter 10 NP-Complete Problems.
Part 3 Gene Technology & Medicine
Genetic Engineering.
copying & sequencing DNA
Wet (DNA) computing 2001년 9월 20일 이지연
Chapter 13.2 Manipulating DNA.
Polymerase Chain Reaction & DNA Profiling
DNA Analysis Forensics Chapter 11.
Solution of Satisfiability Problem on a Gel-Based DNA computer
Molecular Computation by DNA Hairpin Formation
PCR Polymerase chain reaction (PCR)
DNA Solution of Hard Computational Problems
DNA Computing Herman G. Meyer III Sept. 28, 2004.
Presentation transcript:

DNA Computing

 Elements of complementary nature abound in nature. Complementary parts (in nature) can “self-assemble”. A universal principle?  This “complementary-attraction-principle” seems to pervade many aspects of life (both molecular and higher levels).  Elements of complementary nature spontaneously “stick” together.

Cells: “atoms” that make up living things

DNA: “strings” that encode the traits of living organisms

Complementary-attraction in DNA DNA bases and their “complements”: Adenine (A) Thymine (T) Guanine (G) Cytosine (C) If DNA molecules (in a single strand) meet their complements (in another single strand), then the two strands will anneal (stick/coil together to form a double-helix).

DNA computing: Basic operations  Synthesize Prepare large numbers of copies of any short single DNA strand.  Anneal Create a double strand from complementary single strands.  Extract “Pull out” those DNA sequences containing a given pattern of length l (from a test tube).  Detect Determine whether or not there are any DNA strands at all in a test tube.  Amplify Replicate all (or selectively, some) of the DNA strands in a test tube.

Hamiltonian Path Problem (HPP)

Welling_ton Auck_land Ton_Dune Dune_din Land_Christ Church_Auck Christ_Church Church_Dune Church_Welling land _Dune Adleman’s experiment Auckland WellingtonChrist Church Dunedin

CITYDNA name Complement AucklandACTTGCAGTGAACGTC Christ ChurchTCGGACTGAGCCTGAC WellingtonGGCTATGTCCGATACA DunedinCCGAGCAAGGCTCGTT FLIGHTDNA flight number Auckland-Christ Church CGTCAGCC Auckland-DunedinCGTCGGCT Christ Church- Wellington TGACCCGA Christ Church- Dunedin TGACGGCT Christ Church- Auckland TGACTGAA Wellington-DunedinCCGAGGCT Welling_ton Auck_land Ton_Dune Dune_din Land_Christ Church_Auck Christ_Church Church_Dune Church_Welling land _Dune Adleman’s experiment

Welling_ton Auck_land Ton_Dune Dune_din Land_Christ Church_Auck Christ_Church Church_Dune Church_Welling land _Dune Adleman’s experiment cityflight Auckland ChristChurch Wellington Dunedin landChrist ChurchWelling tonDune 8 x 3 = 24

Adleman’s experiment: Filtering process I Getting rid of DNA strands that don’t start with Auckland, end with Dunedin (using PCR amplification) landDune { land, Dune} landDune land Dune (Auck)land  Dune(din) Both the “types” can duplicate simultaneously. primers amplified landy { land, Dune} landyland not amplified xDune { land, Dune} xDune Dune not amplified

Adleman’s experiment: Filtering process II Getting rid of DNA strands that don’t have length = 24 (using gel electrophoresis) Shorter DNA strands move faster. DNA

Adleman’s experiment: Filtering process III Getting rid of DNA strands that don’t have that don’t have Christ_Church & Welling_ton (using probe molecules) DNA

Traditionally, when computists solve problems, they try to achieve the desired end by painstakingly developing a suitable means---an “algorithm”. On the other hand, when natural computists solve problems, they try to discover a natural (computing) system, one that is bound to produce the desired end (or something “close” to such an end) and whose capacity to produce such an end is innate. (That is, the system’s ability to reach the desired end is not something the computist deliberately assigns to it, but something which the system has been endowed with.) The means by which natural systems realize an end is something that comes “for free”; the computist need not bother to know the exact means by which the system would achieve the desired end, but simply be aware of the fact that such an end will somehow be achieved. Natural Algorithm : a “free” means to an end What is a natural algorithm? (prose version)

"What, my dear Sir, is a Natural Algorithm?" So asked Boswell. "Bah, that is but a simple idea", said Dr. Johnson. An algorithm is nothing but a means, Not as hard as it seems; One which humans so meticulously design--- And all that, my friend, Is for the computer---to achieve an 'end'. A natural algorithm is also a means, But one that you get “for free”: All you need, my dear Boswell, is to seek For when you seek, you shall find That piece of nature's machinery which does what you want Be it sorting, be it searching or solving SAT! It's right there, neat and clean--- The end you seek; Just take a peek. "But, Sir, by what means does nature reach its end?" Why bother, my dear Boswell, When nature does it well. The means is but free, and For us (and for nature), it's the end that matters. What matters for starters, Though, is by one means or the other Will it reach its end! What is a natural algorithm? (poem version)

Lipton’s SAT (x V y) ^ (~x V ~y) Paths satisfying Clause-1: Paths satisfying Clause-2: Possible Paths: a1a1 a2a2 a3a3 x=1 y=1 x=0 y=0

Lipton’s SAT: Filtering process I Paths satisfying Clause-1: Possible Paths: 00 Paths of the form get filtered off. Getting rid of DNA strands (paths) that do not satisfy Clause-1

Lipton’s SAT: Filtering process II Paths satisfying Clause-1: Paths of the form get filtered off. 11 Paths satisfying BOTH Clause-1 and Clause-2 : Getting rid of DNA strands (paths) that do not satisfy Clause-2

Lipton’s SAT: Filtering process I T 0 : Extract “x=1” T 1 : T1’ :T1’ : Extract “y=1” T2 :T2 : T 3 : Paths satisfying Clause 1: (x = 1) OR (y = 1)

Lipton’s SAT: Filtering process II T 3 : Paths satisfying Clause-1: (x = 1) OR (y = 1) Extract “x=0” 0 1 T4:T4: T4‘ :T4‘ : Extract “y=0” T5:T5: T 6 : + Paths satisfying BOTH clauses 1 & 2: (x = 1) OR (y = 1) AND (x = 0) OR (y = 0) Is anything left (in T 6 )? The working set for filtering process II

Universality of DNA computing What does a shuffle mean? Take any two strings x and y; we can form strings by just “cutting and pasting” pieces (substrings) from them in such a way that the resulting strings will preserve the order of letters in x and y. Call such a resulting string a shuffle of x and y. e.g. Take x = 0011 and y = 0011; is a shuffle of x and y. But, is not a shuffle of x and y. Twin-Shuffle language Pick x, an arbitrary string over the alphabet {0,1} and y, its underscored-version. Form the shuffles of ALL such x and y. The resulting (infinite) set of strings is the Twin- Shuffle language.

Universality of DNA computing (DNA) Universality Theorem For every computably enumerable language L, we can design a finite state machine (with outputs) that can generate exactly those strings in L when inputted with strings from TS. DNA-strings = Twin-Shuffle language Every DNA double strand can be represented by a unique, valid shuffle, i.e. a string in TS. Also, for every string in TS, one can construct a (unique) double stranded DNA that mirrors such a string. In other words, the double-stranded DNA strings and the strings in TS can be put in one-to-one correspondence.

Universality of DNA computing DNA-strings  Twin-Shuffle language Every DNA double strand can be represented by a unique, valid shuffle, i.e. a string in TS. Also, for every string in TS, one can construct a (unique) double stranded DNA that mirrors such a string. x 1 x 1 x 2 x 2 x 3 x 3 x 4 x 4 x 1 x 2 x 3 x 4 DNA strandshuffle x 1 x 1 x 2 x 3 x 2 x 3 x 4 x 4 shuffle x 1 x 2 x 3 x 4 DNA strand

Thank you! References: 1.E. Schrödinger, What is Life: The Physical Aspect of the Living Cell (1944), Cambridge University press. 2.The Living Cell, Readings from Scientific American, W. H. Freeman and Company, 1965.