The Power of Nondeterminism in Self-Assembly

We investigate the role of nondeterminism in Winfree's abstract Tile Assembly Model (aTAM), which was conceived to model artificial molecular self-assembling systems constructed from DNA. Of particular practical importance is to find tile systems that minimize resources such as the number of distinct tile types, each of which corresponds to a set of DNA strands that must be custom-synthesized in actual molecular implementations of the aTAM. We seek to identify to what extent the use of nondeterminism in tile systems affects the resources required by such molecular shape-building algorithms. We first show a"molecular computability theoretic"result: there is an infinite shape S that is uniquely assembled by a tile system but not by any deterministic tile system. We then show an analogous phenomenon in the finitary"molecular complexity theoretic"case: there is a finite shape S that is uniquely assembled by a tile system with c tile types, but every deterministic tile system that uniquely assembles S has more than c tile types. In fact we extend the technique to derive a stronger (classical complexity theoretic) result, showing that the problem of finding the minimum number of tile types that uniquely assemble a given finite shape is Sigma-P-2-complete. In contrast, the problem of finding the minimum number of deterministic tile types that uniquely assemble a shape was shown to be NP-complete by Adleman, Cheng, Goel, Huang, Kempe, Moisset de Espan\'es, and Rothemund (Combinatorial Optimization Problems in Self-Assembly, STOC 2002). The conclusion is that nondeterminism confers extra power to assemble a shape from a small tile system, but unless the polynomial hierarchy collapses, it is computationally more difficult to exploit this power by finding the size of the smallest tile system, compared to finding the size of the smallest deterministic tile system.


