Theoretical and Experimental DNA Computation (Natural ...
Theoretical and Experimental DNA Computation (Natural ...
Theoretical and Experimental DNA Computation (Natural ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
76 4 Complexity Issues<br />
4.3 A Strong Model of <strong>DNA</strong> <strong>Computation</strong><br />
In what follows we refine the weak model just described. We assume that the<br />
initial tube (which takes at most linear time to construct) is already set up.<br />
The pour operation is fundamental to all compound operations within<br />
our weak model. We must therefore reassess the time complexity of these<br />
operations. The remove operation requires adding to U<br />
1. i tubes containing short primers to mark selected str<strong>and</strong>s<br />
2. restriction enzymes to destroy marked str<strong>and</strong>s<br />
This operation is inherently sequential, since there must be a pause between<br />
steps 1 <strong>and</strong> 2 in order to allow the primers to mark selected str<strong>and</strong>s. Therefore,<br />
the remove operation takes O(i) time. Creating the union of i tubes is an<br />
inherently sequential operation, since the assistant must first pour U1 into U,<br />
then U2, <strong>and</strong>soon,uptoUi. Rather than taking constant time, the union<br />
operation actually takes O(i) time. It is clear that the copy operation may be<br />
thought of as a reverse-union operation, since the contents of a single tube U<br />
are split into many tubes, {Ui}. Therefore, copy takes O(i) time.<br />
We may strengthen the strong model even further by taking kinetic issues<br />
into consideration. All filtering models rely upon the fact that every possible<br />
solution to the given problem is present in the initial tube with equal<br />
probability. These solutions are created by the action of component molecules<br />
“sticking” together to form long chains. Given a particular problem of size n,<br />
we may naively assume that the creation of the initial library takes O(log n)<br />
time [93]. Given a particular solution, we may imagine a balanced binary tree,<br />
where each leaf node represents a component molecule, an internal node represents<br />
a “sticking-together” reaction, <strong>and</strong> the root node represents the string<br />
encoding the solution. Since the depth of the tree is log n, the time complexity<br />
of the creation phase immediately follows.<br />
However, Kurtz et al.[93] present a more detailed analysis of the kinetic<br />
issues involved, suggesting that the creation phase actually takes Ω(n 2 )time.<br />
Given the space available, <strong>and</strong> the fact that in what follows we assume that<br />
the initial library is set up, we omit a detailed description of the arguments<br />
presented in [93]. However, we acknowledge the importance of taking kinetic<br />
issues into consideration in the future.<br />
Complexity comparisons<br />
In this section we compare time complexities for algorithms previously described<br />
[65] within both the weak <strong>and</strong> strong models. In particular, we examine<br />
in detail the problem of generating a set of permutations. This will<br />
characterize the general form of comparisons that can be made, so that in the<br />
space available we merely tabulate comparisons for other algorithms.<br />
In [65] the authors claimed a time complexity for the Permutations algorithm<br />
of O(n). This is based on the assumption that remove is a constant-time