Veriﬁcation and Computation in Restricted Tile Automata

Many models of self-assembly have been shown to be capable of performing computation. Tile Automata was recently introduced combining features of both Celluar Automata and the 2-Handed Model of self-assembly both capable of universal computation. In this work we study the complexity of Tile Automata utilizing features inherited from the two models mentioned above. We ﬁrst present a construction for simulating Turing Machines that performs both covert and fuel eﬃcient computation. We then explore the capabilities of limited Tile Automata systems such as 1-Dimensional systems (all assemblies are of height 1) and freezing Systems (tiles may not repeat states). Using these results we provide a connection between the problem of ﬁnding the largest uniquely producible assembly using n states and the busy beaver problem for non-freezing systems and provide a freezing system capable of uniquely assembling an assembly whose length is exponential in the number of states of the system. We ﬁnish by exploring the complexity of the Unique Assembly Veriﬁcation problem in Tile Automata with diﬀerent limitations such as freezing and systems without the power of detachment.


Introduction
Self-assembly systems have quickly become an intense area of research due to fabrication simplicity [13], the ability to create systems at the DNA level [16], the control of nanobots [14], and the maturity of experimental techniques [12]. Self-assembly is a naturally occurring process where simple particles come together to form complex structures. These are computationally of interest since computing at the molecular level yields a lot of power.
There are several models of tile self-assembly, and they each strive to capture some aspect of self-assembling systems. A few of the better known models are the Abstract Tile Assembly Model (aTAM) [24], the 2-Handed Assembly Model (2HAM) [3], the Staged self-assembly model [10], and the Signal-passing Tile Assembly Model (STAM) [19]. There

Previous Work
In his Ph.D. thesis, Winfree presented the Abstract Tile Assembly model (aTAM) and showed it was capable of universal computation by simulating a Turing Machine [24], and the computational power is explored in depth in other works such as [15]. The 2-Handed Assembly Model (2HAM) [3] introduced a more powerful model and is capable of fuel efficient computation [20] along with the Signal-passing Tile Assembly Model [19] which has tiles that can interact to turn glues on or off.
In [10,25], the authors show a connection between finding the smallest Context Free Grammar and optimization problems in the Staged Assembly model. In the staged assembly model, it was show that while only using a constant number of tile types, a system can construct length-n lines using O(log n) bins and mixes [9]. Repulsive forces have been shown to aid in constructing shapes at constant scale [18]. Further, by utilizing the temperature to encode information, shapes can be constructed with constant (or nearly) tile types [6,22].
The Unique Assembly Verification problem asks if a given system uniquely produces a given assembly. In the aTAM this problem was shown to be solvable in polynomial time [1]. In the 2HAM this problem was shown to be in coNP with certain generalizations being coNP-Complete [3,21]. In the staged assembly model, this problem is known to be coNP NP -hard and conjectured to be PSPACE-Complete [23]. Adding the power of negative glues also vastly changes the complexity of this problem making in uncomputable in models that include it due to the ability for pieces of assemblies to break off [11]. However, adding negative glues but restricting the ability for assemblies to detach we still see an increase in difficulty with UAV in aTAM without detachment being coNP-complete [4]. The Tile Automata model was introduced in [5] merging ideas from Cellular Automata and Tile Self-Assembly. The authors showed that freezing tile automata (where a tile cannot repeat states) is capable of simulating non-freezing systems. This powerful model has also been shown to be capable of simulating models of programmable matter [2]. Cellular Automata has been shown to be Turing Complete even in 1-dimension [7].  Table 2 Results for the Unique Assembly Verification in Tile Automata. Transition Rules describes the types of transition rules allowed in the system. In Affinity Strengthening Systems all transition rules increase affinity so no detachment may occur. Freezing indicates whether the system is freezing where tiles cannot repeat states. Result 1D is the complexity of UAV in 1 Dimension and Result 2D is the complexity of 2 Dimensions. Theorem is where these can be found. * This result is only true when cycles in the production graph are allowed. All other results are true regardless of which definition is used.