Introduction
Tile self-assembly is an algorithmically rich model of "programmable crystal growth". It is possible to design molecules (square-like "tiles") with specific binding sites so that, even subject to the chaotic nature of molecules floating randomly in a well-mixed chemical soup, they are guaranteed to bind so as to deterministically form a single target shape. This is despite the number of different types of tiles possibly being much smaller than the size of the shape and therefore having only "local information" to guide their attachment. The ability to control nanoscale structures and machines to atomic-level precision will rely crucially on sophisticated self-assembling systems that automatically control their own behavior where no top-down externally controlled device could fit.
A practical implementation of self-assembling molecular tiles was proved experimentally feasible in 1982 by Seeman [38] using DNA complexes formed from artificially synthesized strands. Experimental advances have delivered increasingly reliable assembly of algorithmic DNA tiles with error rates of 10% per tile in 2004 [36], 1.4% per tile in 2007 [17], and 0.13% per tile in 2009 [8]. Erik Winfree [44] introduced the abstract Tile Assembly Model (aTAM) -based on a constructive version of Wang tiling [42,43] -as a simplified mathematical model of self-assembling DNA tiles. Winfree demonstrated the computational universality of the aTAM by showing how to simulate an arbitrary cellular automaton with a tile assembly system. Building on these connections to computability, Rothemund and Winfree [35] investigated a self-assembly resource bound known as tile complexity, the minimum number of tile types needed to assemble a shape. They showed that for most n, the problem of assembling an n × n square has tile complexity Ω log n log log n , and Adleman, Cheng, Goel, and Huang [4] exhibited a construction showing that this lower bound is asymptotically tight. Under natural generalizations of the model [2, 6, 9-13, 19, 20, 29, 39, 41], tile complexity can be reduced for tasks such as square-building and assembly of more general shapes.
There are different interpretations of "nondeterminism" in the aTAM. We say a tile system is directed (a.k.a. deterministic) if it is guaranteed to form one unique final assembly, where an assembly is defined not only by which positions are eventually occupied by a tile, but also by which tile type is placed at each position. We say a tile system strictly (a.k.a. uniquely) self-assembles a shape if all of its final assemblies are guaranteed to have that shape. A natural analogy may be made between a non-directed tile system that strictly self-assembles some shape and a nondeterministic Turing machine N that always produces the same output on a given input, regardless of the nondeterministic choices made during computation. There is always a deterministic Turing machine M computing the same function as N and using no more "resources", according to any common resource bound such as time complexity, space complexity, or program length. Therefore we regard such a restricted class of nondeterministic Turing machines as no more "powerful" than deterministic Turing machines.
Based on this analogy, it might seem that strict self-assembly, while allowing one form of nondeterminism (which tile goes where), so strongly requires another form of determinism (which positions have a tile) that extra power cannot be gained by allowing the tile systems to be nondirected. More precisely, it is natural to conjecture that every infinite shape that is strictly selfassembled by some tile system is also strictly self-assembled by some directed tile system. In the finitary case, every finite shape is assembled by a directed tile system (possibly using as many tile types as there are points in the shape), so to make the idea non-trivial we might conjecture that the tile complexity of a finite shape is independent of whether we consider all tile systems or only those that are directed. Such conjectures are appealing because the algorithmic design and verification of tile systems [39] as well as lower bounds and impossibility proofs [6,15,30] often rely on reasoning about directed tile systems, which are "better behaved" in many senses than arbitrary tile systems, even those that strictly self-assemble a shape. It would be helpful to begin such arguments with the phrase, "Assume without loss of generality that the tile system is directed." However, these conjectures are false. We show that there is an infinite shape S that is strictly self-assembled by a tile system but not by any directed tile system. Therefore, in a "molecular computability theoretic" sense, nondeterminism allows certain shapes to be algorithmically self-assembled that are totally "unassemblable" (to borrow Adleman's tongue-twisting analog of "uncomputable" [3]) under the constraint of determinism. We then show an analogous phenomenon in the finitary case: there is a finite shape S that is strictly self-assembled by a tile system with c tile types, but every directed tile system that strictly self-assembles S has more than c tile types. In fact to strictly self-assemble the shape in a directed tile system requires more than ≈ 3 2 c tile types. It is open to improve the constant 3 2 to be larger or to prove a super-linear gap between the complexity measures; the issue is discussed in more detail in Section 5. This establishes a "molecular complexity theoretic" analog of the first result. We then derive a stronger result, showing that the problem of finding the minimum number of tile types that strictly self-assemble a given finite shape is complete for the complexity class Σ P 2 = NP NP . In contrast, the problem of finding the minimum number of directed tile types that strictly self-assemble a shape was shown to be NP-complete by Adleman, Cheng, Goel, Huang, Kempe, Moisset de Espanés, and Rothemund [5].
Based on these results, we conclude that nondeterminism confers extra power to assemble a shape from a small tile system, but unless the polynomial hierarchy collapses, it is computationally more difficult 1 to exploit this power by finding the size of the smallest tile system, compared to finding the size of the smallest directed tile system.
One might argue that this difference between nondeterministic (but "output-deterministic") Turing machines and non-directed (but strict) tile systems is not surprising, since there is a "monotone" aspect to tile assembly in the sense that space used to place a tile cannot be reused, whereas a tape cell used to store information by a Turing machine can be reused to store different information later. It is sometimes said that the difference between space and time is that "you can reuse space but you cannot reuse time." However, the "computation" carried out by tile systems does not distinguish well between space and time. For instance, the standard simulation of a Turing machine by a tile system (see [35]) assembles a structure encoding the entire space-time configuration history of the Turing machine. Even with negative glue strengths that are able to force detachments to occur, the volume requirements of such a simulation must be proportional to t ·s for a Turing machine using time t and space s [14], essentially forcing the solution to contain multiple assemblies that collectively encode the entire computation history. Tile systems therefore cannot reuse space (tiles), which is the fundamental effect of their monotonicity on their computational abilities. From this perspective, a Turing machine cannot reuse time any better than any other computational system (barring the use of closed timelike curves [1]), yet in contrast to tile systems, a nondeterministic but "output-deterministic" Turing machine remains no more powerful, even in the sense of time complexity, than a deterministic Turing machine.

Abstract Tile Assembly Model
This section gives a terse definition of the abstract Tile Assembly Model (aTAM, [44]). This is not a tutorial; for readers unfamiliar with the aTAM, [35] gives an excellent introduction to the model.
Fix an alphabet Σ. Σ * is the set of finite strings over Σ. Given a discrete object O, O denotes a standard encoding of O as an element of Σ * . Z, Z + , and N denote the set of integers, positive integers, and nonnegative integers, respectively. For a set A, P(A) denotes the power set of A. 4 ; i.e., a unit square with four sides listed in some standardized order, each side having a glue g ∈ Σ * × N consisting of a finite string label and nonnegative integer strength. We assume a finite set T of tile types, but an infinite number of copies of each tile type, each copy referred to as a tile. An assembly is a nonempty connected arrangement of tiles on the integer lattice Z 2 , i.e., a partial function α : Z 2 T such that G f dom α is connected and dom α = ∅. The shape S α ⊆ Z 2 of α is dom α. Two adjacent tiles in an assembly interact if the glues on their abutting sides are equal (in both label and strength) and have positive strength. Each assembly α induces a binding graph G b α , a grid graph whose vertices are positions occupied by tiles, with an edge between two vertices if the tiles at those vertices interact. 2 Given τ ∈ Z + , α is τ -stable if every cut of G b α has weight at least τ , where the weight of an edge is the strength of the glue it represents. That is, α is τ -stable if at least energy τ is required to separate α into two parts. When τ is clear from context, we say α is stable. Given two assemblies α, β : Z 2 T , we say α is a subassembly of β, and we write α ⊑ β, if S α ⊆ S β and, for all points p ∈ S α , α(p) = β(p).
The T -frontier of α is the set ∂ T α = α→ T 1 β S β \ S α , the set of empty locations at which a tile could stably attach to α.
A sequence of k ∈ Z + ∪ {∞} assemblies α 0 , α 1 , . . . is a T -assembly sequence if, for all 1 ≤ i < k, α i−1 → T 1 α i . We write α → T β, and we say α T -produces β (in 0 or more steps) if there is a Tassembly sequence α 0 , α 1 , . . . of length k = |S β \ S α | + 1 such that 1) α = α 0 , 2) S β = 0≤i<k S α i , and 3) for all 0 ≤ i < k, α i ⊑ β. If k is finite then it is routine to verify that β = α k−1 . 4 We say α is T -producible if σ → T α, and we write A[T ] to denote the set of T -producible assemblies. The relation → T is a partial order on A[T ] [23,34]. A T -assembly sequence α 0 , α 1 , . . . is fair if, for all i and all p ∈ ∂ T α i , there exists j such that α j (p) is defined; i.e., no frontier location is "starved". An α is a spanning subgraph of G f Sα : Vα = VS α and Eα ⊆ ES α . 3 Intuitively α → T 1 β means that α can grow into β by the addition of a single tile; the fact that we require both α and β to be τ -stable implies in particular that the new tile is able to bind to α with strength at least τ . It is easy to check that had we instead required only α to be τ -stable, and required that the cut of β separating α from the new tile has strength at least τ , then this implies that β is also τ -stable. 4 If we had defined the relation → T based on only finite assembly sequences, then → T would be simply the reflexive, transitive closure (→ T 1 ) * of → T 1 . But this would mean that no infinite assembly could be produced from a finite assembly, even though there is a well-defined, unique "limit assembly" of every infinite assembly sequence. such that α → T γ and β → T γ. 5 We say that a TAS T strictly (a.k.a. uniquely) self-assembles a shape S ⊆ Z 2 if, for all α ∈ A [T ], S α = S; i.e., if every terminal assembly produced by T has shape S. If T strictly self-assembles some shape S, we say that T is strict. Note that the implication "T is directed =⇒ T is strict" holds, but the converse does not hold.
In this paper we will always use singly-seeded temperature-2 TAS's, those with |S σ | = 1 and τ = 2; hence we will use the term seed tile for σ as well, and for the remainder of this paper we use the term TAS to mean singly-seeded temperature-2 TAS. When T is clear from context, we may omit T from the notation above and instead write → 1 , →, ∂α, frontier, assembly sequence, produces, producible, and terminal. Since the behavior of a TAS T = (T, σ, 2) is unchanged if every glue with strength greater than 2 is changed to have strength exactly 2, we assume henceforth that all glue strengths are 0, 1, or 2, and use the terms null glue, single glue, and double glue, respectively, to refer to these three cases. 6 We also assume without loss of generality that every single glue or double glue occurring in some tile type in some direction also occurs in some tile type in the opposite direction, i.e., there are no "effectively null" single or double glues. 7

