Natural Computing

, Volume 15, Issue 1, pp 115–128 | Cite as

Fast arithmetic in algorithmic self-assembly

  • Alexandra Keenan
  • Robert Schweller
  • Michael Sherman
  • Xingsi Zhong
Article

Abstract

In this paper we consider the time complexity of adding two n-bit numbers together within the tile self-assembly model. The (abstract) tile assembly model is a mathematical model of self-assembly in which system components are square tiles with different glue types assigned to tile edges. Assembly is driven by the attachment of singleton tiles to a growing seed assembly when the net force of glue attraction for a tile exceeds some fixed threshold. Within this frame work, we examine the time complexity of computing the sum of two n-bit numbers, where the input numbers are encoded in an initial seed assembly, and the output sum is encoded in the final, terminal assembly of the system. We show that this problem, along with multiplication, has a worst case lower bound of \(\varOmega ( \sqrt{n} )\) in 2D assembly, and \(\varOmega (\root 3 \of {n})\) in 3D assembly. We further design algorithms for both 2D and 3D that meet this bound with worst case run times of \(O(\sqrt{n})\) and \(O(\root 3 \of {n})\) respectively, which beats the previous best known upper bound of O(n). Finally, we consider average case complexity of addition over uniformly distributed n-bit strings and show how we can achieve \(O(\log n)\) average case time with a simultaneous \(O(\sqrt{n})\) worst case run time in 2D. As additional evidence for the speed of our algorithms, we implement our algorithms, along with the simpler O(n) time algorithm, into a probabilistic run-time simulator and compare the timing results.

Keywords

Algorithmic self-assembly Computational geometry Adder Tile assembly model 

Notes

Acknowledgments

We would like to thank Ho-Lin Chen and Damien Woods for helpful discussions regarding Lemma 4 and Florent Becker for discussions regarding timing models in self-assembly. We would also like to thank Matt Patitz for helpful discussions of tile assembly simulation. The authors were supported in part by National Science Foundation Grant CCF-1117672.