Our Contributions
In Tile Automata, cases may occur where systems contain one terminal assembly but exhibit behavior that does not naturally seem to uniquely produce that assembly. We define unique assembly later, but note that the final requirement addresses a feature of Tile Automata and other models with detachment where there exist assemblies that are not terminal but are never part of the final assembly. Cycles in the production graph are not possible in many self-assembly models so we add this restriction. However many of our results work with or without this restriction, so we explore both cases.
In this work we explore Tile Automata systems that uniquely assemble n-length lines and the complexity of determining whether a system uniquely assembles a given assembly. We first present a Turing Machine simulation capable of covert and fuel-efficient computation. We use this construction to show a connection between the largest finite assembly problem and Busy Beaver Machines (Turing Machines that print a certain number of symbols using a minimum number of states). In the more restricted case of Freezing Systems we show we can construct n-length lines using O(n) states. Results are shown in Table 1.
We then explore the Unique Assembly Verification problem. An overview of the results are shown in Table 2. We show that UAV is uncomputable via Turing Machine simulation. We also extend this to 2-Dimensional freezing systems (this reduction results in a system with cycles). By removing the ability for assemblies to break apart we achieve a model closer to traditionally studied models. We restrict this by studying what we call Affinity-Strengthening systems where a state can never lose affinity by a transition. In this case, we show the UAV problem is PSPACE-Complete utilizing bounded-space Turing Machine simulation. When restricting the model to both Affinity Strengthening and Freezing we show membership in coNP NP . We then provide reductions to show coNP NP -completeness for 2-dimensional UAV and coNP-hardness in 1 dimension. Model and Definitions A Tile Automata system is a marriage between cellular automata and 2-handed self-assembly. Systems consist of a set of monomer tile states, along with local affinities between states denoting the strength of attraction between adjacent monomer tiles in those states. A set of local state-change rules are included for pairs of adjacent states. Assemblies (collections of edge-connected tiles) in the model are created from an initial set of starting assemblies by combining previously built assemblies given sufficient binding strength from the affinity function. Further, existing assemblies may change states of internal monomer tiles according to any applicable state change rules. An example system is shown in Figure 1.

States, tiles, and assemblies
Tiles and States. Consider an alphabet of state types 1 Σ. A tile t is an axis-aligned unit square centered at a point L(t) ∈ Z 2 . Further, tiles are assigned a state type from Σ, where S(t) denotes the state type for a given tile t. We say two tiles t 1 and t 2 are of the same tile type if S(t 1 ) = S(t 2 ).

Affinity
Function. An affinity function takes as input an element in Σ 2 × D, where D = {⊥ , }, and outputs an element in N. This output is referred to as the affinity strength between two states, given direction d ∈ D. Directions ⊥ and indicate above-below and side-by-side orientations of states, respectively.

Assemblies.
A positioned shape is any subset of Z 2 . A positioned assembly is a set of tiles at unique coordinates in Z 2 , and the positioned shape of a positioned assembly A is the set of coordinates of those tiles, denoted as SHAPE A . For a positioned assembly A, let A(x, y) denote the state type of the tile with location (x, y) ∈ Z 2 in A. For a given positioned assembly A and affinity function Π, define the bond graph G A to be the weighted grid graph in which: each tile of A is a vertex, no edge exists between non-adjacent tiles, the weight of an edge between adjacent tiles T 1 and T 2 with locations (x 1 , y 1 ) and (x 2 , y 2 ), respectively, is
The producibles and terminals of Γ.

Figure 1
An example of a tile automata system Γ. Recursively applying the transition rules and affinity functions to the initial assemblies of a system yields a set of producible assemblies. Any producibles that cannot combine with, break into, or transition to another assembly are considered to be terminal.
A positioned assembly A is said to be τ -stable for positive integer τ provided the bond graph G A has min-cut at least τ .
For a positioned assembly A and integer vector v = (v 1 , v 2 ), let A v denote the positioned assembly obtained by translating each tile in A by vector v. An assembly is a set of all translations A v of a positioned assembly A. A shape is the set of all integer translations for some subset of Z 2 , and the shape of an assembly A is defined to be the set of the positioned shapes of all positioned assemblies in A. The size of either an assembly or shape X, denoted as |X|, refers to the number of elements of any positioned assembly of X.