Assembly of Infinite Shapes
In this section we study the power of nondeterminism in assembling infinite shapes. The following theorem is the main result of Section 3.
Theorem 3.1. There is a shape S ⊂ Z 2 such that some TAS strictly self-assembles S, but no directed TAS strictly self-assembles S.
Proof. Let L ⊂ N be a language that is computably enumerable but not decidable, and let M be a Turing machine such that L = L(M ). Let S be the shape that is strictly self-assembled by the TAS described below, when M is encoded into the TAS as described.
A portion of the shape S is shown in Figure 1. The TAS that strictly self-assembles S is based on the main construction of Lathrop, Lutz, Patitz, and Summers [22]. In that paper, the authors show that for each Turing machine M , an encoding of the language L(M ) ⊆ N accepted by M "weakly self-assembles" on the x-axis. More precisely, for a "reasonably simple" function f : N → N, a special tile type is placed at position (f (n), 0) if and only if n ∈ L(M ). The n th "ray" in Figure  1 begins growth just before (f (n), 0), and grows independently of the other rays, controlling an adjacent simulation of M (n) in parallel with all the other rays. The slope of each ray is just a bit smaller than the previous, with the slope approaching 2 as n → ∞. The simulation executes one transition of M on input n every ≈ 2 n rows of the ray. Since M can use no more than k tape cells after k transitions, this slowed simulation ensures that each ray has enough space to allow a potentially unbounded simulation of M on each n, without "crashing" into the next adjacent ray, even in the worst case that M moves its tape head right on every transition.
What is needed from this construction for our purpose is: 5 The following two convenient characterizations of "directed" are routine to verify. T is directed if and only if |A [T ]| = 1. T is not directed if and only if there exist α, β ∈ A[T ] and p ∈ Sα ∩ S β such that α(p) = β(p). 6 We use null bond, single bond, and double bond similarly to refer to the interaction of two tiles. 7 Thus the existence of a tile with a double glue facing empty space implies that the empty space is part of the frontier. Many of our arguments use the contrapositive that if a shape S is strictly self-assembled by a tile system and a side of a tile faces a point p ∈ S, then the tile cannot have a double glue on that side. Figure 1: A portion of an infinite shape S that strictly self-assembles, but not by any directed TAS. The n th ray simulates a Turing machine M on input n, and a vertical line is present under that ray if and only if M accepts n. Y and N are points at these positions representing "yes" and "no" instances of L(M ), respectively, and elements of Y are the points where nondeterminism is forced to occur in any TAS that strictly self-assembles S.
1. f is computable. 8 2. The simulation of M (n), carried out adjacent to the n th ray, sends a "signal" crawling down the right side of the simulation if and only if M accepts n, placing a special tile just above the "planter" (the group of tiles growing below each of the rays).
We modify the signal so that, rather than growing all the way to the planter, for input n, the signal grows to distance n north of the planter and then grows a width-1 vertical line n positions down to the planter, using the same tile type with equal north and south double glues to "crash" into the planter. To ensure that the downward-growing vertical lines do not obstruct the operation of the planter, the planter is modified so that it is guaranteed to grow horizontally a sufficient number of tiles before laying out the input for the M , so as to guarantee that there is something present for a "controlled crash." The space for the downward-growing line of length n to drop after the input is accepted is created by having the Turing machine simulations begin not immediately above the 8 [22] defines the roughly quadratic function f (n) = n+1 2 + (n + 1) ⌊log n⌋ + 6n − 2 1+⌊log n⌋ + 2. Our version of this function will grow just a bit faster, to make room for a vertical line to form between two adjacent rays without "touching" the rest of the shape except at the endpoints of the line, but retains computability.
planter, but at height n on input n. This is why the n th ray grows straight up for n rows before beginning its sloped growth. Under every simulation, a "notch" tile is placed above the planter using a double glue, which is horizontally lined up with where the vertical line will grow if M accepts. The actions of the ray, planter and Turing machine simulation are otherwise similar to the mechanisms used in [22]. We note that this particular TAS is not directed since the "notch" tiles compete nondeterministically with the vertical line tiles at positions where M accepts.
It remains to show that no directed TAS strictly self-assembles S. Intuitively, we show that at points of the form (f (n), 0), any directed TAS must place tiles that "know" whether there will eventually be a vertical line above the point, implying the ability to decide L since vertical lines appear above exactly those positions (f (n), 0) such that n ∈ L. Assume for the sake of contradiction that there is a directed TAS T = (T, σ, 2) that strictly self-assembles S, and let α ∈ A [T ] be its unique producible, terminal assembly. Since the heights of the vertical "bases" of each ray below the sloped portion are strictly increasing, there is some n 0 ∈ N such that, for all n > n 0 , the distance from (f (n), 1) to the ray above it is at least |T | + 1. Let Y = { (f (n), 0) | n ∈ L and n > n 0 } be the bottommost points of the vertical lines adjacent to rays corresponding to (sufficiently large) "yes" instances of L, and let N = { (f (n), 0) | n ∈ L and n > n 0 } represent the positions of the "notches" corresponding to (sufficiently large) "no" instances. Y and N are shown in Figure 1. Let T Y = α(Y ) and T N = α(N ) be the set of tile types that appear at "yes" and "no" instance points, respectively. Since S has empty space immediately north of positions in N , no tile type in T N has a north double glue.
We claim that T Y ∩ T N = ∅. For the sake of contradiction, suppose otherwise, let t ∈ T Y ∩ T N , and let p ∈ Y be a point where α(p) = t. Since t ∈ T N , t has no north double glue, so the vertical line above p must grow downward using north and south double glues. Let q = p + (0, 1) be the point just above p. By our choice of n 0 , the vertical line must repeat a tile type before reaching the point q, so all tile types in the repetition period have a north and a south double glue, including the tile type t ′ = α(q). Let t ′′ be the tile type appearing beneath t ′ after the previous occurrence of t ′ in the vertical line. Since t ′′ has a north double glue, t ′′ ∈ T N , so t ′′ = t. Because t binds to the rest of α only through its south double glue, there can be no precedence relationship enforcing that p must contain a tile before q (or any other point) receives a tile. In other words, there exists a producible assembly β ∈ A[T ] such that β(q) = t ′ and β(p) is undefined. This implies that t ′′ can bind to β at position p to create β ′ = β + (p → t ′′ ), contradicting the directedness of T since For all n ∈ N, let p n = (f (n), 0). Since T Y ∩ T N = ∅, for all n > n 0 , n ∈ L ⇐⇒ p n ∈ Y ⇐⇒ α(p n ) ∈ T Y , and n ∈ L ⇐⇒ p n ∈ N ⇐⇒ α(p n ) ∈ T N . Using this fact, we describe an algorithm to decide L, contradicting its undecidability and completing the proof. On input n ∈ N, if n ≤ n 0 , use a constant lookup table to decide n. Otherwise, compute p n = (f (n), 0). Simulate the assembly of T with a fair assembly sequence, maintaining a first-in, first-out queue of frontier locations to enforce fairness, until a tile is placed at position p n . Since this assembly sequence is fair, the simulation will eventually place a tile type α(p n ) at p n , and α(p n )'s membership in T Y or T N will indicate whether to accept or reject n.
We have implemented the tile assembly system that strictly self-assembles S: http://www.dna.caltech.edu/~ddoty/pnsa/ It can be simulated using Matthew Patitz's ISU TAS simulator [33] available here: http://www.cs.iastate.edu/~lnsa/software.html The purpose of the implementation is not to quantitatively analyze the construction, since we make no quantitative claims about either the shape being assembled nor the TAS that strictly self-assembles the shape. Furthermore, the bulk of the intellectual effort in the proof of Theorem 3.1 is proving the negative result that no directed TAS strictly self-assembles the shape, which is something that cannot be established through a simulation. We provide the simulation primarily to help the interested reader understand the details of the construction and help to convince oneself that the shape really can be strictly self-assembled and to directly observe how the TAS accomplishes this task.