References

  1. Abel Z, Benbernou N, Damian M, Demaine E, Demaine M, Flatland R, Kominers S, Schweller R (2010) Shape replication through self-assembly and RNase enzymes. In: SODA 2010: proceedings of the twenty-first annual ACM-SIAM symposium on discrete algorithms (Austin, Texas), Society for Industrial and Applied MathematicsGoogle Scholar
  2. Adleman L, Cheng Q, Goel A, Huang M-D (2001) Running time and program size for self-assembled squares. In: Proceedings of the thirty-third annual ACM symposium on theory of computing (New York, NY, USA), ACM, pp 740–748Google Scholar
  3. Adleman LM, Cheng Q, Goel A, Huang M-DA, Kempe D, de Espanés PM, Rothemund Paul WK (2002) Combinatorial optimization problems in self-assembly. In: Proceedings of the thirty-fourth annual ACM symposium on theory of computing, pp 23–32Google Scholar
  4. Becker F, Rapaport I, Rémila E (2006) Self-assembling classes of shapes with a minimum number of tiles, and in optimal time. Foundations of Software Technology and Theoretical Computer Science (FSTTCS), pp 45–56Google Scholar
  5. Brun Y (2007) Arithmetic computation in the tile assembly model: addition and multiplication. Theor Comput Sci 378:17–31CrossRefMathSciNetMATHGoogle Scholar
  6. Bryans N, Chiniforooshan E, Doty D, Kari L, Seki S (2011) The power of nondeterminism in self-assembly. In: SODA 2011: proceedings of the 22nd annual ACM-SIAM symposium on discrete algorithms, SIAM, pp 590–602Google Scholar
  7. Chandran H, Gopalkrishnan N, Reif JH (2009) The tile complexity of linear assemblies. In: 36th international colloquium on automata, languages and programming, vol 5555Google Scholar
  8. Cheng Q, Aggarwal G, Goldwasser MH, Kao M-Y, Schweller RT, de Espanés PM (2005) Complexities for generalized models of self-assembly. SIAM J Comput 34:1493–1515CrossRefMathSciNetMATHGoogle Scholar
  9. Cheng Q, Goel A, de Espanés PM (2004) Optimal self-assembly of counters at temperature two. In: Proceedings of the first conference on foundations of nanoscience: self-assembled architectures and devicesGoogle Scholar
  10. Cook M, Fu Y, Schweller RT (2011) Temperature 1 self-assembly: deterministic assembly in 3d and probabilistic assembly in 2d. In: Dana R (ed) Proceedings of the twenty-second annual ACM-SIAM symposium on discrete algorithms, SODA 2011. SIAM, pp 570–589Google Scholar
  11. Demaine E, Patitz M, Rogers T, Schweller R, Summers S, Woods D (2013) The two-handed tile assembly model is not intrinsically universal. In: Proceedings of the 40th international colloquium on automata, languages and programming (ICALP 2013)Google Scholar
  12. Demaine ED, Demaine ML, Fekete SP, Patitz MJ, Schweller RT, Winslow A, Woods D (2014) One tile to rule them all: simulating any tile assembly system with a single universal tile. In: ICALP 2014: proceedings of the 41st international colloquium on automata, languages and programmingGoogle Scholar
  13. Doty D (2010) Randomized self-assembly for exact shapes. SIAM J Comput 39(8):3521–3552CrossRefMathSciNetMATHGoogle Scholar
  14. Doty D, Patitz MJ, Reishus D, Schweller RT, Summers SM (2010) Strong fault-tolerance for self-assembly with fuzzy temperature. In: Proceedings of the 51st annual IEEE symposium on foundations of computer science (FOCS 2010), pp 417–426Google Scholar
  15. Doty D, Lutz JH, Patitz MJ, Schweller R, Summers SM, Woods D (2012) The tile assembly model is intrinsically universal. In: FOCS 2012: proceedings of the 53rd IEEE conference on foundations of computer scienceGoogle Scholar
  16. Fu B, Patitz MJ, Schweller R, Sheline R (2012) Self-assembly with geometric tiles. In: ICALP 2012: proceedings of the 39th international colloquium on automata, languages and programming (Warwick, UK)Google Scholar
  17. Kao M-Y, Schweller RT (2008) Randomized self-assembly for approximate shapes. In: International colloqium on automata, languages, and programming, lecture notes in computer science, vol 5125. Springer, pp 370–384Google Scholar
  18. Keenan A, Schweller RT, Sherman M, Zhong X (2013) Fast arithmetic in algorithmic self-assembly. CoRR arXiv:1303.2416
  19. Mao C, LaBean TH, Relf JH, Seeman NC (2000) Logical computation using algorithmic self-assembly of DNA triple-crossover molecules. Nature 407(6803):493–496CrossRefGoogle Scholar
  20. Meunier P-E, Patitz MJ, Summers SM, Theyssier G, Winslow A, Woods D (2014) Intrinsic universality in tile self-assembly requires cooperation. In: Proceedings of the twenty-fifth annual ACM-SIAM symposium on discrete algorithmsGoogle Scholar
  21. Schilling M (1990) The longest run of heads. Coll Math J 21(3):196–207CrossRefMathSciNetMATHGoogle Scholar
  22. Schweller R, Sherman M (2013) Fuel efficient computation in passive self-assembly. In: SODA 2013: proceedings of the 24th annual ACM-SIAM symposium on discrete algorithms, SIAM, pp 1513–1525Google Scholar
  23. Winfree E (1998) Algorithmic self-assembly of DNA. Ph.D. thesis, California Institute of Technology, June 1998Google Scholar
  24. Woods D, Chen H-L, Goodfriend S, Dabby N, Winfree E, Yin P (2012) Efficient active self-assembly of shapes. ManuscriptGoogle Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2015

Authors and Affiliations

  • Alexandra Keenan
    • 1
  • Robert Schweller
    • 1
  • Michael Sherman
    • 1
  • Xingsi Zhong
    • 1
  1. 1.University of Texas - Pan AmericanEdinburgUSA

Personalised recommendations