Breakable
Assemblies. An assembly is τ -breakable if it can be split into two assemblies along a cut whose total affinity strength sums to less than τ . Formally, an assembly C is breakable into assemblies A and B if the bond graph G C for some positioned assembly C ∈ C has a cut (A, B) for positioned assemblies A ∈ A and B ∈ B of affinity strength less than τ . We call assemblies A and B pieces of the breakable assembly C.
Combinable Assemblies. Two assemblies are τ -combinable provided they may attach along a border whose strength sums to at least τ . Formally, two assemblies A and B are τcombinable into an assembly C provided G C for any C ∈ C has a cut (A, B) of strength at least τ for some positioned assemblies A ∈ A and B ∈ B. C is a combination of A and B.
Transitionable Assemblies. Consider some set of transition rules ∆. An assembly A is transitionable, with respect to ∆, into assembly B if and only if there exist A ∈ A and B ∈ B such that for some pair of adjacent tiles t i , t j ∈ A: ∃ a pair of adjacent tiles

Tile Automata model (TA)
A tile automata system is a 5-tuple (Σ, Π, Λ, ∆, τ ) where Σ is an alphabet of state types, Π is an affinity function, Λ is a set of initial assemblies with each tile assigned a state from Σ, ∆ is a set of transition rules for states in Σ, and τ ∈ N is the stability threshold. When the affinity function and state types are implied, let (Λ, ∆, τ ) denote a tile automata system. An example tile automata system can be seen in Figure 1. . For a given tile automata system Γ = (Σ, Λ, Π, ∆, τ ), the set of producible assemblies of Γ, denoted PROD Γ , is defined recursively: Intuitively this means that A may grow into assembly B through one or fewer combinations, transitions, and breaks. We define the relation → Γ to be the transitive closure of → Γ 1 , i.e., A → Γ B means that A may grow into B through a sequence of combinations, transitions, and/or breaks. Γ is said to be freezing if G is acyclic and non-freezing otherwise. Intuitively, a tile automata system is freezing if any one tile in the system can never return to a state which it held previously. This implies that any given tile in the system can only undergo a finite number of state transitions.

One Dimensional Turing Machine
Since Tile Automata is a generalization of 2HAM and borrows from Cellular Automata it is expected that it is as powerful as both of these models. Here we present a construction that is capable of both covert and fuel-efficient computation. We present informal definitions of each of these. For rigorous definitions, we refer the reader to [20,19] for fuel-efficiency, and [4] for covert computation.
States. Conceptually, we partition the set of states (Σ T A ) into three subsets for clarity: Transitions. We create a transition rule such that for each Tile Automata state h (q,s) ∈ H and σ i ∈ S, the rule represents a step in M (Figure 2b). WLOG, assume an assembly A representing the a configuration of a Turing Machine M has the state h (q,s) with states, σ L , σ R ∈ S to the left and right of h (q,s) , respectively. If the head of M moves right then the transition rule will take place between h (q,s) and σ R . If the TM head moves left then the transition rule will be between σ L and h (q,s) . h (q,s) will transition into the state representing 3 1-Dimensional Tile Automata systems always have τ = 1 so we omit that parameter from T

D N A 2 6
the symbol that is to be written on the tape in M after a state q reads symbol s. Either σ L or σ R would then transition into the state h (q ,σ L ) or h (q ,σ R ) respectively where q is the new state of the head of M after reading s from state q. There also exists an additional transition rule if σ L or σ R is a buffer state. This will transition B L or B R to state B L or B R respectively. B L /B R transitions into the symbol state representing the blank symbol when it is to attached to state B L /B R . Accept/Reject. For transitions where M enters the accept state, we create transition rules where both tiles enter the signal accept state. This state has transition rules with each other state transitioning that state into the signal accept state as well. If it transitions with a buffer state or the final accept state, both tiles enter the final accept state. The final accept state also transitions with every other state and both tiles become the final accept state. The reject states follow the same rules.

