Skip to main content

Advertisement

Log in

DNA walker circuits: computational potential, design, and verification

  • Published:
Natural Computing Aims and scope Submit manuscript

Abstract

Unlike their traditional, silicon counterparts, DNA computers have natural interfaces with both chemical and biological systems. These can be used for a number of applications, including the precise arrangement of matter at the nanoscale and the creation of smart biosensors. Like silicon circuits, DNA strand displacement systems (DSD) can evaluate non-trivial functions. However, these systems can be slow and are susceptible to errors. It has been suggested that localised hybridization reactions could overcome some of these challenges. Localised reactions occur in DNA ‘walker’ systems which were recently shown to be capable of navigating a programmable track tethered to an origami tile. We investigate the computational potential of these systems for evaluating Boolean functions and forming composable circuits. We find that systems of multiple walkers have severely limited potential for parallel circuit evaluation. DNA walkers, like DSDs, are also susceptible to errors. We develop a discrete stochastic model of DNA walker ‘circuits’ based on experimental data, and demonstrate the merit of using probabilistic model checking techniques to analyse their reliability, performance and correctness. This analysis aids in the design of reliable and efficient DNA walker circuits.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Explore related subjects

Discover the latest articles and news from researchers in related subjects, suggested using machine learning.

Notes

  1. We do not investigate circuit area in this paper.

  2. It is not a necessary condition that the two disjoint sets of paths reaching the join were forked by a common gate, only that they can be partitioned based on the value of some variable.

  3. A Boolean function must differ from another on at least one input. As such, there are \(2^{2^n}\) possible Boolean functions of \(n\) variables that differ in at least one of the \(2^n\) possible inputs. Intuitively, this is the number of unique binary strings of length \(2^n\).

  4. Intel i5-2520M, Fedora 3.8.4-102.fc17.x86 64, OpenJDK RE-1.7, PRISM 4.0.3

  5. www.prismmodelchecker.org/casestudies/dna_walkers.php

References

  • Aziz A, Sanwa K, Singhal V, Brayton R (2006) Verifying continuous time markov chains. Springer, Heidelberg, pp 269–276

    Google Scholar 

  • Baier C, Haverkort B, Hermanns H, Katoen J (2003) Model-checking algorithms for continuous-time markov chains. IEEE Trans Softw Eng 29:524–541

    Google Scholar 

  • Bath J, Green SJ, Allen KE, Turberfield AJ (2009) Mechanism for a directional, processive, and reversible dna motor. Small 5:1513–1516

    Article  Google Scholar 

  • Bath J, Green SJ, Turberfield AJ (2005) A free-running DNA motor powered by a nicking enzyme. Angewandte Chem 44:4358–4361

    Google Scholar 

  • Bryant RE (1992) Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Comput Surv 24:293–318

    Google Scholar 

  • Cha TG, Pan J, Chen H, Salgado J, Li X, Mao C, Choi JH (2014) A synthetic DNA motor that transports nanoparticles along carbon nanotubes. Nat nanotechnol 9:39–43

    Google Scholar 

  • Chandran H, Gopalkrishnan N, Phillips A, Reif J (2011) Localized hybridization circuits. DNA Comput Mol Program 6937:64–83

    Article  Google Scholar 

  • Dannenberg F, Hahn EM, Kwiatkowska M (2013) Computing cumulative rewards using fast adaptive uniformisation. In: Proceedings of the 11th conference on computational methods in systems biology (CMSB’13)

  • Green S, Bath J, Turberfield A (2008) Coordinated chemomechanical cycles: a mechanism for autonomous molecular motion. Phys Rev Lett 101:238101

    Google Scholar 

  • Hérault T, Lassaigne R, Magniette F, Peyronnet S (2004) Approximate probabilistic model checking. In: Steffen B, Levi G. (eds.) VMCAI. Lecture Notes in Computer Science, vol 2937. Springer, Heidelberg, pp 73–84

  • Kary RM (1972) Reducibility among combinatorial problems. Springer, Tbilisi

    Google Scholar 

  • Kwiatkowska M, Norman G, Parker D (2007) Stochastic model checking. In: Bernardo M, Hillston J. (eds.) Formal methods for the design of Computer, Communication and Software Systems: Performance Evaluation (SFM’07). LNCS (Tutorial Volume), vol 4486. Springer, Berlin, pp 220–270

  • Kwiatkowska M, Norman G, Parker D (2010) Symbolic systems biology. Probabilistic model checking for systems biology. Jones and Bartlett, Sudbury, pp 31–59

    Google Scholar 

  • Kwiatkowska M, Norman G, Parker D (2011) PRISM 4.0: Verification of probabilistic real-time systems. Compu Aided Verif 6806:585–591

    MathSciNet  Google Scholar 

  • Muscat RA, Bath J, Turberfield AJ (2011) A programmable molecular robot. Nano Letters 11:982–987

    Google Scholar 

  • Muscat RA, Bath J, Turberfield AJ (2012) Small molecule signals that direct the route of a molecular cargo. Small 8:3593–3597

    Article  Google Scholar 

  • Omabegho T, Sha R, Seeman NC (2009) A bipedal DNA Brownian motor with coordinated legs. Science 324:67–71

    Article  Google Scholar 

  • Qian L, Soloveichik D, Winfree E (2010) Efficient Turing-universal computation with DNA polymers. DNA Comput Mol Program 6518:123–140

    Article  Google Scholar 

  • Qian L, Winfree E (2011) Scaling up digital circuit computation with DNA strand displacement cascades. Science 332:1196–1201

    Article  Google Scholar 

  • Seelig G, Soloveichik D, Zhang D, Winfree E (2006) Enzyme-free nucleic acid logic circuits. Science 314:1585–1588

    Article  Google Scholar 

  • Semenov O, Olah MJ, Stefanovic D (2011) Mechanism of diffusive transport in molecular spider models. Phys Rev E 83:021117

    Google Scholar 

  • von Neumann J (1956) Probabilistic logics and synthesis of reliable organisms from unreliable components. In: Shannon C, McCarthy J (eds) Automata studies. Princeton University Press, Princeton, pp 43–98

    Google Scholar 

  • Wagner K (1937) Über eine Eigenschaft der ebenen Komplexe. Mathematische Annalen 114:570–590

    Article  MathSciNet  Google Scholar 

  • Wickham SFJ, Bath J, Katsuda Y, Endo M, Hidaka K, Sugiyama H, Turberfield AJ (2012) A DNA-based molecular motor that can navigate a network of tracks. Nat Nanotechnol 7:169–173

    Google Scholar 

  • Wickham SFJ, Endo M, Katsuda Y, Hidaka K, Bath J, Sugiyama H, Turberfield AJ (2011) Direct observation of stepwise movement of a synthetic molecular transporter. Nat Nanotechnol 6:166–169

    Google Scholar 

  • Yin P, Yan H, Daniell XG, Turberfield AJ, Reif JH (2004) A unidirectional DNA walker that moves autonomously along a track. Angewandte Chem Int Ed 43:4906–4911

    Google Scholar 

  • Zhang DY, Winfree E (2009) Control of DNA strand displacement kinetics using toehold exchange. J Am Chem Soc 131:17303–17314

    Google Scholar 

