Abstract
Self-assembly is a powerful process found in nature that guides simple objects assembling, on their own, into complex structures. Self-assembly is of interest to computer scientists because self-assembling systems can compute functions, assemble shapes, and guide distributed robotics systems. The tile assembly model is a formal mathematical model of self-assembly that allows the study of time and space complexities of self-assembling systems that lie at the heart of several molecular computer implementations and distributed computational software systems. These implementations and systems require efficient tile systems with small tilesets and fast execution times. The state of the art, however, requires vastly complex tile systems with large tilesets to implement fast algorithms. In this paper, I present \({\mathbb{S}}_{FS},\) a tile system that decides 3-SAT by creating \(O^{\star}(1.8393^n)\) nondeterministic assemblies in parallel, improving on the previous best known solution that requires \(\Uptheta(2^n)\) such assemblies. This solution directly improves the feasibility of building molecular 3-SAT solvers and efficiency of distributed software. I formally prove the correctness of the system, the number of required parallel assemblies, that the size of the system’s tileset is \(147 = \Uptheta(1),\) and that the assembly time is nondeterministic linear in the size of the input.
Similar content being viewed by others
References
Abelson H, Allen D, Coore D, Hanson C, Homsy G, Knight TF Jr, Nagpal R, Rauch E, Sussman GJ, Weiss R (2000) Amorphous computing. Commun ACM 43(5):74–82. ISSN 0001-0782. doi:10.1145/332833.332842
Adleman L (2000) Towards a mathematical theory of self-assembly. Technical Report 00-722, Department of Computer Science, University of Southern California, Los Angeles, CA
Adleman L, Cheng Q, Goel A, Huang M-D, Kempe D, de Espanés PM, Rothemund PWK (May 2002a) Combinatorial optimization problems in self-assembly. In: Proceedings of the 34th annual ACM symposium on theory of computing (STOC02), Montreal, Quebec, Canada, pp 23–32. doi:10.1145/509907.509913
Adleman L, Kari J, Kari L, Reishus D (November 2002b) On the decidability of self-assembly of infinite ribbons. In: Proceedings of the 43rd annual IEEE symposium on foundations of computer science (FOCS02), Ottawa, Ontario, Canada, pp 530–537
Aggarwal G, Cheng Q, Goldwasser MH, Kao M-Y, de Espanés PM, Schweller RT (2005) Complexities for generalized models of self-assembly. SIAM J Comput 34(6):1493–1515. doi:10.1137/S0097539704445202
Barish R, Rothemund PWK, Winfree E (2005) Two computational primitives for algorithmic self-assembly: copying and counting. Nano Lett 5(12):2586–2592. doi:10.1021/nl052038l
Barish RD, Schulman R, Rothemund PWK, Winfree E (2009) An information-bearing seed for nucleating algorithmic self-assembly. Proc Natl Acad Sci USA. doi:10.1073/pnas.0808736106
Berger R (1966) The undecidability of the domino problem. Number 66 in Memoirs Series. American Mathematical Society, Providence, RI, USA
Braich R, Chelyapov N, Johnson CR, Rothemund PWK, Adleman L (2002) Solution of a 20-variable 3-SAT problem on a DNA computer. Science 296(5567):499–502. doi:10.1126/science.1069528
Brun Y (2007) Arithmetic computation in the tile assembly model: Addition and multiplication. Theor Comput Sci 378(1):17–31. ISSN 0304-3975. doi:10.1016/j.tcs.2006.10.025
Brun Y (2008a) Nondeterministic polynomial time factoring in the tile assembly model. Theor Comput Sci 395(1):3–23. ISSN 0304-3975. doi:10.1016/j.tcs.2007.07.051
Brun Y (2008b) Solving NP-complete problems in the tile assembly model. Theor Comput Sci 395(1):31–46. ISSN 0304-3975. doi:10.1016/j.tcs.2007.07.052
Brun Y (2008c) Solving satisfiability in the tile assembly model with a constant-size tileset. J Algorithm 63(4):151–166. ISSN 0196-6774. doi:10.1016/j.jalgor.2008.07.002
Brun Y, Medvidovic N (2008) Preserving privacy in distributed computation via self-assembly. Technical Report USC-CSSE-2008-819, University of Southern California, Center for Software Engineering
Brun Y, Reishus D (2009) Path finding in the tile assembly model. Theor Comput Sci 410(15):1461–1472. ISSN 0304-3975. doi:10.1016/j.tcs.2008.12.008
Chen K, Ramachandran V (2001) A space-efficient randomized DNA algorithm for k-SAT. DNA Comput LNCS 2054:199–208. doi:10.1007/3-540-44992-2_13
Demaine E, Demaine M, Fekete S, Ishaque M, Rafalin E, Schweller R (2008) Staged self-assembly: Nanomanufacture of arbitrary shapes with o(1) glues. In: Max G, Hao Y (eds) DNA computing, vol 4848. Berlin: Springer, pp 1–14. doi:10.1007/978-3-540-77962-9_1
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 (FOCS10), pp 417–426. doi:10.1109/FOCS.2010.47
Fujibayashi K, Zhang DY, Winfree E, Murata S (2009) Error suppression mechanisms for DNA tile self-assembly and their simulation. Nat Comput 8:589–612. ISSN 1567-7818. doi:10.1007/s11047-008-9093-9
Kao M-Y, Schweller R (January 2006) Reducing tile complexity for self-assembly through temperature programming. In: Proceedings of the 17th annual ACM-SIAM symposium on discrete algorithms (SODA06), Miami, FL, USA, pp 571–580. doi:10.1145/1109557.1109620
Kullmann O (1997) Worst-case analysis, 3-SAT decision and lower bounds: approaches for improved SAT algorithms. DIMACS Ser Discret Math Theor Comput Sci 35:261–313
Kullmann O (1999) New methods for 3-SAT decisions and worst-case analysis. Theor Comput Sci 223:1–72. doi:10.1016/S0304-3975(98)00017-6
Lagoudakis MG, LaBean TH (1999) 2D DNA self-assembly for satisfiability. DIMACS Ser Discret Math Theor Comput Sci 54:141–154
McLurkin J, Smith J, Frankel J, Sotkowitz D, Blau D, Schmidt B (March 2006) Speaking swarmish: human-robot interface design for large swarms of autonomous mobile robots. In Proceedings of the AAAI spring symposium, Stanford, CA, USA
Monien B, Speckenmeyer E (1985) Solving satisfiability in less than 2n steps. Discrete Appl Math 10(3):287–296. doi:10.1016/0166-218X(85)90050-2
Paturi R, Pudlák P, Zane F (1997) Satisfiability coding lemma. In: Proceedings of the 38th annual symposium on foundations of computer science (FOCS97), Miami Beach, FL, USA, pp 566–574. ISBN 0-8186-8197-7. doi:10.1109/SFCS.1997.646146
Robinson RM (1971) Undecidability and nonperiodicity for tilings of the plane. Invent Math 12(3):177–209
Rothemund PWK, Winfree E (May 2000) The program-size complexity of self-assembled squares. In: Proceedings of the 32nd annual ACM symposium on theory of computing (STOC00), Portland, OR, USA, pp 459–468. doi:10.1145/335305.335358
Rothemund PWK, Papadakis N, Winfree E (2004) Algorithmic self-assembly of DNA Sierpinski triangles. PLoS Biol 2(12):e424. doi:10.1371/journal.pbio.0020424
Sakamoto K, Gouzu H, Komiya K, Kiga D, Yokoyama S, Yokomori T (2000) Molecular computation by DNA hairpin formation. Science, 288(5469):1223–1226. doi:10.1126/science.288.5469.1223
Schiermeyer I (1993) Solving 3-satisfiability in less than 1.579n steps. Comput Sci Logic 702:379–394
Sipser M (1997) Introduction to the theory of computation. PWS Publishing Company
Soloveichik D, Winfree E (2007) Complexity of self-assembled shapes. SIAM J Comput 36(6):1544–1569. doi:10.1137/S0097539704446712
Wang H (1961) Proving theorems by pattern recognition. II. Bell Syst Tech J 40:1–42
Wang H (1962) An unsolvable problem on dominoes. Technical Report BL30 (II-15), Harvard Computation Laboratory
Winfree E (1998a) Simulations of computing by self-assembly of DNA. Technical Report CS-TR:1998:22. California Institute of Technology, Pasadena, CA
Winfree E (1998b) Algorithmic self-assembly of DNA. PhD thesis, California Institute of Technology, Pasadena, CA, USA, June
Winfree E, Bekbolatov R (June 2003) Proofreading tile sets: error correction for algorithmic self-assembly. In: Proceedings of the 43rd annual IEEE symposium on foundations of computer science (FOCS02), vol 2943, pp 126–144, Madison, WI, USA. doi:10.1007/978-3-540-24628-2_13
Winfree E, Yang X, Seeman NC (1998) Universal computation via self-assembly of DNA: some theory and experiments. DNA Based Computers II, pp 191–213
Woeginger GJ (2003) Exact algorithms for NP-hard problems: a survey. Combinatorial Optimization - Eureka, You Shrink! 2570:185–207. doi:10.1007/3-540-36478-1_17
Yin P, Hariadi RF, Sahu S, Choi HMT, Park SH LaBean TH, Reif JH (2008) Programming DNA tube circumferences. Science 321(5890):824–826. doi:10.1126/science.1157312
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Brun, Y. Efficient 3-SAT algorithms in the tile assembly model. Nat Comput 11, 209–229 (2012). https://doi.org/10.1007/s11047-011-9299-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11047-011-9299-0