Input.
We construct a Tile Automata system that runs M on a string x. We construct the system as described and create an initial assembly A that represents x. A will have a length of |x| + 2. The left most state of A will be B L . (WLOG assume the head of M starts on the left most cell.) The next state of A will be s (q,s) where q is the initial state of M and s is the first symbol in x. The next states of A each represent the symbols in the string x in order. The rightmost state of A is B R (Figures 2c, 2d).
The buffer states B L and B R are always an initial assembly and are used to extend the tape if the head attempts to move past the right edge. First, the head state causes B R to transition to B R . With B R on the edge of the assembly a new B R tile will attach. Once this attachment occurs B R transitions to the symbol state representing the blank symbol on the tape. Then the head state may transition with the blank symbol if needed. The same process occurs with B L when the head attempts to move off the left end of the tape.
Terminal Assemblies. If M accepts the input x, then by the rules of our system the accept states will appear in our assembly. The signal accept state will be the first to appear and will propagate to the edges of the assembly. Once the signal accept state reaches the buffer states on the edge of the assembly they will transition into the final accept states. Any final accept state that is attached to any other state will make that tile into a final accept state. Any two final accept states that are next to each other do not have affinity and will detach. After the accept state appears in an assembly the only terminal assemblies that will exist are single final accept states. The same will occur if the machine rejects.
Since there are only two possible terminal assemblies, the final accept state and the final reject state, this construction performs covert computation. This computation is also fuel efficient since the only time a new assembly is attached is when the Turing Machine writes on a blank symbol at the edge of the tape, which can only occur once per computation step.

Freezing Systems
Here we present modifications to the construction above for freezing 1-dimensional systems to perform bounded time computation. Proof. We modify the construction from Theorem 3.4. We have Σ T A partitioned into three sets H, S, and W. In a freezing system states can not be repeated, so for each state in H and S we create a number of states equal to the number of steps the Turing Machine M can take. Each head state will not only represent the state of the Turing machine and the symbol on the tape, but it will also represent how many steps the Turing Machine has taken. Each symbol state will represent the symbol on the tape and also the last step that it was modified. The head states will have a transition rule with each symbol state regardless of the last step that symbol was modified. When a head state transitions into a symbol state it will represent the step that the transition took place.
This increase in state-space ensures no tile will ever become the same state twice. Symbol states written at step x can only transition into a head state. The head state will always represent a step y > x. When the head state transitions back to a symbol state it will go to a symbol state written at state y. Since x < y, no tile will ever repeat states.

Shapebuilding and the Largest Assembly Problem
Given a Tile Automata system with limited states, we examine how large of an assembly may be constructed. We first consider the case of one-dimensional assemblies and leverage Theorems 4.2 and 4.3 to show that the longest buildable line's length is related to the Busy Beaver function in general, and exponential in the case of freezing systems. We then consider the Largest Assembly problem, and apply Theorem 4.3 to show that this problem is uncomputable for general TA even in one-dimension.

General
The Busy Beaver function BB(n), for any positive integer n, is the maximum number of symbols printable by a Turing Machine using n states. 4  Proof. We modify the construction from Theorem 3.4 so that once M halts the head state transitions into a symbol state. The resulting assembly will be terminal since symbol states do not transition with each other. This final assembly will consist of symbol states that each represent the symbols in x. The number of states used by T is 2n head states, 2 symbol states, and 4 buffer states which is bounded by O(n). Note there is no need for accept/reject states since the head state just turns into a symbol state when the TM halts. Proof. Using Lemma 4.2 we can take any Busy Beaver Machine and create a Tile Automata system which uniquely produces an assembly the same size as the number of symbols printed on the tape.