Download references

Acknowledgments

We thank Masami Hagiya, Jonathan Bath, Alex Lucas, Andrew Phillips and Will Evans for useful discussions. The authors are supported by a Microsoft Research scholarship (FD), ERC AdG VERIWARE, EPSRC Grant EP/G037930/1, NSF grant CCF/HCC-1213127, a Banting Fellowship (CT), a Royal Society - Wolfson Research Merit Award (AJT), and Oxford Martin School.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Marta Kwiatkowska.

Appendix

Appendix

1.1 Proof of Lemma 2

Proof

Let \(G\) be any fork gate that is reachable, otherwise it is redundant. When both the left and right output tracks are unguarded, then either track is accessible simultaneously and thus \(G\) is not deterministic. Suppose only one output track of \(G\) is guarded. If \(G\) is only reachable when the single guard evaluates to false, then that guarded output track is never taken and \(G\) is trivial (and therefore deterministic by Lemma 1). Otherwise, if \(G\) is reachable only when the guard evaluates to true, then both output tracks from \(G\) are accessible simultaneously and, as before, \(G\) is not deterministic. Finally, suppose the left and right output tracks of \(G\) have the same guard. Since \(G\) is reachable, then there are only two possibilities: the common guard evaluates to true (both output tracks are accessible simultaneously), or the common guard evaluates to false, resulting in a deadlock. In either case, \(G\) is not deterministic.\(\square \)

1.2 Proof of Thereom 1

Proof

(if—sufficiency) If \(G\) is trivial it is deterministic by Lemma 1. Suppose it is not trivial. Therefore, by assumption, the output tracks have guards which are negations of each other. Thus, there is always exactly one unblocked path from \(G\) and it is therefore deterministic.

(only if—necessity) Suppose, by contradiction, that \(G\) is deterministic, not trivial, and does not have output track guards that are negations of each other. Since, by assumption, \(G\) is not trivial, then by Lemma 2, \(G\) cannot be deterministic unless it has distinct guards for its left and right output tracks. Without loss of generality, let these be \(G_L\) and \(G_R\), respectively (\(G_L \not \equiv G_R\)). Let \(p\) be any path that can reach the gate.

