Montek Singh COMP Nov 15, 2011
Two different technologies ◦ TODAY: DNA as biochemical computer DNA molecules encode data enzymes, probes etc. manipulate data ◦ Thurs: DNA used to assemble electronic computer DNA molecules used as scaffolding nanoscale electronic components piggyback DNA assembles the computer
“I was fascinated. With my own hands, I was creating DNA that did not exist in nature.” Leonard M. Adleman Scientific American, August 1998
What is a DNA computer? ◦ A system that manipulates DNA to solve mathematical problems ◦ How is information represented? In DNA molecules ◦ How is information manipulated? Using enzymes and ligases ◦ How do you obtain gain/amplification? DNA replication ◦ How do you read output? mechanical isolation, separation, probes
4 types of molecular building blocks ◦ Adenine, Thymine, Guanine, Cytosine ◦ Shortened to 4 symbols: A, T, G, C Double-helix structure ◦ complementary strands ◦ A and T bond with each other ◦ G and C bond with each other
Watson-Crick pairing ◦ each strand has its complement ◦ the two will “anneal” (twist around each other) weak hydrogen bonds break easily with heat ◦ non-complementary strands will not anneal
Polymerases ◦ copy information ◦ from a strand template, make its complement ◦ need a “start signal” a short DNA fragment, or primer starts adding symbols to the primer zips it up!
Ligases ◦ covalently bonds DNA molecules together ◦ joins two pieces into single strand ◦ nature’s repair mechanism!
Nucleases ◦ scissors to cut DNA strands ◦ some nucleases will search for, and cut at, only specific sequences ◦ e.g.: EcoRI (from E. coli) cuts after the G in GAATTC
Technique to separate molecules in a slab of gel ◦ current applied to gel ◦ DNA is –vely charged ◦ shorter strands move faster than longer ones ◦ one can also weigh down specific strands by attaching metal balls to them
Mail order! ◦ Write down the sequence on a piece of paper ◦ Send to a synthesis facility ◦ Wait 10 days ◦ Receive molecules in a test tube Today’s price [from
To build a computer, only two things are really needed ◦ a method of storing information ◦ a few simple operations for acting on that information Turing machine Is DNA good enough? ◦ great way to store the “blueprint of life” ◦ enzymes (polymerases and ligases) can operate ◦ Is this enough? YES!
Hamiltonian Path Problem ◦ given: a directed graph, G ◦ given: specified start and end nodes, s and t ◦ definition: Hamiltonian path is one that goes from start node to end node, passing through each remaining node exactly once ◦ decide: whether a Hamiltonian path exists for Like all good problems, this one is NP-complete
Given graph with n vertices, 1. Generate a set of random paths through th graph 2. For each path: a.check if path has correct start and end nodes b.check if path passes through exactly n nodes c.check if each vertex is visited Remove path if it fails any of these checks 3. If set is not empty, report that a Hamiltonian path exists.
Hamiltonian Path Problem ◦ 7 cities, 14 nonstop flights ◦ takes about a min for most of us Smaller problem ◦ 4 cities ◦ for illustration
Use DNA fragments to code cities and flights ◦ each city X has two parts to its name (X 1 X 2 ) and complement (X’ 1 X’ 2 ) ◦ a flight also has 2 parts flight from X 1 X 2 to Y 1 Y 2 has sequence: (X 2 Y 1 )
Synthesize: ◦ complements of city names (X’ 1 X’ 2 ) ◦ flights (X 2 Y 1 ) A pinch of each has molecules ◦ throw them all into a test tube ◦ add water, ligase, salt ◦ one drop, one second!
Each flight bonds only with complements of its start and end cities: ◦ flights (X 2 Y 1 ) ◦ bonds with (X’ 1 X’ 2 ) and (Y’ 1 Y’ 2 ) ◦ ligase seals fragments Sequences grow: ◦ Atlanta-Boston ◦ Atlanta-Boston-Chicago ◦ …
or so parallel computations! All paths created at once
How to weed out the paths that were not Hamiltonian? Answer: ◦ clever use of probes, polymerization, gel electrophoresis, etc.
Gain: ◦ Want to weed out the incorrect paths ◦ Want to amplify correct paths Strategy: ◦ Add 2 primers 1.add last name of start city alerts polymerase to copy the right city strings complements of sequences with the right start city 2.add complement of the first name of the end city alerts polymerase to copy the right flight sequences with the right end city ◦ Exponential growth!
Use gel electrophoresis ◦ short solutions do not go through all cities move faster ◦ keep long ones (length 24)
Use metal probes ◦ e.g., specific probe for Boston ◦ sticks to only those paths that contain Boston ◦ electrophoresis to weed out others ◦ heat and repeat
If there is any DNA left, there is a Hamiltonian Path! Also possible to “read out” the path [see refs.]
highly parallel ◦ solutions simultaneously explored in about 1 second highly energy efficient ◦ ligation operations per joule ◦ theoretical max is joule ◦ today’s computers? ~ 10 9 – ops/joule