13.12.2012 Views

Theoretical and Experimental DNA Computation (Natural ...

Theoretical and Experimental DNA Computation (Natural ...

Theoretical and Experimental DNA Computation (Natural ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

106 4 Complexity Issues<br />

ACC[] := bin(2n);<br />

ACC[] := ADD(ACC[],FETCH(M[···],bin(n + k)));<br />

M[···]:=STORE(ACC[],cond,bin(3n + k));<br />

ACC[] := FETCH(M[···],FETCH(M[···],bin(3n + k)));<br />

ACC[] := ADD(ACC[],FETCH(M[···],bin(2n + k)));<br />

M[···]:=STORE(ACC[],cond,bin(2n + k));<br />

ACC[] := bin(n);<br />

ACC[] := ADD(ACC[],FETCH(M[···],bin(n + k)));<br />

M[···]:=STORE(ACC[],cond,bin(3n + k));<br />

ACC[] := FETCH(M[···],FETCH(M[···],bin(3n + k)));<br />

M[···]:=STORE(ACC[],cond,bin(n + k));<br />

Total size = n × (12Size(FETCH)+6Size(STORE) +4Size(ADD) +<br />

Size(SUB)+Size(cond − eval)) = O(n 2 log n).<br />

Depth is at most (12Depth(FETCH)+6Depth(STORE)+4Depth(ADD)+<br />

Depth(SUB)+Depth(cond)) = O(log n).<br />

This instruction, however, is repeated log n times, giving a total size of<br />

O((n log n) 2 ) <strong>and</strong> depth O(log 2 n).<br />

Final instruction<br />

Input: M[1],...,M[5n], each consisting of r bits<br />

Output: M[1],...,M[5n] representing the contents of memory after the n<br />

processors have executed the first instruction.<br />

ACC[] := FETCH(M[···],bin(2n + k));<br />

M[···]:=STORE(ACC[], 1,bin(4n + k));<br />

Total size = n×(Size(FETCH)+Size(STORE)) = O(n 2 log n). Total depth<br />

= Depth(FETCH)+Depth(STORE)=O(log n).<br />

In total we have a combinational circuit for list ranking which has size<br />

O((n log n) 2 ) <strong>and</strong> depth O(log 2 n).<br />

4.13 Summary<br />

In this chapter we have emphasized the rôle that complexity considerations<br />

are likely to play in the identification of “killer applications” for <strong>DNA</strong> computation.<br />

We have examined how time complexities have been estimated within<br />

the literature. We have shown that these are often likely to be inadequate<br />

from a realistic point of view. In particular, many authors implicitly assume<br />

that arbitrarily large numbers of laboratory assistants or robotic arms are<br />

available for the mechanical h<strong>and</strong>ling of tubes of <strong>DNA</strong>. This has often led to<br />

serious underestimates of the resources required to complete a computation.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!