Freezing
For freezing Tile Automata systems, we can create systems that uniquely produce n-length lines and only require states that are logarithmic in the length of the line. For clarity we begin with a helping lemma. Proof. The cases for x = 0, 1, 2 are trivial. A system that uniquely builds a length 2 3 line is shown in Figure 3. The only initial states are 1 A and 1 B . The affinities are between adjacent states. The transition rules are highlighted in red which transition to make the next producible assembly depicted. Our unique terminal assembly is a length 2 3 line. We will show that by adding a constant number of states, transitions, and affinities to this system the length of the uniquely assembled line will double, and that this process can be repeated to uniquely assemble any length 2 n line.
For n > 3, Let T n be the system that uniquely assembles a length 2 n line derived by recursively applying the following process to T 3 n − 3 times. Assuming that T n uniquely assembles a length 2 n line of the form (1 A , n D , . . . , n D , n A , n B , n F , . . . , n F , 1 B ), T n+1 is constructed as follows. First we add the non-initial states n + 1 A , . . . , n + 1 F , and a transition from (n A , n B ) to both (n + 1 E , n B ) and (n A , n + 1 C ). We add six new transitions involving n + 1 C or n + 1 E which allow that state to propagate left/right respectively and transition to n + 1 D and n + 1 F respectively when the end to the line assembly is reached. There will be 6 additional transition rules added to allow states n + 1 D and n + 1 F to propagate in the opposite direction and eventually transition 1 A and 1 B to n + 1 B and n + 1 A respectively. Adding the affinity rule (n + 1 A , n + 1 B ) will allow the two length 2 n lines to bond uniquely assembling a length 2 n+1 line. This new system uniquely produces a length 2 n+1 line of the same form previously described, to which the process can be repeated to once again double the length of the unique assembly. Proof. We modify the construction from Lemma 4.4 to build arbitrary length-n lines.
To build any length-n line using O(log n) states we modify T = T log 2 n . Let b i indicate the i th least significant bit of n's binary expansion. For all i > 2 such that b i is equal to 1 we add a transition rule from (i A , i B ) to (i L , i L ) in T . When these two states are adjacent ...

Figure 3
A system that uniquely builds a length 2 3 line. The only initial states are 1A and 1B. The affinities are between adjacent states. The transition rules are highlighted in red which transition to make the next producible depicted. they exist in an assembled line of length 2 i . This transition "locks" this producible, stopping it from growing. Four more transition rules are added to allow this state to propagate to the ends of the line. Finally, we add a transitions between all i L states and the states 1 B and 1 A , which are the endpoints of the lines. These endpoints transition to states that have affinity with the next largest locked producible on one side. If b 1 or b 2 is equal to 1 we add in an assembly of size b 1 × 1 + b 2 × 2 that connects to the last locked producible.

Largest Finite Assembly Problem
Given a positive integer n, the Largest Finite Assembly Problem asks what is the largest assembly that can be uniquely assembled in a Tile Automata system using n states.

Theorem 4.6. The Largest Finite Assembly problem in Tile Automata is uncomputable.
Proof. Let σ n be the size of the largest assembly that can be constructed using n states. From Theorem 4.3, there must exists a system that can construct a line of length BB(n) using O(n) states so σ O(n) ≥ BB(n). This means σ n grows asymptotically as fast as the Busy Beaver function, which grows faster than any computable function. Thus, σ n is uncomputable.

Unique Assembly Verification
A well-studied problem in self-assembly is the Unique Assembly Verification problem. This asks whether a given system uniquely produces a given assembly. We show that the general problem is undecidable. Again, we consider two definitions of Unique Assembly one where systems with cycles are allowed in the production graph, and the other where they are not.

