January 23 2011 Temperature 1 SelfAssembly Deterministic Assembly in 3D and Probabilistic Assembly in 2D Matthew Cook University of Zurich and ETH Zurich Yunhui Fu Clemson University ID: 215583
Download Presentation The PPT/PDF document "1 SODA" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
1
SODA January 23, 2011
Temperature 1 Self-Assembly: Deterministic Assembly in 3D and Probabilistic Assembly in 2D
Matthew Cook University of Zurich and ETH ZurichYunhui Fu Clemson UniversityRobert Schweller University of Texas Pan AmericanSlide2
2
OutlineBackground InformationModel
ResultsSlide3
3
A C G C
T G C G
Molecular Building BlocksSlide4
4
Molecular Building Blocks
[Reif’s Group, Duke University]Slide5
5
DNA Scaffolding
[Sung Ha Park, Constantin Pistol, Sang Jung Ahn, John H. Reif, Alvin R. Lebeck, Chris Dwyer, and Thomas H. LaBean, 2006]Slide6
6
Paul Rothemund, Nick Papadakis, Erik Winfree, PLoS Biology 2: e424 (2004)
340nm
Simulation of Cellular AutomataSlide7
7
Example of 3D Self-Assembly
[Shaw, University of Southern California]Slide8
8
3D DNA Cube
[Seeman, New York University]Slide9
9
3D DNA Truncated Octahedron
[Seeman, New York University]Slide10
10
OutlineBackground InformationModel
ResultsSlide11
11
Tile Assembly Model(Rothemund, Winfree, Adleman)
T = G(y) = 2G(g) = 2G(
r) = 2G(b) = 2G(p) = 1G(w) = 1 t = 2Tile Set:
Glue
Function:
Temperature:
Seed Tile:Slide12
12
How a tile system self assembles
T = G(y) = 2
G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(w) = 1 t = 2Slide13
13
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide14
14
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide15
15
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide16
16
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide17
17
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide18
18
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide19
19
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide20
20
How a tile system self assembles
T =
G(y) = 2G(g) = 2G(r) = 2G(b) = 2G(p) = 1G(
w) = 1 t = 2Slide21
21
How efficiently can you build an n x n square?
nSlide22
22
How efficiently can you build an n x n square?
x
Tile Complexity:
2n
nSlide23
How efficiently can you build an n x n square?
0
0
0
0
log n
-Use
log n
tile types to seed
counter:Slide24
How efficiently can you build an n x n square?
0
0
0
0
log n
-Use
8
additional tile types
capable of binary counting:
-Use log n
tile types capable ofBinary counting:Slide25
How efficiently can you build an n x n square?
0
0
0
0
log n
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
0
0
0
0
0
1
1
0
1
1
1
1
1
0
0
0
1
-Use
8
additional tile types
capable of binary counting:
-Use
log n
tile types capable of
Binary counting:Slide26
How efficiently can you build an n x n square?
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
0
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
-Use
8
additional tile types
capable of binary counting:
-Use
log n
tile types capable of
Binary counting:
log nSlide27
How efficiently can you build an n x n square?
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
0
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
1
1
1
1
-Use
8
additional tile types
capable of binary counting:
-Use
log n
tile types capable of
Binary counting:Slide28
How efficiently can you build an n x n square?
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
0
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
1
1
1
1
n – log n
log n
x
y
Tile Complexity:
O(log n)
(Rothemund, Winfree 2000)Slide29
How efficiently can you build an n x n square?
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
0
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
1
1
1
1
n – log n
log n
x
y
Tile Complexity:
O(log n)
With optimal
counter:
Tile Complexity:
O(log n / loglog n)
Meets lower
bound:
W
(log n / loglog n)
(Rothemund, Winfree 2000)
(Adleman, Cheng, Goel,
Huang 2001)
(Rothemund, Winfree 2000)Slide30
30
Barish, Shulman, Rothemund, Winfree, 2009Slide31
Why is Temperature 1 Theory Important?
Temperature 2 self-assembly is powerful
Efficient assembly of squares and more general shapes
Universal ComputationBut….Precise laboratory settings requiredHigh error rates
x
ySlide32
Why is Temperature 1 Theory Important?
Temperature 2 self-assembly is powerful
Efficient assembly of squares and more general shapes
Universal ComputationBut….Precise laboratory settings requiredHigh error rates
x
ySlide33
Why is Temperature 1 Theory Important?
Temperature 2 self-assembly is powerful
Efficient assembly of squares and more general shapes
Universal ComputationBut….Precise laboratory settings requiredHigh error rates
Error locked in placeSlide34
Why is Temperature 1 Theory Important?
Temperature 2 self-assembly is powerful
Efficient assembly of squares and more general shapes
Universal ComputationBut….Precise laboratory settings requiredHigh error rates
Error locked in place
Question:
Is temperature 1 substantially less powerful than temperature 2?
Is temperature 1 powerful enough to warrant consideration considering it’s potential experimental advantages? Slide35
Build an
n x n square at Temperature 1
s
a1Slide36
Build an
n x n square at Temperature 1
s
A
1
A
2
A
3
A
4
A
5
a1
a2
a3
a4
a5Slide37
Build an
n x n square at Temperature 1
s
A
1
A
2
A
3
A
4
A
5
a1
a2
a3
a4
a5
B
1
B
2
B
3
B
4
B
5
b1
b1
b1
b1
b1
b1
b1
b1
b1
b1
b1Slide38
Build an
n x n square at Temperature 1
s
A
1
A
2
A
3
A
4
A
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5Slide39
Build an
n x n square at Temperature 1
s
A
1
A
2
A
3
A
4
A
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
Distinct tile types:
2n-1
Probably optimal, but no
substantial lower bound
proof has been given.Slide40
Build an
n x n square at Temperature 1
s
A
1
A
2
A
3
A
4
A
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
B
1
B
2
B
3
B
4
B
5
Distinct tile types:
2n-1
Probably optimal, but no
substantial lower bound
proof has been given.
Two directions to consider
Can we do better if consider 3D assembly? (3D deterministic assembly)
Can we do better if we permit a small chance of error? (2D probabilistic assembly)Slide41
Our Temperature 1 ResultsSlide42
42
OutlineBackground Information
ModelResultsTemperature 1 in 3DTemperature 1 in 2D, probabilisticSlide43
Simulating Temp 2 Systems at Temp 1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
*
*
*
*
c
0
1
x
0
1
0
0
*
c
1
c
c
0
1
x
x
1
0
0
x
x
1Slide44
Simulating Temp 2 Systems at Temp 1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
*
*
*
*
c
0
1
x
0
1
0
0
*
c
1
c
c
0
1
x
x
1
0
0
x
x
1
0
c
1
c
0Slide45
Simulating Temp 2 Systems at Temp 1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
*
*
*
*
c
0
1
x
0
0
0
*
c
1
c
0
1
x
x
1
0
0
x
x
1
0
0
c
0Slide46
Simulating Temp 2 Systems at Temp 1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
*
*
*
*
c
0
1
x
0
0
0
*
c
1
c
0
1
x
x
1
0
0
x
x
1
0
0
c
0
1
c
0
1
xSlide47
Simulating Temp 2 Systems at Temp 1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
*
*
*
*
c
0
1
x
0
0
*
c
1
c
0
1
x
x
1
0
0
x
x
1
0
0
0
1
x
1Slide48
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles
constituting
a
“macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide49
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting of a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide50
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide51
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide52
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide53
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide54
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide55
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide56
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide57
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide58
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide59
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide60
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide61
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide62
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide63
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide64
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide65
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide66
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide67
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide68
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide69
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide70
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide71
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)Slide72
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
2 inputs
2 outputs
Key idea:
Map each single temperature 2 tile to a collection of tiles constituting a “macro” tile
Use 3D geometry to encode north outputs.
(X,Y)
A
B
“0”
“1”Slide73
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
(X,Y)
A
B
“0”
“1”
Y
XSlide74
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
W
V
Y
X
V
WSlide75
Simulating Temperature 2 Systems at Temperature 1
Y
Geometry decoding tiles:
Y
X
A
B
W
V
Y
XSlide76
Simulating Temp 2 Systems at Temp 1
YSlide77
Simulating Temp 2 Systems at Temp 1
YSlide78
Simulating Temp 2 Systems at Temp 1
YSlide79
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
W
V
Y
X
(X,Y)Slide80
Simulating Temp 2 Systems at Temp 1
Y
X
A
B
W
V
Y
X
A
B
“0”
“1”Slide81
81Slide82
82Slide83
83
OutlineBackground Information
ModelResultsTemperature 1 in 3DTemperature 1 in 2D, probabilisticSlide84
Simulating Temperature 2 Systems at Temperature 1:
2D with high probabilitySlide85
85
Summary3D temperature 1 and 2D probabilistic temperature 1 offer much of the power of temperature 2.
Temperature 1 self-assembly may have important experimental motivation.The use of steric hindrance and steric protection seems inline with nature:Steric hindrance is a common
mechansim in nature.The physical shape of proteins in biology is closely related to function.Slide86
86
Future WorkLower bound for
nxn squares for temperature 1, 2D, deterministic.Multiple nucleation.Can the nxn 3D result be improve to O(log n / loglog n)?Combine ideas from this work with other techniques for robustness and error correction.
Improve sturdiness or connectivity of constructions.