Title: DNA computing
1DNA computing
2DNA Computing
- DNA structure
- A computer science problem
- A DNA computing experiment
- Future?
3DNA Computing
- DNA structure
- A computer science problem
- A DNA computing experiment
- Future?
4DNA double stranded helix
5DNA base pairs
Excerpt from Watson and Crick, Nature, 4356,
737-728 (1953)
6DNA base pairs
7DNA double stranded helix
Excerpts from Watson and Crick, Nature, 4356,
737-728 (1953)
8DNA a style?
Life Science, UC Davis
Perth, Australia
Chambord, France
9DNA Computing
- DNA structure
- A computer science problem
- A DNA computing experiment
- Future?
10Graph Theory
The Koenigsberg bridge problem
Is it possible to find a route that crosses all
bridges only once?
11Graph Theory
Eulers solution
- Euler noticed that, if a correct path exists
- there are two types of nodes interior, and
Start, End - the number of edges at an interior node must be
even - There can be only two nodes (Start and End) that
have - an odd number of edges
- The graph for Konigsberg does not satisfy these
criteria! - It has 4 nodes with odd number of edges
12Graph Theory
Euler path path in a graph that goes from a
Start node to an End node by going over
all edges only once. Hamilton path path in a
graph that goes from a Start node to an End
node by going through each vertex only once.
13DNA Computing
- DNA structure
- A computer science problem
- A DNA computing experiment
- Future?
14Algorithm to find Hamilton paths
(Adleman, Science, 266, 1021-1024, 1994)
- Step 1 Generate random paths on the graph
- Step 2 Keep only those paths with the correct
start and end - Step 3 Keep only those paths with the correct
number of vertices - Step 4 Keep only those paths that enter each
vertex of the graph at least once - Step 5 If any path remains, say Yes, otherwise
say No.
15A specific problem
0
6
Find an Hamilton path from 0 to 6
16A specific problem
4
3
1
0
6
2
5
Find an Hamilton path from 0 to 6
17A Molecular Biology Solution
Encoding a graph in DNA
Vertices For each vertex i, use a random
sequence of length 20 Examples S2
TATCGGATCGGTATATCCGA S3 GCTATTCGAGCTTAAAGCTA
S4 GGCTAGGTACCAGCATGCTT Edges For an edge
i-gtj, use the sequence corresponding to the last
10 nucleotides of Si and 10 first nucleotides
of Sj. Example S2-gt3
GTATATCCGAGCTATTCGAG S3-gt4 CTTAAAGCTAGGCTAGGTA
C
18A Molecular Biology Solution
Generating a path
- Prepare splints
- Splints are complement of the vertices.
- Example
- Vertex 3 S3 GCTATTCGAGCTTAAAGCTA
- Splint 3 cS3 CGATAAGCTCGAATTTCGAT
-
- Mix in solution all edges and all splints
- How two edges connect
- S2-gt3 S3-gt4
- GTATATCCGAGCTATTCGAGCTTAAAGCTAGGCTAGGTAC
- CGATAAGCTCGAATTTCGAT
- 3) Ligate DNA
cS3
19A Molecular Biology Solution
Checking if a path is Hamilton
- Step 1 Put in solution all edges and all
splints - Step 2 Eliminate all paths that do not start
with 0 and do - not end with 6
- Amplify fragments with correct start and end.
- Step 3 Only keep paths with 140 nucleotides
- Run DNA on gel keep fragments of size 140
- Step 4 Check that DNA fragments of size 140
contains all - vertices
- Prepare beads, one for each splint. If fragment
- binds to bead i, it contains vertex i.
- Step 5 remaining paths are Hamilton paths
20DNA Computing
- DNA structure
- A computer science problem
- A DNA computing experiment
- Future?
21A computer to detect cancer
(Benenson et al, Nature, 429, 423-428, 2004)
Overview
Basic computing step
Example of application
The full procedure