Undecidability Theorem 5.1. Tile Automata Unique Assembly Verification is undecidable even in one dimension.
Proof. Using Theorem 3.4 we reduce from the halting problem. Given a Turing Machine M we can construct a Tile Automata system Γ that simulates M . If M halts then there exists a single terminal assembly which is the final accept state tile. If M does not halt then there exists no terminal assemblies. This is true under both definitions of Uniquely Assembly since the only time there would exist a cycle in the production graph of Γ is if M ever revisited a configuration. If M revisits a configuration then M will not halt so our system will not uniquely assemble the final accept state tile. Proof. To prove undecidability we reduce from UAV for 1-Dimensional Tile Automata systems (Theorem 5.1). Given an instance of UAV asking if a system Γ uniquely produces an assembly A we use the simulation provided in [5] to create a freezing Tile Automata system Γ . By the definition of Γ simulating Γ if TERM Γ only contains one terminal assembly A then TERM Γ will only contain one assembly A that maps to A.
The simulation utilizes constant scale macroblocks to represent tiles so the height of the assemblies in T will be constant height. This simulation also uses a token passing scheme that results in cycles in the production graph so this system will not uniquely produce assemblies if cycles are not allowed.

Affinity Strengthening UAV
Many self-assembly models where UAV is well-studied do not have detachment (and are thus decidable). Here, we investigate versions of TA without this power and show hardness. We do this by exploring Affinity-Strengthening Tile Automata (ASTA). We start by considering the non-freezing case, then consider the added restriction of freezing.

Non-Freezing Lemma 6.1. The Unique Assembly Verification problem in Affinity-Strengthening Tile Automata is in PSPACE.
Proof. The UAV problem can be solved by the following co-nondeterministic algorithm. Given an Assembly A and an ASTA system T , nondeterministically build an assembly B of less than size 2|A| where |A| is the size of the given assembly. We now have a branch for every producible assembly and we check the following about B in order. If any branch rejects, the whole algorithm rejects.
If B = A, accept. If |B| ≥ |A|, reject. If B = A and B is terminal, reject. Continue nondeterministically performing construction steps (attachments and transitions) on B. If B is reached again, reject. If A is reached, accept.
Only assemblies up to size 2|A| can be checked since if any assembly exists larger than 2|A|, it would have been built using at least one assembly of size greater than |A|, which would have already been rejected. We can also check if B is terminal using a nondeterministic subroutine by non-deterministically building a second assembly and checking if it can attach to B. Checking if an assembly is breakable or if it is transitionable can be done in polynomial time and space. The final step of the algorithm checks for cycles in the production graph. By the definition of unique assembly, B → Γ A, by continuing to perform construction steps on B we will eventually reach A. If we ever end up reaching B again we know that there exists a cycle in the production graph (cycle checking in a directed graph is in P).
This algorithm shows the UAV problem for Affinity-Strengthening Tile Automata is in coNPSPACE which equals PSPACE. For the case of unique assembly where cycles in the production graph are allowed, the last step of the algorithm is skipped.