Assembly of Finite Shapes
In this section we study the power of nondeterminism in assembling finite shapes. We first show that a finitary analog of Theorem 3.1 holds, by showing that the tile complexity of some shapes can be reduced using nondeterminism. The ideas in this construction will be useful in proving the main theorem of this section, which shows that the minimum tile set problem is Σ P 2 -complete. Recall that all of the TAS's we study are assumed singly-seeded. Let S ⊆ Z 2 be a shape. The (temperature-2) tile complexity of S is We are interested in the problems, given a finite shape, what is its tile complexity, and what is its directed tile complexity? We define two decision problems that are equivalent to these optimization problems. Let FS ⊂ P(Z 2 ) denote the set of all finite shapes. The minimum tile set problem is MinTileSet = S, c S ∈ FS, c ∈ Z + , and C tc (S) ≤ c , and the minimum directed tile set problem is Adleman, Cheng, Goel, Huang, Kempe, Moisset de Espanés, and Rothemund [5] showed that the problem MinDirectedTileSet is NP-complete. In Section 4.2 we show that MinTileSet is Σ P 2 -complete, where Σ P 2 = NP NP . See [7] for a discussion of these complexity classes.

A Finite Shape for which Nondeterminism Reduces Tile Complexity
Although the main result of Section 4, Theorem 4.3, together with the (widely-believed) assumption that NP = Σ P 2 and the fact proven in [5] that MinDirectedTileSet ∈ NP, implies Theorem 4.2 of this subsection, we prove Theorem 4.2 explicitly in order to illustrate some of the reasoning used in the proof of Theorem 4.3.
Given a shape S (possibly a subshape of a larger shape we wish to self-assemble), we say some tile types hard-code S to mean that there are |S| unique tile types, each one specific to a position in S, using double glues between tile types of all adjacent positions in S.
Given a shape S with a subshape S ′ ⊂ S, we say S ′ is an isolated subshape of S if there is a point p ∈ S ′ such that every path from a point in S ′ to a point in S \ S ′ includes p. In this case, we say p is the root of the subshape. If S ′ is a tree, we say it is an isolated subtree of S. We say that an isolated subshape S ′ of S is singly-connected if there is precisely one point in S \ S ′ adjacent to the root of S ′ . Lemma 4.1. Let S be a shape with at least one cycle and S T ⊆ S be a singly-connected isolated subtree of S with root r ∈ S T . Any TAS that strictly self-assembles S places at least C tc (S T ) unique tile types in S T .
Proof. Let T be a TAS that strictly self-assembles S, and let α ∈ A [T ], so that S α = S.
To begin with, we claim that α(r), the tile type on the root r, does not appear anywhere else in S T . For the sake of contradiction, suppose there were a position p ∈ S T \ {r} with α(p) = α(r). Since S T is assumed to be a tree, there is a unique path p = (p 0 , . . . , p m ) ∈ (Z 2 ) m+1 between r and p, such that p 0 = r and p m = p. Let p ′ be the position in S \ S T that is adjacent to r. Depending on whether r − p ′ = p − p m−1 holds or not, we have two cases to be investigated.
The first case is when this equation holds. Note that in this case there must exist a position p m+1 ∈ S T such that p 1 − r = p m+1 − p m . This is because α(r) and α(p 1 ) are bound via double glue. If the seed of T is in S \ S T , then we can replace the singly-connected subtree of S T rooted at p 1 with the subtree S 1 of S T rooted at p m+1 . It is impossible that the growth of S 1 was blocked in α, since S 1 is a tree, and this replacement enables it to grow further. Hence, T could self-assemble a shape strictly smaller than S. However, this contradicts that T strictly self-assembles S. This argument works also when r has a third adjacent point, which is in S T , and the seed is in the singly-connected subtree rooted at the point. If the seed is on the path p between r and p, then T could repeat this path when the growth reaches p, and then continue the self-assembly process after the repetition in the same way as done in the expected assembly at p. This growth cannot be blocked by any tile on S \ S T because if it were, then r would be on a cycle in S, contradicting the fact that S T is a subtree of S. No tile on S T can block it either because S T is a tree. Thus, T cannot set its seed location on p. The remaining possibility is when the seed is in the singly-connected subtree rooted at p (let us denote it by S 2 ). Then T could grow the sub-assembly of the shape S \ S T at p instead of the path reaching to r. This alternative assembly process is not blocked by S 2 . Furthermore, the growth of S \ S T in the expected assembly is not blocked by anything but tiles in S \ S T . Thus, the alternative assembly would be strictly smaller than S.
Let us consider the other case when the equation r − p ′ = p − p m−1 does not hold. In this case, there must exist points p ′ m+1 , q ∈ S T satisfying r − p ′ = p − p ′ m+1 , r − q = p − p m−1 , and q = p ′ . If the seed is in the singly-connected subtree rooted at p ′ m+1 , then at p, T could proceed its assembly in a manner expected to occur at q because α(q) can attach to α(p). This results in a terminal assembly strictly smaller than S. Otherwise, after reaching p, T could grow the subassembly of shape S \ S T from p. This contradicts the fact that S T is a tree. This claim has been verified so that α(r) never appears on S T \ {r}. By replacing the glue of the side that faces S \ S T with a null glue, and furthermore putting the seed on r if the seed of T is in S \ S T , then we can construct a new TAS T ′ that strictly self-assembles S T without changing any tiles on S T \ {r}. Thus any TAS which strictly self-assembles S needs at least C tc (S T ) tile types to assemble S T .

