15
Ashish Goel, [email protected] 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg: U=20, L=10) Suppose you have n randomly chosen DNA strands of length U Probability that there will be some undesired interaction of length at least L · U 2 n 2 4 -L Basis of Adleman’s construction and also DNA tiles

Ashish Goel, [email protected] 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Embed Size (px)

Citation preview

Page 1: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 1

A simple analysis

Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg: U=20, L=10) Suppose you have n randomly chosen DNA strands of length U Probability that there will be some undesired interaction of

length at least L · U2n24-L

Basis of Adleman’s construction and also DNA tiles

Page 2: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 2

Tile Systems and Program Size

A tile system that uniquely assembles into a shape is analogous to a program for computing the shape Program size: The number of tile types used Goal: Find smallest program size for interesting classes of

shapes [Adleman ’99][Rothemund and Winfree ‘00]

Can often derive lower bounds on program size Need n distinct tile types to assemble a line of length n

(pumping lemma)

Need Ωio(log n/log log n) distinct tile types to construct squares

of side n (Kolmogorov complexity)

Also need a notion of assembly time or “running time”

Page 3: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 3

Tile Systems and Assembly Time

Seed A

B C

= 2

Page 4: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 4

Tile Systems and Assembly Time

Seed

Seed A

B C

Seed A

Seed

B

Seed A

B

A: 50%, B:30%, C: 20%

0.50.3

0.2

0.30.5

Assembly time = Average time

to go from seed to terminal state

Page 5: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 5

Example: Assembling Lines

Require n tiles to assemble line of length n

Eg. suppose tiles B and F are the same Could “pump” the tiles BCDE to get infinite line Therefore program size is n

For fastest assembly, all tiles must have the same concentration (1/n) Expected assembly time is n2

Can assemble thicker rectangles (2 £ n, log n £ n, n £ n etc.) faster and with less tile types!

B C D E F G H IA B C D EB C D EB C D E

Page 6: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 6

Self-assembling Squares

Would like to assemble n x n squares as fast as possible and with as few tile types Kolmogorov lower bound of Ωio(log n/log log n) on the

program size (i.e. number of different tiles) Assembly time has to be Ω(n) in accretion model

Motivation: Simple canonical problem, leads to useful general techniques Also interesting in its own right (e.g. assembling computer

memories)

Page 7: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 7

Rothemund-Winfree construction

Basic Idea: Easy to extend a self-assembled rectangle into a self-assembled square

=2

• Inefficient to start with a 1 £ n rectangle– Need (n) tile types, (n2) time for lines

– Solution: Use counters to make rectangles

B

C

A

x

z

y

x

z

zww

w

y

Page 8: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 8

Assembly Time Analysis Technique

Seed A

B C

2

B C

AS

121

Equivalent Acyclic SubgraphTerminal assembly

B C

AS

1

2

222

11

1 Graph G: a vertex for each tile in final assembly, directed edges between adjacent vertices

Page 9: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 9

Assembly Time Analysis Technique

Let L be the length of the longest path in an equivalent acyclic subgraph of G Often, much smaller than longest path in Markov Chain

Let Cm be the smallest concentration Ci

Theorem: The assembly time of the given tile system is O(L/Cm) with high probability

Find the right equivalent acyclic subgraph No Markov chains anymore, just combinatorial analysis Analysis technique is tight: there always exists an EAG which

gives a tight bound if Ci’s are identical

Page 10: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 10

Proof for identical Ci’s

ti,j: exponential random variable with mean 1/C

L = length of longest path in equivalent acyclic graph

Number of paths · 3L

For any path P in graph, let tP = i,j 2 P ti,j

Assembly-time ·sd maxP tP

E[tP] · L/C; also sharp concentration (Chernoff bounds)

) Expected assembly time = O(L/C)

ti,j = time for tile to attach at position (i,j) after it becomes attachable

Page 11: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 11

Squares via counters

Self-assemble a log n £ n rectangle by simulating a log n bit counter Start with a “seed” row that has log n tiles, labeled 0/1 Define an “increment” operation which adds one to the row Crucial step: assembly must stop when all the tiles in a row are

labeled 1 Requires (log n) tile-types to make the seed and (1) other

tiles• Can be improved to the Kolmogorov optimum of (log n/log log n)

Then, use triangulation on one side of the counter to covert the counter into a square

Page 12: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 12

Counter tiles

Page 13: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 13

Counting example

From Cheng, Moisset, Goel;

Optimal self-assembly of counters

at temperature 2

(basic ideas developed over many papers)

Page 14: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 14

Equivalent Acyclic Subgraph for Counters

1111110

………..

………..

0000000

1111111

………..

………..

0000000

0

0

0

0

1

1

1

1

01111111

Only time a directed edge

is needed from left column

00000000

L(n) = 2 L(n/2) + (log n)

= (n)

T(n) = L(n)/Cm = (n)

Page 15: Ashish Goel, ashishg@stanford.edu 1 A simple analysis Suppose complementary DNA strands of length U always stick, and those of length L never stick (eg:

Ashish Goel, [email protected] 15

Constructing squares and Counters

Can extend this basic idea to Assemble n £ n squares in time O(n), using O(log n/log log n)

tiles (provably optimum) Count optimally in binary using the same assembly time and

program size

General design and analysis techniques A “library” of subroutines (counting, base-conversion,

triangulating the line)

If this is so efficient, why didn’t nature learn to count? Possible conjecture: Not evolvable, not robust

Open problems: general analysis techniques for assembly time in reversible models?