Freezing
In this section we show the complexity of Unique Assembly Verification in a freezing Affinity-Strengthening Tile Automata system. In 2-dimensions, we show UAV is coNP NP -Complete. We utilize the same reduction strategy as in [23]. We conclude by showing coNP-hardness for UAV in one dimension. Note that cycles cannot occur in Freezing Affinity-Strengthening Tile Automata, so we only consider one definition of Unique Assembly. Definition 6.4 (∀∃3SAT). Given a 3SAT formula φ(x 1 , . . . , x k , x k+1 , . . . , x n ), is it true that for every assignment to variables x 1 , . . . , x k , there exists an assignment to x k+1 , . . . , x n such that φ(x 1 , . . . , x n ) is satisfied? Lemma 6.5. The Unique Assembly Verification problem in freezing Affinity-Strengthening Tile Automata is in coNP NP .
Proof. Take the construction and algorithm from Lemma 6.1, we prove that the running time is polynomial. When building an assembly B, since the system is freezing we know the time to build B is |Σ||B| where |Σ| is the number of states in the system. Since we reject if one branch rejects, this is a coNP algorithm.
We utilize one subroutine that is in coNP to check if B is terminal. This is done in polynomial time by nondeterministically building a second assembly and checking if they can attach. If there is an assembly that can attach to B, then the assembly is not terminal. Using the coNP algorithm and using the subroutines as oracles, this problem is in coNP NP Proof. Given an instance of ∀∃3-SAT, this reduction produces a τ = 2 freezing ASTA system which uniquely assembles a target assembly if and only if the instance of ∀∃3-SAT is true. This system has stability threshold 2 to allow for cooperative binding in which two assemblies attach using affinities at two separate points, when one of the affinities alone would not be strong enough for this attachment to be stable.
Overview. We first create an 'L'-shaped base assembly contained in a larger frame ( Figure  4b) that encodes a variable assignment. Rows of this assembly represent clauses and columns represent variables. Each clause is evaluated by cooperatively placing tiles that represent the assignment of the variable in its column, and whether the clause of its row is currently satisfied. Once the assignments are evaluated, additional tiles fill out the rest of the frame. If the assignment evaluates to false, then frame will be filled. If the assignment evaluates to true, then there will be remaining spaces representing the assignment to the variables in the first quantifier. We construct a test assembly for every possible assignment to thee variables that can attach into that space. Once an assembly has completely filled out its frame, all states inside transition into a target state and create our target assembly.
Base Assemblies. We construct a rectangular base assembly for every possible variable assignment to x 1 , . . . , x n , with the rows of this assembly representing clauses and columns representing variables. There are two sets of initial states for each variable: one for 0, and one for 1. These sets of states attach to form length-4 line assemblies. The line assemblies have affinities with both the 0 and 1 line assemblies of the next variable. The nondeterministic nature of the model will ensure the creation of all possible combinations of these 0 and 1 line assemblies (Figure 4a). Given m clauses in our 3SAT formula, the TA system includes tiles with initial states C 1 , . . . , C m . These states cooperatively attach to state A and a frame (Figure 4b). The frame ensures there is no unbounded growth. Tiles then cooperatively bind to fill out this structure. The affinities between these states and the variable line assemblies are encoded such that they evaluate if the variable assignment, represented by the base assembly, satisfies the 3SAT formula (Figure 5a). The row containing C i evaluates whether the i th clause is satisfied by the variable assignment of the base. U and S states cooperatively attach to fill out a row-U indicating the clause has not yet been satisfied, and S indicating that it has. This is done by "passing" the assignment of the variable line upwards with a specific encoding of the affinities. When an S state attaches, only S states can attach to its right side. This allows a Y state to attach at the end of the row if a previous clause was not already evaluated to be unsatisfied. If it is not satisfied, the rightmost state of that row will be N , which does not allow a Y state to attach above it.  Figure 5 (a) Initial states needed to evaluate if the variable assignment satisfies the 3SAT formula. Choose 1 from A/B/C for each clause/variable combination. Choose A if 1 assigned to variable y satisfies the x th clause, B if 0 satisfies, and C if the variable does not appear in that clause. T is a placeholder for U or S, depending on which was chosen for each clause/variable combination. (b) Example of a 4-variable, 3-clause base assembly that is marked as true (top right "Y"). The assembly grows downward, but interacts with the variable tile line to encode their variable assignment in the assembly's geometry. (c) Example of a 4-variable 3-clause base assembly marked as false (top right "N"). The assembly grows to fill out the entire frame.
Once the rectangle is filled out an assembly will be marked as "True" or "False", represented by the top right Y /N state in the construction. (Figure 5b, 5c). True assemblies grow downward, leaving a space between the base assembly and the frame. The shape of this space is an encoding of this assembly's original variable assignment of x 1 , . . . , x k (Figure 5b). False assemblies also grow downward, but entirely fill out the frame of the base construction.
Test Assemblies. A set of test assemblies are also built using the same nondeterministic method used to create the base assemblies' variable assignments. A test assembly is created for each assignment to variables x 1 , . . . , x k (Figure 6a). The geometry of a test assembly encodes this variable assignment in a complementary fashion to that of a "True" base assembly representing the same assignment to x 1 , . . . , x k . This allows a test assembly to attach to a "True" base assembly with the same variable assignment to x 1 , . . . , x k , but not to any other due to that causing overlapping geometry. The test assemblies cooperatively bind with two strength-1 affinities at two points (Figure 6b). A test assembly will only be terminal if there is no base assembly matching its variable assignment that was marked as "True".
Transition to Uniform Assembly. If the solution to the instance of ∀∃3SAT is true, all assemblies eventually grow/transition to one unique target assembly. To achieve this, there are state transitions which allow every "True"/"False" flagged base assembly to grow into one uniform assembly. For base assemblies marked "True", to which a test assembly attached, the states needed to cooperatively bind these test assemblies to base assemblies having a transition rule to transition to state T . For assemblies marked "False", a transition to state T occurs when A and F (Figure 5c) are adjacent. Additional transition rules between state T and all other states (excluding the frame states) allow this state to propagate throughout the entire assembly. The transitions used are shown in Figure 7a. These transitions will change every state besides the frame states to state T . This is the target assembly for our created instance of ASTA UAV (Figure 7b).
The only terminal assembly possibly produced that is not the target assembly is a test assembly representing a specific assignment to x 1 , . . . , x k that could not attach to an assignment assembly marked "True", which represents the same variable assignment. Thus, the system only uniquely assembles the target assembly if the instance of ∀∃3SAT is true.
Theorem 6.7. The Unique Assembly Verification problem in freezing Affinity-Strengthening Tile Automata is coNP NP -Complete.

