equivalence of chemical reaction networks in a crn …badelt/files/slides/vemdp... · 2018. 7....
TRANSCRIPT
-
1
EQUIVALENCE OF CHEMICAL REACTION NETWORKS
IN A CRN-TO-DNA COMPILER FRAMEWORK and Erik WinfreeStefan Badelt
DNA and Natural Algorithms (DNA) Group, Caltech
Oxford, July, 19 , 2018th
VEMDP 2018
http://dna.caltech.edu/~badelt
-
2
MOLECULAR PROGRAMMING(in terms of the nuskell compiler project)
nucleic acids are architecture to implement algorithms chemical reaction networks are a programming language
formal/experimental verification of correct implementation
minimal/optimal components for biological systems
biological relevance is primary if experiments fail, refine the method
verifyably correct artificial systems
formal description is primary, biological relevance secondary
scalable, correct components
arbitrary algorithm
conditional switchinformationprocessingnetwork
riboswitchprotein coding regionpromoter region
Term
inat
or
OFF
Ligand
riboswitchprotein coding regionpromoter region
Anti-Terminator
ON
+ Ligand
- Lig
and
-
3
DNA STRAND DISPLACEMENT
= Adenine
= Thymine
= Cytosine
= Guanine
= Phosphate backbone
DNA
= long domain
= short domain
DNA
= 3' end
= 5' end
b
a* b*
b
b*
a*
-
4
DOMAIN-LEVEL STRAND DISPLACEMENT
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind3-way branch migrationunbind
A BF1 F2
short (toehold) domain: binds reversiblylong (branch-migration) domain: binds irreversibly
+ +
i1
i2
i3
-
5
DOMAIN-LEVEL STRAND DISPLACEMENT
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind 3-way branch migration unbind
A BF1 F2
short (toehold) domain: binds reversiblylong (branch-migration) domain: binds irreversibly
+ +
i1 i2
detailed networkcondensed network
-
6
DOMAIN-LEVEL STRAND DISPLACEMENT
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind3-way branch migrationunbind
A BF1 F2
short (toehold) domain: binds reversiblylong (branch-migration) domain: binds irreversibly
+ +
i1 i2
detailed networkcondensed network
-
7
DOMAIN-LEVEL STRAND DISPLACEMENT
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2
short (toehold) domain: binds reversiblylong (branch-migration) domain: binds irreversibly
+ +
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind3-way branch migrationunbind
i1
i2
i3
formal CRN
formal species: {A, B}
DSD sytem specification
signal species (low concentation): {A, B}fuel species (high concentration): {F1, F2}
-
8
FROM CRN TO DSD SYSTEMS
Cardelli (2011)Soloveichik et al. (2010)
Qian et al. (2011)Lakin et al. (2012)
Chen et al. (2012), Cardelli (2013), Srinivas (2015), Lakin et al. (2016), ...
Images drawn using VisualDSD, Lakin et al. (2012)
-
9
A CRN-TO-DSD COMPILERtry all translation schemes
verify correctness
sequence design experimental
testing
chooseoptimal scheme
automatedworkflow
- for all inputs- experimental setup
- synthesis cost- efficency / robustness- experimental constraints
-
10
FROM A DIGITAL CIRCUIT TO DSD
Qian et al. (2011)
Input for the nuskell compiler: 32 formal reactions.
soloveichik2010.ts: 52 signal species, 92 fuel species, 172 intermediate species, 180 reactions.
verifies as correct according to the pathway decomposition and CRN bisimulation equivalence
Badelt, Shin, Johnson, Dong, Thachuk and Winfree: A general-purpose CRN-to-DSD compiler withformal verification, optimization, and simulation capabilities. LNCS (2017)
-
11
THE COMPILER FRAMEWORK
a txA
xbtB
x t b
x* t*t* F1
x
t*t* x*
taF2
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
CRN trajectory equivalence
CRN condensation
CRN enumeration
1
2
3
nucleotidesequences
4
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind
3-way branch migration
unbind
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
i1
i2
i3
KinDA project
nucleotide-level reaction rates
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
Nuskell project Peppercorn project
a txA
+x
t*t* x*
taF2
x
t*t* x*
taa
xt
condensed reaction rates
domain-level reaction rates
Badelt et al. (2017) - Nuskell Grun et al. (2014) - Peppercorn
Shin et al. (2017) - CRN pathway decomposition equivalence Johnson et al. (2018) - CRN bisimulation equivalence
Berleant et al. (submitted) - KinDA
-
12
REACTION ENUMERATION
a b a* a*a
b
a*
a a
a*
bind / open
ba
a* b*
ba
a* b*
bc
c*c*
c
3-way branch migration
bb
b* a
a*c*
d* d
a
a* b
b*c b
b*
a
a*
c c*
d* d
a
a*
b
b*
4-way branch migration
c*a*
cc
c*a*
cc
-
13
REACTION ENUMERATION
open & branch migration reactions are always unimolecular, but may lead to dissociation.
bind reactions are the only valid bimolecular reactions
open reactions of domains with length > L are forbiddenallows all secondary structures (pseudoknots excluded)
a b a* a*a
b
a*
a a
a*
bind / open
ba
a* b*
ba
a* b*
bc
c*c*
c
3-way branch migration
bb
b* a
a*c*
d* d
a
a* b
b*c b
b*
a
a*
c c*
d* d
a
a*
b
b*
4-way branch migration
c*a*
cc
c*a*
cc
-
14
SEPARATION OF TIMESCALESunimolecular reactions are fast bimolecular reactions are slow
a tt
t* t*b
A
B
a tt
t* t*b
kα
kβ
+
transient complexresting complexes
X
{X A + B; A + B X}−→kα
−→
kβ
at low concentrations:
[A][B]
-
15
APPROXIMATE REACTION RATE CONSTANTS
a*
a a
a*bimolecular binding
open rate
h
a a*a a*h
ha
a*linker closing(nucleation)
hairpin closing rate
helix zipping
unimolecular binding
branch migration
ba
a* b*
ba
a* b*
bc
c*c*
cb
c*a*
cc
c*a*
cc
-
16
MODEL PARAMETERSnegligible reactions slow reactions fast reactions
bimolecular [/M/s]
unimolecular [/s]
bind21
open (len > L) open (len < L)bind11branch migration
unimolecular [/s]
rate-independent model: simple, one parameter: Lrate-dependent model: flexible, two parameters: k-slow, k-fast
-
17
valid according to enumeration semantics:
REACTION ENUMERATIONall initial complexes are includedevery complex has all valid fast reactions enumeratedtransient complexes have no slow reactions enumeratedresting complexes have all valid slow reactions enumerated
rate-dependent modelrate-independent modelmax-helix semantics: reaction types are greedyreject-remote semantics: exclude remote-toehold branch migration
-
18
THE COMPILER FRAMEWORK
a txA
xbtB
x t b
x* t*t* F1
x
t*t* x*
taF2
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
CRN trajectory equivalence
CRN condensation
CRN enumeration
1
2
3
nucleotidesequences
4
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind
3-way branch migration
unbind
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
i1
i2
i3
KinDA project
nucleotide-level reaction rates
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
Nuskell project Peppercorn project
a txA
+x
t*t* x*
taF2
x
t*t* x*
taa
xt
condensed reaction rates
domain-level reaction rates
Badelt et al. (2017) - Nuskell Grun et al. (2014) - Peppercorn
Shin et al. (2017) - CRN pathway decomposition equivalence Johnson et al. (2018) - CRN bisimulation equivalence
Berleant et al. (submitted) - KinDA
-
19
CRN CONDENSATION
Goal: represent CRN in terms of overall slow reactions
all fast reactions are unimolecular
reactions have arity (n,m) with n > 0 and m > 0
reactants of slow reactions must be resting states
reactants and products of fast (1-2) reactions are in different SCCs (mass conservation)
properties / requirements:
-
20
CRN CONDENSATION
Step 1: Make a graph that contains only fast (1,1) reactions
-
21
CRN CONDENSATION
Step 2: Identify strongly connected components (SCCs)
-
22
CRN CONDENSATION
Step 3: Define transient and resting macrostates
C D E F
A B
-
23
CRN CONDENSATION
Step 4: Assign fates to complexes (or macrostates)
-
24
CRN CONDENSATION
Step 5: Insert slow reactions & derive condensed reactions
-
25
DSD CONDENSATION
a txA x t b
x* t*t*
F1x
t*t* x*
taF2
x t b
x* t*t*
a tx
i1
x
t*t* x*
tax
bt
i2
x
t*t* x*
taa
xt
i4
x t b
x* t*t*
x tb
i3
xbt
B
{(A+F2)}{(B+F1)}
{(A)} {(F1)} {(B)} {(F2)}
{(A+F1), (B+F2)}
fast (1,1) reaction
fast (1,2) reaction
slow (2,1) reaction
resting macrostate
transient macrostate
{} set of fates
condensed reactions:A + F1 -> B + F2B + F2 -> A + F1
detailed reactions:A + F1 -> i1i1 -> i2i2 -> B + F2B + F2 -> i2i2 -> i1i1 -> A + F1A + F2 -> i4i4 -> A + F2B + F1 -> i3i3 -> B + F1
-
26
REACTION RATE CONDENSATIONConsider a condensed reaction:
P + Q K + L + M→
It is composed of all detailed slow reactions:
weighted by the decay probability over all pathways:
p + q I→
I → ⋯ → k + l + m
where and is a multiset of intermediate species
p ∈ P, q ∈ Q, k ∈ K, l ∈ L,m ∈ M
I
-
27
REACTION RATE CONDENSATION
microstate (complex)
fast (1,1) reaction
slow (1,1) reaction
fast (1,2) reaction
slow (2,1) reaction
resting macrostate
transient macrostate
{} set of fates
detailed reaction:
condensed reaction:
Notation:
given:
define:
then the condensed rate is:
-
28
REACTION RATE CONDENSATIONgeneral form:
= ⋅ ℙ[ ] ⋅ ℙ[ : ]kr ̂ ∑r=(A,B)∈R
Â
kr TB→B̂ ∏∈Aai
ai  i
where
stationary distribution reaction decay probability
ℙ[ : ] =ai  iℙ[ ] =TB→B̂
-
29
EXPERIMENTAL DATA: YIN ET AL. (2008)
C.D
C
D
A.B
A.B.C
(3)
(4)C.D.A
(5)
(6)
I
(1) (2a)
Exponentialamplification
Initiation
I.A
A
Autocatalys is
B
A
0.001×
0× (No initiator)0.0005× (10 pM initiator)
0.003×
0.01×0.005×1× 0.3× 0.1× 0.05× 0.03× 0.02×
Aa a*b
c*
x y
b*x* y*
x*v
v* C
c dy v
d*y* v*
c*
a*
u*
u*
u
x*
D
dd*
a cx u
a* c*x* u*
v*
b*
v
v*y*
Ia* x* b* y*v*Metas tablemonomers Initiator
bb*
c ay x
c*a*y* x*
y*
d*u*
u
*vB
u*
ba
10% completion
v* y*
B
A B
D C
(1) (2b)
(3)
(4a)
(4b)(5)
(6b)
(2a) (6a)
I
2
3
4
0 1 2 3 4 5
Tim
e (h
)
1.5
c
Time (h)
Emis
sion
s (c
ount
s s–
1 )
×105
log10 [I]–1.6–2–2.4 –1.2
1.2
0.8
0.4A+B+C+D
A+B A
I.A.B(2b)
-
30
EXPERIMENTAL DATA: KOTANI & HUGHES (2017)
-
31
MORE EXPERIMENTAL DATA (2009 - 2017)
-
32
THE COMPILER FRAMEWORK
a txA
xbtB
x t b
x* t*t* F1
x
t*t* x*
taF2
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
CRN trajectory equivalence
CRN condensation
CRN enumeration
1
2
3
nucleotidesequences
4
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind
3-way branch migration
unbind
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
i1
i2
i3
KinDA project
nucleotide-level reaction rates
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
Nuskell project Peppercorn project
a txA
+x
t*t* x*
taF2
x
t*t* x*
taa
xt
condensed reaction rates
domain-level reaction rates
Badelt et al. (2017) - Nuskell Grun et al. (2014) - Peppercorn
Shin et al. (2017) - CRN pathway decomposition equivalence Johnson et al. (2018) - CRN bisimulation equivalence
Berleant et al. (submitted) - KinDA
-
33
CRN EQUIVALENCE
A -> A + AA + A -> AA + B -> B + BB ->A + C ->C -> C + CC + C -> C
translation scheme: qian2011_3D_var1.ts
-
34
CRN EQUIVALENCE
A -> A + AA + A -> AA + B -> B + BB ->A + C ->C -> C + CC + C -> C
f14 + C -> e1428 + f15e853 + f12 -> C + f13A + f4 -> f3 + e71f2 + e25 -> A + f1A + e25 -> f2 + e7e996 + f3 -> A + f10e1428 + f15 -> f14 + Cf3 + e71 -> A + f4e465 + B -> e418 + f6e614 + f9 -> e611 + e730e996 + C -> e1040 + f12e465 + f5 -> e514 + e368e308 + f7 -> f8 + Be418 + B -> e371 + f6C + f13 -> e853 + f12A + f1 -> f2 + e25B + e71 -> e319 + f7f2 + e7 -> A + e25e1040 + f11 -> e1162 + e1163 + e1158e319 + f7 -> B + e71e308 + f9 -> e614 + e615 + e611e371 + f6 -> e418 + Be1040 + f12 -> e996 + Cf8 + B -> e308 + f7e319 + f5 -> e372 + e371 + e368f3 + e7 -> A + f0e853 + f15 -> e1428 + Ce1428 + C -> e853 + f15A + f10 -> e996 + f3e1163 + f11 -> e1158 + e1246e418 + f6 -> e465 + BA + f0 -> f3 + e7
translation scheme: qian2011_3D_var1.ts
-
35
CRN EQUIVALENCE
A -> A + AA + A -> AA + B -> B + BB ->A + C ->C -> C + CC + C -> C
f14 + C -> e1428 + f15e853 + f12 -> C + f13A + f4 -> f3 + e71f2 + e25 -> A + f1A + e25 -> f2 + e7e996 + f3 -> A + f10e1428 + f15 -> f14 + Cf3 + e71 -> A + f4e465 + B -> e418 + f6e614 + f9 -> e611 + e730e996 + C -> e1040 + f12e465 + f5 -> e514 + e368e308 + f7 -> f8 + Be418 + B -> e371 + f6C + f13 -> e853 + f12A + f1 -> f2 + e25B + e71 -> e319 + f7f2 + e7 -> A + e25e1040 + f11 -> e1162 + e1163 + e1158e319 + f7 -> B + e71e308 + f9 -> e614 + e615 + e611e371 + f6 -> e418 + Be1040 + f12 -> e996 + Cf8 + B -> e308 + f7e319 + f5 -> e372 + e371 + e368f3 + e7 -> A + f0e853 + f15 -> e1428 + Ce1428 + C -> e853 + f15A + f10 -> e996 + f3e1163 + f11 -> e1158 + e1246e418 + f6 -> e465 + BA + f0 -> f3 + e7
C -> e1428e853 -> CA -> e71e25 -> AA + e25 -> e7e996 -> Ae1428 -> Ce71 -> Ae465 + B -> e418e614 -> e611 + e730e996 + C -> e1040e465 -> e514 + e368e308 -> Be418 + B -> e371C -> e853A -> e25B + e71 -> e319e7 -> A + e25e1040 -> e1162 + e1163 + e1158e319 -> B + e71e308 -> e614 + e615 + e611e371 -> e418 + Be1040 -> e996 + CB -> e308e319 -> e372 + e371 + e368e7 -> Ae853 -> e1428 + Ce1428 + C -> e853A -> e996e1163 -> e1158 + e1246e418 -> e465 + BA -> e7
translation scheme: qian2011_3D_var1.ts
-
36
CRN EQUIVALENCE
f14 + C -> e1428 + f15e853 + f12 -> C + f13A + f4 -> f3 + e71f2 + e25 -> A + f1A + e25 -> f2 + e7e996 + f3 -> A + f10e1428 + f15 -> f14 + Cf3 + e71 -> A + f4e465 + B -> e418 + f6e614 + f9 -> e611 + e730e996 + C -> e1040 + f12e465 + f5 -> e514 + e368e308 + f7 -> f8 + Be418 + B -> e371 + f6C + f13 -> e853 + f12A + f1 -> f2 + e25B + e71 -> e319 + f7f2 + e7 -> A + e25e1040 + f11 -> e1162 + e1163 + e1158e319 + f7 -> B + e71e308 + f9 -> e614 + e615 + e611e371 + f6 -> e418 + Be1040 + f12 -> e996 + Cf8 + B -> e308 + f7e319 + f5 -> e372 + e371 + e368f3 + e7 -> A + f0e853 + f15 -> e1428 + Ce1428 + C -> e853 + f15A + f10 -> e996 + f3e1163 + f11 -> e1158 + e1246e418 + f6 -> e465 + BA + f0 -> f3 + e7
C -> e1428e853 -> CA -> e71e25 -> AA + e25 -> e7e996 -> Ae1428 -> Ce71 -> Ae465 + B -> e418e614 -> e611 + e730e996 + C -> e1040e465 -> e514 + e368e308 -> Be418 + B -> e371C -> e853A -> e25B + e71 -> e319e7 -> A + e25e1040 -> e1162 + e1163 + e1158e319 -> B + e71e308 -> e614 + e615 + e611e371 -> e418 + Be1040 -> e996 + CB -> e308e319 -> e372 + e371 + e368e7 -> Ae853 -> e1428 + Ce1428 + C -> e853A -> e996e1163 -> e1158 + e1246e418 -> e465 + BA -> e7
C -> CC + C -> CA -> AA -> AA + A -> A + AA -> AC -> CA -> AB -> B -> A + C -> A + C ->B -> BB + B -> B + BC -> C + CA -> AB + A -> A + BA + A -> A + AA + C ->A + B -> B + AB -> B + B -> B + BA + C -> A + CB -> BA + B -> B + BA + A -> AC + C -> C + CC + C -> C + CA -> A ->B -> BA -> A + A
A => A B => B C => C e1040 => A, C e1158 => e1162 => e1163 => e1246 => e1428 => C e25 => A e308 => B e319 => A, B e368 => e371 => B, B e372 => e418 => B e465 => e514 => e611 => e614 => e615 => e7 => A, A e71 => A e730 => e853 => C, C e996 => AIn
terp
reta
tion
(CR
N-b
isim
ulat
ion)
:
A -> A + AA + A -> AA + B -> B + BB ->A + C ->C -> C + CC + C -> C
Johnson et al. (2016) - CRN bisimulation equivalence translation scheme: qian2011_3D_var1.ts
-
37
THE COMPILER FRAMEWORK
a txA
xbtB
x t b
x* t*t* F1
x
t*t* x*
taF2
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
CRN trajectory equivalence
CRN condensation
CRN enumeration
1
2
3
nucleotidesequences
4
x
t*t* x*
tax
btx t b
x* t*t*
a tx
x t b
x* t*t*
a t x
bind
3-way branch migration
unbind
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
i1
i2
i3
KinDA project
nucleotide-level reaction rates
a tx
x t b
x* t*t*
xbtx
t*t* x*
ta
A BF1 F2+ +
Nuskell project Peppercorn project
a txA
+x
t*t* x*
taF2
x
t*t* x*
taa
xt
condensed reaction rates
domain-level reaction rates
Badelt et al. (2017) - Nuskell Grun et al. (2014) - Peppercorn
Shin et al. (2017) - CRN pathway decomposition equivalence Johnson et al. (2018) - CRN bisimulation equivalence
Berleant et al. (submitted) - KinDA
-
38
KINETIC NUCLEOTIDE-LEVEL ANALYSIS
A
B
121* 1*2*1
2
domain level sequence level
544
35*
212
54
1 2
435*
2
544
35*
2
435*
212
domain level
sequence level
544
35*
212
54
1 2
435*
2535*
1
Berleant, Berlind, Badelt, Dannenberg, Schaeffer, Winfree (submitted) - Automated Sequence-LevelAnalysis of Kinetics and Thermodynamics for Domain-Level DNA Strand-Displacement Systems
-
39
KINETIC NUCLEOTIDE-LEVEL ANALYSIS
S1
C1
P2
P3
Rd1s* d2* t3*
d1s d2
t2
ab
b*
a*
c*c
t1*
T2
d1s
t2*
act1
t1*b c*
cb*
d1s
T2 b a t2
t2*ab*d2
t3
time, hr
conc
entra
tion,
nM
conc
entra
tion,
nM -
time, s
P1act1
a*c*t1* t2*
I1
t2
ab
b*c
T2
d1s
S2
t1*
a*b*
b
a
c c*
t2*
t1
d2
t3
Dd1s d2
RW
t3
b
b*
d1s*
t3*
d2d2* a*
d1s
T2 a t2
t2*
k1 = (5.23 ± 1.69) x 105 M-1s-1
k2 = (174 ± 28) s-1
k1 < 78.7 M-1s-1
k1 = (9.49 ± 2.92) x 105 M-1s-1
k2 = (0.66 ± 0.13) s-1
k1 = (1.33 ± 0.22) x 106 M-1s-1
k2 = (2.65 ± 0.31) s-1
S2-R
d2
t3
d1s*d2*t3*
d1sd2
t1*
a*b*
b
a
c c*
t2*
t1
d2
t3
d1s*d2*
t3*
d1sd2
t1*
a*b*
b
a
c c*
t2*
t1
e51
e48
S2 R
C1 P3 RWD
I1S2-R
k1 = (3.18 ± 0.30) x 107 M-1s-1
k2 = (1.57 ± 0.26) x 107 s-1
k1 = (1.14 ± 0.43) x 105 M-1s-1
k2 = (1.14 ± 0.24) s-1
A C
DB DOMAIN SEQUENCECAGTCCCAAGTCACCACCTAGCGCACTCGCGATACGAGGCCTGG
CCGTTT
CCAGATCAGCAGCCATTCGTTC
ACATCC
CCTCTACTCA
ba
ct1t2t3
CCAAACCTTCATCTTC
TACTCG
d1sTTT2
d2
Berleant, Berlind, Badelt, Dannenberg, Schaeffer, Winfree (submitted) - Automated Sequence-LevelAnalysis of Kinetics and Thermodynamics for Domain-Level DNA Strand-Displacement Systems
-
40
THANKS TO
Erik Winfree Seung WooShin
Casey Grun JosephBerleant
Robert F.Jonhson
ChrisThachuk
FritsDannenberg
Chris Berlind KarthikSarma
Qing Dong JosephSchaeffer
Brian Wolfe
http://www.github.com/DNA-and-Natural-Algorithms-Group/nuskellhttp://www.github.com/DNA-and-Natural-Algorithms-Group/peppercornenumerator
http://www.github.com/DNA-and-Natural-Algorithms-Group/KinDAThis research was funded in parts by:
The Caltech Biology and Biological Engineering Division Fellowship. The U.S. National Science Foundation NSF Grant CCF-1213127 and NSF Grant CCF-1317694.
The Gordon and Betty Moore Foundation's Programmable Molecular Technology Initiative (PMTI).
http://www.github.com/DNA-and-Natural-Algorithms-Group/nuskellhttp://www.github.com/DNA-and-Natural-Algorithms-Group/peppercornenumeratorhttp://www.github.com/DNA-and-Natural-Algorithms-Group/kinda