Theorem 4.2.
There is a finite shape S ⊂ Z 2 such that C tc (S) < C dtc (S). Figure 2. In the following, the loop L means the shape which consists of L 0 , L 1 , . . . , L h , L ′ 0 , L ′ 1 , . . . , L ′ h , the tile between L h and L ′ h , and the tile between L 0 and L ′ 0 . Figure 2: A finite shape S for which C tc (S) < C dtc (S). Nondeterminism is forced to occur at the two-color top-middle position of the loop L, since any minimal tile set must reuse the tile types from subtrees A and B to create L.

Proof. The shape S is shown in
The height h is left as a variable parameter; increasing h increases the gap between C tc (S) and C dtc (S). Let us index the tile positions on the pillar A from its bottom as A 1 , A 2 , . . . , A h and do the same for B as B 1 , B 2 , . . . , B h . In a similar manner, the left and right pillars of the loop L are indexed as L 1 , L 2 , . . . , L h and L ′ 1 , L ′ 2 , . . . , L ′ h , respectively. First we establish that C tc (S) ≤ 2h + 16 (actually with equality, but we only require and only prove an upper bound). If the seed is placed in the bottom row, 12 tile types (including the seed) hard-code the gray positions, h + 2 tile types hard-code the subtree A, and h + 2 tile types hardcode the subtree B. The tile types at A 0 , . . . , A h can be reused at L 0 , . . . , L h , and the tile types at B 0 , . . . , B h can be reused at L ′ 0 , . . . , L ′ h . Note that this TAS is not directed because the top-middle position of the loop could receive either a tile from A or a tile from B. Furthermore, these must be different tile types, because the top-right tile type in A must have a double glue on its west but cannot have a double glue on any other side, whereas the top-left tile type of B must have a double glue on its east but not on any other side.
We now show that this nondeterminism is necessary to achieve minimum tile complexity. In particular, we will show that C dtc (S) ≥ 3h. Let S T be the tree which consists of the pillars A, B and the three tiles connecting them. Let T be a directed TAS that strictly self-assembles S. Lemma 4.1 implies that any TAS that strictly self-assembles S needs C tc (S T ) tile types to assemble S T , and due to Theorem 4.3 in [5], C tc (S T ) = 2h + 5.
First we consider the case when T places its tiles such that every pair of adjacent tiles on the loop L is bound via double glue. Being singly-seeded, either the left or the right pillar of the loop L does not contain the seed; assume without loss of generality that the left pillar does not. Since all tiles on the loop are double-bonded, the left pillar can grow upward as L 1 → L 2 → · · · → L h . Note that the tile on the top-middle position of the loop L should be different from the one on the end of the pillar A; otherwise the gap between the ends of A and B would be filled with the tile on L ′ h . This means that the left pillar cannot reuse the tiles on A, and trivially it cannot reuse the ones on B. Thus, in this case, T contains at least 3h tile types.
Next we consider the case when some of adjacent tiles on the loop L are not bound via double glue. Note that at most 2 such weak bonds can appear on the loop, and furthermore, they must be incident on a single tile. Thus, we assume without loss of generality that such a weak bond does not occur on the left pillar. Depending on whether the bond between L ′ h and the tile on the top-middle of L is weak or not, there are two subcases to be investigated. If it is weak and the seed is not on the right pillar, a similar argument as above enables us to see that any tiles on A or B cannot be reused for the right pillar (the right pillar must grow upward because of the weak bond). If the bond is weak and the seed is on L ′ i , then on L ′ i+1 , . . . , L ′ h , T cannot put any tile placed on A or B. Furthermore, if T reuses some tile from A or B and places it on some of L ′ 1 , . . . , L ′ i , then the bottom row could extend to the left of the loop into empty space. Finally, we consider the second subcase when L ′ h binds to the tile on the top-middle position via double glue, but L ′ j does not bind to L ′ j+1 via double glue for some 1 ≤ j < h. This establishes that the left pillar must be hardcoded by h new tile types, whence T contains at least 3h tile types.
To show that MinTileSet is Σ P 2 -hard, we show that ∃∀CNF-Unsat ≤ P m MinTileSet, where ∃∀CNF-Unsat is the Σ P 2 -complete language [37,40,45] ∃∀CNF-Unsat =    ϕ ϕ is a true quantified Boolean formula ϕ = ∃x∀y¬φ(x, y), where φ is an unquantified CNF formula with n + m input bits x = x 1 , . . . , x n and y = y 1 , . . . , y m We follow a similar strategy to the reduction of 3Sat to MinDirectedTileSet shown in [5]. The ≤ P m -reduction ϕ → S, c works as follows. First, we compute a tree Υ ∈ FS that "represents" ϕ with subtree gadgets that encode possible variable assignments and their effect on clauses. We then process Υ with the polynomial-time algorithm described in [5] that computes the minimum number of tile types needed to strictly self-assemble a tree. Let T = (T, σ, 2) be this minimal TAS that strictly self-assembles Υ, and let c = |T |. We then compute a shape S ∈ FS such that Υ ⊂ S with Figure 3: The shape S of the reduction ϕ → S, c showing ∃∀CNF-Unsat ≤ P m MinTileSet. In this example, the quantified negated CNF formula ϕ = ∃x∀y¬φ(x, y) has clauses C 1 , C 2 and C 3 , ∃-variables x 1 , x 2 , and x 3 , and ∀-variables y 1 and y 2 . The "matrix" of gadgets at the top left has a row of gadgets for each clause and a column of gadgets for each variable. The matrix sits atop a group of "pillars" that, when tiled by actual tiles, will represent a variable assignment to φ (along with one taller left-boundary pillar to help initiate cooperative binding of gadgets to assemble the matrix). The tree Υ is S without the matrix and pillars beneath it. In the zoom-in, the two yellow lines above the yellow X represent strength-1 glues that cooperate to place the gray gadget once (enough of) the black gadgets to its west and south are in place. The yellow X shows "backward growth" of the gray gadget that is blocked before it can grow down far enough to form a new copy of the bottom row of S. the property that, if ϕ is true, then the tile types in T can be modified, solely through changing some null glues to be single or double glues, producing a TAS T ′ = (T ′ , σ, 2) with |T ′ | = |T | = c such that T ′ strictly self-assembles S, and if ϕ is false, then no TAS with at most c tile types can strictly self-assemble S. The shape S is shown in Figure 3. In Figure 3, the height of pillars is set to a number bigger than 20ℓ, where ℓ is the number of variables in ϕ. 9 Suppose that φ has k clauses C 1 , . . . , C k and ℓ = n + m input variables v 1 , . . . , v ℓ , where v 1 , . . . , v n = x 1 , . . . , x n are the ∃-variables of ϕ and v n+1 . . . , v ℓ = y 1 , . . . , y m are the ∀-variables of ϕ. A clause C is satisfied by variable v if C contains literal v and v is true, or if C contains literal ¬v and v is false. For each 1 ≤ i ≤ k and 1 ≤ j ≤ ℓ, define the following six gadgets: 1. SST ij : C i is satisfied by v p for some 1 ≤ p < j, and v j is true. Figure 4: Six main varieties of "information-bearing" tree gadgets used in the reduction. The position (i, j) where the gadget is intended to go in the matrix is encoded in binary. Gadgets intended for the top row are missing the top "T/F" bumps, and gadgets intended for the right column are different on the right depending on whether the clause is satisfied or not, as shown in Figure 3.
2. SSF ij : C i is satisfied by v p for some 1 ≤ p < j, and v j is false.
3. UUT ij : C i is unsatisfied by v p for every 1 ≤ p ≤ j, and v j is true. 4. UUF ij : C i is unsatisfied by v p for every 1 ≤ p ≤ j, and v j is false. 5. UST ij : C i is unsatisfied by v p for every 1 ≤ p < j, C i is satisfied by v j , and v j is true.
6. USF ij : C i is unsatisfied by v p for every 1 ≤ p < j, C i is satisfied by v j , and v j is false.
Each of these six main varieties of "information-bearing" gadgets is shown in Figure 4. Each gadget is designed to minimize the amount of "potential unwanted cooperative strength-1 binding" when they are placed next to each other in the "matrix" of gadgets in the upper left of Figure 3. 10 Each gadget encodes the integers i and j, as well as encoding the information about the clause C i and variable v j as described above. Some of the "boundary case" gadgets are shaped slightly differently than those in Figure 4. If i = k (a "top gadget"), the top of the gadget will not encode information about the truth value of the variable v i . If j = ℓ (a "right gadget"), the right side of the gadget will still encode whether the clause is satisfied, but the gadget will have a different shape than for 1 ≤ j < ℓ. These special boundary shapes are shown in Figure 3.
Not all six varieties of gadgets are created for each (i, j); the only gadgets created are those that are logically consistent with some variable assignment to φ. The matrix and pillars portion of S (i.e., S \ Υ) depends only on the number of ∃-variables, the number of ∀-variables, and the number of clauses. The remainder of the information about ϕ is encoded in the following choices about which gadgets to create in Υ. In the case of j = 1, the gadgets SST i1 and SSF i1 are not created. For any clause C i in which the literal v j (resp. ¬v j ) does not appear, the gadget UST ij (resp. USF ij ) is not created. Similarly, for any clause C i in which no literal v p (resp. ¬v p ) appears for any 1 ≤ p < j, the gadget SST ij (resp. SSF ij ) is not created. Finally, for any clause C i in which the literal v j (resp. ¬v j ) does appear, the gadget UUT ij (resp. UUF ij ) is not created.
The tree Υ is S without the "matrix" on the top left and the "pillars" beneath it that connect it to the bottom row. Let c = C tc (Υ). We assume that the seed is placed on the rightmost position of the bottom row, for both the shapes Υ and S. At the end of the proof we show how to modify the shapes to enforce this restriction. The steps needed to complete the proof are divided into several lemmas. These lemmas are proven after the current proof. Lemmas 4.4 and 4.7 establish each direction of the claim that ϕ is true ⇐⇒ C tc (S) ≤ c. Intuitively, since Υ is a "tree-like" subshape of S (despite the leftmost tiles intersecting cycles in S), any tile system that strictly self-assembles S must place tiles in the bottom row that do not appear anywhere else in Υ. ϕ is true =⇒ C tc (S) ≤ c because we can modify the null glues of tiles in the left half of the bottom row of Υ to be double glues matching those tile types from the pillars on the right to grow the pillars on the left. In the case of the ∃-variables x we choose an assignment by our choice of double glues. In the case of ∀-variables y we have no choice; we must allow both the "false" and "true" pillars to grow and nondeterministically compete to assign a bit to each y i . We can then modify null glues in the gadgets and pillars to be single glues that propagate information about the neighbors of a gadget to allow a new gadget encoding the proper information to be placed in the matrix. Therefore the assembly of the matrix "evaluates φ(x, y)" and if it is false, strictly self-assembles S. The reverse direction is more tedious to establish. Again, since Υ is a "tree-like" subshape of S, any TAS strictly self-assembling S already uses c tile types just to assemble the Υ portion of S (derived from Lemma 4.5). Therefore to assemble all of S using c tile types requires reusing these same tile types. Our gadget design, together with the properties of minimal tile sets for trees, allow us to conclude that the only way to tile the matrix is "using the gadgets in the way they were intended", which means the rightmost vertical bar of the matrix cannot form unless at least one clause is not satisfied; i.e., ϕ is true.
To handle the placement of the seed, define a ∈ S to be the rightmost point on the bottom row of S. Make two copies of S, place one directly above the other but without touching, and connect the copies by a width-1 "bridge" of length h that connects to each copy of a on a's right side. Denote this new shape by S ′ . It is routine to show using techniques similar to those in the proof of Lemma 4.1 that any minimal TAS for S ′ uses C tc (S) + h tile types, places the seed in the bridge, uses h tile types to grow the bridge and uses the tile types of a TAS T that is minimal (subject to the restriction that T places the seed at a) for S, to assemble each copy of S. Let c ′ = c + h. Our reduction outputs S ′ , c ′ , rather than S, c . By the arguments above concerning S, we have that ϕ is true ⇐⇒ C tc (S ′ ) ≤ c ′ , whence ∃∀CNF-Unsat ≤ P m MinTileSet.
In the following lemmas, ϕ denotes an arbitrary (true or false) quantified Boolean formula of the form ϕ = ∃x∀y¬φ(x, y), where φ is an unquantified CNF formula with n + m input bits x = x 1 , . . . , x n and y = y 1 , . . . , y m . Υ, S ∈ FS(Z 2 ) refer to the tree and shape constructed from ϕ as in the proof of Theorem 4.3, and c = C tc (Υ). Proof. Let T Υ = (T, σ, 2) be a minimal TAS that strictly self-assembles Υ with seed placed at position a, the rightmost point of the bottom row of Υ, and let α ∈ A [T Υ ] be the unique terminal producible assembly of T Υ , such that S α = Υ. Theorem 4.3 of [5] shows that if T Υ is a minimal TAS for Υ, then T Υ puts the same tile type in two positions p 1 , p 2 ∈ Υ if and only if the subtrees of Υ rooted at p 1 and p 2 (with the seed location considered the root of Υ) are isomorphic and "identically entered" (meaning both of them have their parent in the same direction). This theorem is stated for directed TAS's but it is easy to show that any minimal TAS for a tree must be directed. Given α and t ∈ T , define t to be singular in α if it appears exactly once in α. Thus, all the positions at the bottom row of Υ will receive tile types that are singular in α.
Since ϕ is true, there is an assignment f to variables x 1 , x 2 , . . . , x n such that any assignment to y 1 , y 2 , . . . , y m makes φ(x, y) false. Since all the tile types in the bottom row are unique, we can change the north glues of the tiles at the base of the clause-variable matrix, without ruining the rest of the shape. We change the north glues so that the blue pillar grows as the leftmost pillar and for each variable x i we grow the red true/false pillar depending on f (x i ) being true or false. For the positions corresponding to y variables, we change the north glues so that both true and false green pillars can grow.
We will also change a number of null glues into single glues in the following way: the set of labels with strength one will be T, F, S i,j , and U i,j , where 1 ≤ i ≤ k and 1 ≤ j ≤ ℓ. For each gadget G, let p be the position of its branch point in Υ, as shown in Figure 4. Then, we change the null glue of the south side of α(s) to a single glue with label T if G is of type SST, UUT, or UST; otherwise, we change the south glue to a single glue with label F. Also, we change the north glue of α(s) to a single glue with label S i,j if G is a gadget for the ith clause and jth variable and is of type SST or SSF; otherwise, if G is of type UUT, UUF, UST, or USF, the north glue of α(s) will be a single glue with label U i,j . Note that, the tile type α(s) is singular in α, due to the fact that its rooted subtree contains the encoding about the gadget type, clause number, and variable number, and hence, is not isomorphic to any other subtree.
The north glue of the tile type α(r) will be changed to a strength one glue with label T if G is of type SST, UUT, or UST; otherwise, its label will be F. The south glue of the tile type α(t) will be changed to a strength one glue with label S i,j+1 if G is for the ith clause and jth variable and is of type SST, SSF, UST, or USF; otherwise, its label will be U i,j+1 .
Applying the above-mentioned changes will give us a TAS T S with the same tile complexity as T Υ . In T S , a gadget can grow at the cell of the matrix corresponding to clause i and variable j using cooperation of single glues of the bottom and left gadget if and only if its notches match the notches of the bottom and left gadget. And, the notches of gadgets are designed in a way that they can be put together to assemble S if and only if the truth assignment to x and y variables (presented as pillar notches at the first row of the matrix) make φ(x, y) false. Intuitively, the gadgets grow in the matrix so as to "evaluate φ(x, y)" on inputs x and y encoded in the pillars, with the pillars encoding y nondeterministically choosing values for each of the y i . If we choose the proper assignment f to x, such that, for all assignments to y (corresponding to different terminal assemblies), φ(x, y) is false (such an assignment f exists since ϕ = ∃x∀y¬φ(x, y) is true), then all of these assemblies will have at least one unsatisfied right gadget in the rightmost column of the matrix, and the assembly will have shape S. Therefore T S strictly self-assembles S.
From here until the end of the section, assume that T S = (T S , σ, 2) is a TAS that strictly selfassembles S with the seed placed at the rightmost position on the bottom row. Also, B represents the subshape of S that does not have the black matrix on the left, but has the pillars beneath it, and I ⊂ Z 2 denotes the set of k × ℓ positions (where k is the number of clauses in φ and ℓ is the number of variables) marked by small circles in Figure 3. A set I ′ ⊆ I is called a staircase if the following implication holds: (x 1 , y 1 ) ∈ I ′ , (x 2 , y 2 ) ∈ I, x 2 ≤ x 1 , and y 2 ≤ y 1 =⇒ (x 2 , y 2 ) ∈ I ′ .
Let G * = G∈G G, where each element of G is a set of tile positions of a gadget created in the proof of Theorem 4.3 ( Figure 4) translated so that the branch tile is at the origin (so, G has at most k × ℓ × 6 elements).
Lemma 4.5. If |T S | ≤ c = C tc (Υ), then there is a TAS T Υ = (T Υ , σ, 2) that can be obtained from T S = (T S , σ, 2) by only changing a number of double glues to null glues (in particular implying that |T Υ | = |T S |), such that T Υ strictly self-assembles Υ.
Proof. It suffices to show that if α ∈ A [T S ], then for any two adjacent positions p 1 , p 2 ∈ Υ, α(p 1 ) and α(p 2 ) are bound together by a double glue. This will establish that, by adjusting double glues on the north of tiles beneath the pillars to be null glues, all of Υ can grow from the tiles without growing any of the pillars or matrix of S − Υ. Because each adjacent tile in the row under the matrix double bonded, each of these tile types must be singular in α ↾ Υ (α restricted to Υ); otherwise, their appearance elsewhere in α would lead to copies of the pillars and matrix growing in a second location.
For the sake of contradiction, let p 1 ∈ Υ and p 2 ∈ Υ be the closest positions to the seed that are adjacent to each other but α(p 1 ) and α(p 2 ) do not have double glue between them. Then, they are on the bottom row below the clause-variable matrix in S. Thus, there must be a pillar growing down from the clause-variable matrix; consider the pillar that grows down in α the earlier than the others. This pillar cannot reuse any tile type that is used in positions to the right of p 1 in Υ; otherwise, an undesirable part of Υ can grow to the left of the downward pillar. Therefore, the number of tile types in T S is at least C tc (Υ) − x + y, where x is the horizontal width of the clause-variable matrix and y is the height of the pillars. This is a contradiction to the assumption that T S uses at most C tc (Υ) tile types, since we set y > x in our construction.
The following lemma states the "inductive step" of the proof of Lemma 4.7. Namely, if gadgets of a minimal tile system for S grow to fill in part of the matrix "in the way we intend", then the only way to extend this growth to fill in an additional gadget is also "in the way we intend." In the following lemma, "right branch" and "top branch" refer to the two subtrees of a gadget rooted at the branch as shown in Figure 4.
Proof. α cannot be a terminal assembly, since T S strictly self-assembles S = S α . Since double glues cannot be added to gadget tile types without ruining the tree shape portion of S, α must grow by cooperation of single glues. This cooperation can happen only at F − (4, 3), where F = {p ∈ I \ S α : (S α ∩ I) ∪ {p} is a staircase}.
In other words, F − (4, 3) is the set of points marked s in Figure 4, which are adjacent to points marked r and t in neighboring gadgets. Let β ′ be a minimal assembly producible from α such that S β ′ ∩ F is not empty. Let {p} = S β ′ ∩ F . All paths from S α to p in β ′ must pass through s = p − (4, 3), due to the minimality of β ′ . Even if the tile type that goes in s is not taken from any gadgets, the tile type that eventually goes to s + (1, 1) must be chosen from a gadget, since it should be able to grown the zig-zag shape only by double glues, and the zig-zag shape is used only in one of the gadgets. Thus, β ′ (p) is a branch tile type.
Since p ∈ S β ′ ∩ I and p ∈ S α ∩ I, S β ′ ∩ I has cardinality at least m + 1. Let β be the minimal assembly producible from β ′ in which the right and top branches of p are tiled. β(p) and β(q) for all q in the branches of p must be tile types from the correct gadget to ensure consistency with the notches of neighboring gadgets and consistency with the (row,column) identifier notches at the top of the right branch.
Due to the minimality of β, it satisfies condition 5.
Lemma 4.7. If T S has at most c tile types, then ϕ is true.
Proof. First we show that B is T S -producible. According to Lemma 4.5, by changing a number of double glues in T S to null glues, we can obtain a TAS T Υ that strictly self-assembles Υ. So, Υ is T S -producible. Moreover, as can be checked in the proof of Lemma 4.5, the null glues in T Υ that are double glues in T S are the north glues of the tile types that appear at the base of pillars beneath the gadget matrix. Also, all the pillars must grow from the bottom row to the matrix, and not downward, because growing a pillar downward requires adding a double glue to a tile type in the matrix area, which will also ruin Υ. Thus, B, which is Υ together with the pillars beneath the matrix, is T S -producible. This establishes the base case. Let f (x i ) be true if the red true pillar is used to grow the pillar corresponding to x i and be false if the red false pillar is used. Using Lemma 4.6 for the inductive case, we conclude that there is an assembly α such that B ∪ I ⊆ S α and valid gadgets are/can be used to fill the matrix part of α. By our construction of gadgets, this implies that the truth assignment f to x makes φ(x, y) false for every value of y. Thus ϕ is true.