Theorem 6.8. The Unique Assembly Verification problem in freezing Affinity-Strengthening Tile Automata is coNP-hard in one dimension.
Proof. We show Affinity Strengthening Freezing UAV is coNP-hard by describing how to reduce from any problem in coNP. Given a problem L ∈ coNP take a nondeterministic Turing Machine M that decides L. From Theorem 3.5, we construct systems that simulate bounded-time Turing Machines. Since we are considering polynomial-time machines, the size of this Tile Automata system is also polynomial. We change the system to be Affinity Strengthening in the same way as in Lemma 6.2. Further, since the Tile Automata model includes nondeterminism in selecting possible transitions for an assembly, we can simulate nondeterministic Turing Machines. We simply have transition rules for each possible outcome.
Using the method described above we can simulate M on x. If any of the possible computation paths lead to M accepting, the assembly with the accept states will appear as a terminal assembly. If all possible computations path reject, the only terminal assembly will be the assembly with the reject states.

Conclusion
In this paper we looked at a powerful new model of self-assembly that combines properties of both cellular automata and hierarchical self-assembly models. We showed that even extremely limited and simple constructions in Tile Automata are powerful and capable of arbitrary computation. We also showed how difficult it is to determine the output of these limited systems. This opens several directions for future work. One direction is further exploring the assembly of length-n lines in freezing systems. Does there exist a bound on buildable length? Is the finite assembly problem in freezing or other restricted system decidable? Also attempting to construct lines in systems with additional restrictions such as limits on the number of transition rules per state.
For the UAV problem, we show that the general case is undecidable. However, the complexity of the problem in freezing 1-dimensional systems is open. If the problem of asking whether a system is bounded is decidable, then UAV is decidable by first identifying whether a system is bounded and then constructing the production graph and finding the terminal assemblies. The problem for freezing 2-dimensional systems with no cycles is also open.
Since Tile Automata can be seen as a generalization of 2HAM, our results can be compared to the open problem of UAV in that model which is known to be in coNP. The most restricted version of Tile Automata we explore is Affinity Strengthening and freezing, which is only one level of the polynomial hierarchy above other generalizations of 2HAM such as allowing tiles to go into 3-dimensions or allowing a variable temperature. Further limiting Tile Automata may provide more insight into the hardness of these problems.