Case 1

(p has no guards in common with an output track of G) Consider any variable assignment where \(p\) reaches \(G\) and set \(G_L = G_R = false\). The gate \(G\) is still reachable via \(p\) since they do not share a guard. However, reaching \(G\) results in a deadlock. Contradiction.

Case 2

( p has a guard or its negation in common with one output track of G) Suppose \(p\) contains the guard \(G_L\). Consider any variable assignment where \(p\) reaches \(G\) and therefore \(G_L=true\). By assigning \(G_R = true\), both output tracks of \(G\) are accessible. Contradiction. The case when \(p\) contains the guard \(G_R\) is symmetric. Similarly, it can be shown that variable assignments exist to ensure \(G\) will result in a deadlock, and thus a contradiction, when \(p\) contains \(\lnot G_L\) or \(\lnot G_R\).

Case 3

(p has a guard or its negation in common with both output tracks of G) Since \(G\) is not trivial then (i) \(p\) is not guarded by both \(G_L\) and \(\lnot G_R\), and (ii) \(p\) is not guarded by both \(\lnot G_L\) and \(G_R\). By condition (i) and (ii) \(p\) must either contain the guards \(G_L\) and \(G_R\) or the guards \(\lnot G_L\) and \(\lnot G_R\). When \(p\) reaches \(G\) and the former is true, then two output tracks are accessible, and when the latter is true, a deadlock occurs. Both cases result in a contradiction.\(\square \)

1.3 Proof of Theorem 2

Proof

(if—sufficiency) If the non-redundant gate is a sink then any path that reaches it from its left input track cannot be extended via its right input track, and vice versa; it is therefore deterministic. Suppose the gate is not a sink and its left input track is guarded by \(G\), the right by \(\lnot G\) and, prior to reaching those guards, all paths that can reach the left input must traverse a track guarded by \(G\) and all paths that can reach the right must traverse a track guarded by \(\lnot G\). There are two cases to consider. Suppose \(G\) evaluates to true. Then, no path can reach the right input since, by the assumption, those paths must traverse a track guarded by \(\lnot G\) prior to reaching the gate. It follows that all paths that can reach the gate when \(G\) evaluates to true must be to the left input. Furthermore, as the right input is guarded by \(\lnot G\), those paths can only be extended via the output of the gate. The other case (\(G\) evaluates to false) is symmetric. Furthermore, as the guards are negations of each other, they cannot simultaneously evaluate to false and cause a potential deadlock.

(only if—necessity) A non-redundant sink is deterministic, so consider the case when the gate is not a sink. By definition of a join gate that is not a sink, it must have two guarded input tracks. Let \(G_L\) and \(G_R\) be the guards of the left and right inputs, respectively. First, consider all paths that can reach the left input, guarded by \(G_L\). It must simultaneously be true that (i) none of those paths traverse a track guarded by \(\lnot G_L\) and (ii) all of those paths traverse a track guarded by \(\lnot G_R\). If condition (i) is not satisfied, then there would exist a path that traverses a track guarded by \(\lnot G_L\) and, to extend past the join gate, must traverse another guarded by \(G_L\). As this is not possible, the path would end in a deadlock and the gate would not be deterministic. If condition (ii) is not satisfied then there would exist some path \(p\) that does not traverse a track guarded by \(\lnot G_R\), but may possibly traverse a track guarded by \(G_R\). In this case, there exists a variable assignment where \(G_R\), and all other guards on path \(p\), evaluate to true. With such a variable assignment, path \(p\) could be extended via the output track or the right input track. Thus, condition (ii) must also be satisfied, as otherwise the gate would not be deterministic. The conditions (and the argument that both are necessary) when considering all paths that can initially reach the right input, guarded by \(G_R\), are symmetric.

The sufficiency argument shows the gate is deterministic when \(G_L \equiv \lnot G_R\). It remains to show it is not deterministic otherwise. First, consider the consequence when both \(G_L\) and \(G_R\) evaluate to true. By condition (ii) all paths leading to the left (right) input traverse a track guarded by \(\lnot G_R\) (\(\lnot G_L\)). In this case, no paths can reach the gate. Thus, consider when both \(G_L\) and \(G_R\) evaluate to false. The conditions permit that paths can reach the gate; however, if any path does it will deadlock as both inputs to the gate are blocked. Thus, for all paths that can reach the gate, it will be deterministic only when \(G_L \equiv \lnot G_R\). \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Dannenberg, F., Kwiatkowska, M., Thachuk, C. et al. DNA walker circuits: computational potential, design, and verification. Nat Comput 14, 195–211 (2015). https://doi.org/10.1007/s11047-014-9426-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11047-014-9426-9

Keywords