Conclusion
We have investigated the power of nondeterminism for the strict self-assembly of shapes in the abstract Tile Assembly Model. We showed that for both the infinite and finite cases, even when the shape is required to be strictly self-assembled, nondeterminism can help to assemble the shape, by making strict self-assembly possible in the infinite case, and reducing tile complexity in the finite case. Furthermore, the problem of finding the minimum tile set to strictly self-assemble a shape is strictly harder (in the sense of nondeterministic time complexity) than that of finding the minimum directed tile set that does so, unless NP = Σ P 2 . There are some interesting questions that remain open: 1. What is the fastest growing function f : N → N for which one could prove a statement of the form "For infinitely many n ∈ N, there is a finite shape S ⊂ Z 2 such that C tc (S) ≤ n and C dtc (S) ≥ f (n)"? The proof of Theorem 4.2 of the present paper establishes this statement for f (n) = 1.4999n. Can f (n) be made, for example, n 2 or 2 n ? What is an upper bound for f above which such a statement is false? Note that Theorem 3.1 establishes such a statement for all functions f : N → N if the shape is allowed to be infinite. However, when designing complex tile systems, a common challenge is to direct a group of tiles to stop growing, 11 so it would be interesting to identify a family of finite shapes with a fast-growing gap between the two tile complexity measures. This would imply that sometimes it really helps to employ nondeterminism.
2. We have showed that the optimization problem of finding precisely the smallest number of tile types to strictly self-assemble a shape is Σ P 2 -hard. Can it be shown that for some α > 1, the solution is Σ P 2 -hard to approximate within multiplicative factor α? This may be related to Question 1.
3. Is there an α > 1 such that it is NP-hard to find an α-approximate solution to the minimum directed tile set problem?
4. Shape-building is one common goal of self-assembly; pattern-painting is another. In particular, it is possible to assemble some patterns, such as disconnected sets, if we change the definition of what is interpreted as the assembled object. We say that a TAS T = (T, σ, 2) weakly self-assembles a set S ⊆ Z 2 if there is a subset B ⊆ T (the tile types that are "painted black") such that, for all α ∈ A [T ], α −1 (B) = S. In other words, the set of positions with a black tile is guaranteed to be S. In the case B = T , this definition is equivalent to strict self-assembly, but for B T the shape is allowed to grow outside the desired pattern using tile types from T \ B to allow "extra computation room" for painting the pattern using tile types from B. Such a definition is appropriate for modeling practical goals such as self-assembled circuit layouts [21,25,28,31,32,46] or placement of guides for walking molecular robots [26]; see [22,23] for more discussion of the theoretical issues of weak self-assembly. 12 It remains open to prove or disprove analogs of Theorems 3.1 and 4.2, with "weakly" substituted for "strictly". In other words, is it possible to uniquely paint an infinite (resp. finite) pattern with a tile system, but every tile system that does so (resp. that does so with no extra tile types) is not directed?

5.
It remains open to prove or disprove analogs of Theorems 3.1 and 4.2, with "weakly" substituted for "strictly" and with "strict" substituted for "directed". In other words, is it possible to uniquely paint an infinite (resp. finite) pattern with a tile system, but every tile system that does so (resp. that does so with no extra tile types) must self-assemble more than one shape on which this pattern is painted? 6. In [5] the authors show that for the special cases of tree and square shapes, the minimum directed tile set problem is in P. For trees, it is straightforward to verify that the minimum tile set is always directed, so the answer is the same whether or not we restrict attention to directed tile sets. What is the complexity of the minimum tile set problem restricted to squares? The polynomial-time algorithm given in [5] crucially depends on the existence of a polynomial-time algorithm for the directed shape verification problem of determining whether a given tile system strictly self-assembles a given shape and is directed. Removing the directed constraint on this shape verification problem, even when restricted to the case of squares, makes the problem coNP-complete [6,18,24]. Perhaps this means that the minimum tile set problem restricted to squares is hard as well. On the other hand, since this problem is sparse, 13 Fortune's Theorem [16] implies that it cannot be coNP-hard (nor NP-hard by Mahaney's Theorem [27]) unless P = NP.