Algorithmica

, Volume 78, Issue 1, pp 1–46

Binary Pattern Tile Set Synthesis Is NP-Hard

  • Lila Kari
  • Steffen Kopecki
  • Pierre-Étienne Meunier
  • Matthew J. Patitz
  • Shinnosuke Seki
Article

DOI: 10.1007/s00453-016-0154-7

Cite this article as:
Kari, L., Kopecki, S., Meunier, PÉ. et al. Algorithmica (2017) 78: 1. doi:10.1007/s00453-016-0154-7
  • 131 Downloads

Abstract

We solve an open problem, stated in 2008, about the feasibility of designing efficient algorithmic self-assembling systems which produce 2-dimensional colored patterns. More precisely, we show that the problem of finding the smallest tile assembly system which rectilinearly self-assembles an input pattern with 2 colors (i.e., 2-Pats) is \(\mathbf {NP}\)-hard. Of both theoretical and practical significance, the more general k-Pats problem has been studied in a series of papers which have shown k-Pats to be \(\mathbf {NP}\)-hard for \(k=60\), \(k=29\), and then \(k=11\). In this paper, we prove the fundamental conjecture that 2-Pats is \(\mathbf {NP}\)-hard, concluding this line of study. While most of our proof relies on standard mathematical proof techniques, one crucial lemma makes use of a computer-assisted proof, which is a relatively novel but increasingly utilized paradigm for deriving proofs for complex mathematical problems. This tool is especially powerful for attacking combinatorial problems, as exemplified by the proof for the four color theorem and the recent important advance on the Erdős discrepancy problem using computer programs. In this paper, these techniques will be brought to a new order of magnitude, computational tasks corresponding to one CPU-year. We massively parallelize our program, and provide a full proof of its correctness. Its source code is freely available online.

Keywords

Algorithmic DNA self-assembly Pattern assembly NP-hardness Computer-assisted proof Massively-parallelized program 

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  • Lila Kari
    • 1
  • Steffen Kopecki
    • 1
  • Pierre-Étienne Meunier
    • 2
  • Matthew J. Patitz
    • 3
  • Shinnosuke Seki
    • 4
  1. 1.Department of Computer ScienceUniversity of Western OntarioLondonCanada
  2. 2.Department of Computer ScienceAalto UniversityAaltoFinland
  3. 3.Department of Computer Science and Computer EngineeringUniversity of ArkansasFayettevilleUSA
  4. 4.Department of Communication Engineering and InformaticsUniversity of Electro-CommunicationsTokyoJapan