How does the computer work?

1) What problems have you solved using this technique?
An automaton can answer certain yes/no questions about a list of symbols.
We realized a two-state two-symbol automaton, which has well-defined (and rather limited) computing power. Typical questions it can answer are shown in Fig 1a and 1d of the Letter to Nature, e.g. does the list of a's and b's have an even number of b's, does the list have at most one b, etc.
The automaton we built can be programmed with 765 such "questions" to answer, and can be fed an input to answer the question about. Both the input and the programs are made of DNA

2) Can you give me a more detailed explanation of an example of a specific computation?
Consider the question: Does the list "bab" contains an even number of b's? The list "bab" is encoded by the input DNA molecules, where each occurence of the letter "b" is encoded by the sequence CGCAGC (see Fig 2c) and "a" is encoded by CTGGCT. The program for determining whether the input has an even number of b's is encoded by the software molecules. An automaton computes by modifying its internal state (in our case we have two states, S0 and S1) according to the next input symbol and its rules of operation. Using our method, the sticky end of the input encodes the symbol and the state. See the animation on this site, the explanation on the research page, and the "transition cycle" section in Fig 2e of the Letter to Nature.

3) What sort of human intervention was required in previous DNA computers?
Previous DNA computers required PCR (polymerase chain reaction, a technique that amplifies specific nucleic acids in vitro), separation of molecules according to length, separating the same solution into several test tubes, adding different solutions to each such test tube, etc.

4) What type of DNA are you using -- single strands or the familiar double helix?
Specially constructed double stranded molecules, according to Fig 2b in the Letter to Nature.

5) How large are the molecules and how do they compare to biological human DNA?
We use 6 base pairs per input symbol, with some tail, for the input, and short oligos for the software molecules, with one strand 4pb longer than the other (Fig 2 of the Letter to Nature). Each of the software molecules is about 40 base pairs long. They are artificially constructed molecules, much much shorter than human DNA.

6) What were the challenges you had to overcome to automate the process?
The automaton was designed to work autonomously. We had to purify the participating molecules and find the right experimental conditions for them to work as planned.

7) Can you explain how the gel electrophoresis process works?
You have a gel with two sides attached to electrodes, and place the DNA near the minus electrode. The DNA travels slowly inside the gel towards the plus electrode, at a speed that is a function of the molecule size. If you stop the process at the right time, you have a spread of the molecules according to their length. If you add on the side a DNA mix with a "ladder" of DNA molecules of known lengths, you can determine the lengths of the different DNA molecules in the original solution.

8) How do you come up with the 1 trillion automata? Is that the number of sites on the DNA where reactions are occurring?
Each automaton consists of an input molecule, software molecules, and hardware molecules. We can run together many automata in parallel in "a drop of water" (i.e. 120 microliter of watery solution), provided they share the same software (and, of course, the same hardware). We do this not because we want to demonstrate parallelism, but because the experimental techniques of handling and mixing solutions with molecules, and then visualizing this, are simpler of you work with this scale of numbers, rather than with single molecules.
So in effect we have a trillion input molecules in solution, and the software and hardware molecules (of which there are approx. a trillion of each kind) all operate on the inputs independently and it in parallel.

9) How is the computational problem defined?
The problem is defined by the "software" (DNA) molecules we choose to insert into the solution. The software molecules perform on the sequence of symbols encoded by the input molecule

10) Does the problem to be solved depend upon the order in which the bases appear in the ds DNA?
The automaton's "program" (set of chosen software molecules) determines the questions it can answer. Every input molecule presents a specific list of a's and b's, against which the question is answered. I should add that the only DNA molecules we have processed as input are those that obey the specific structure specified in Fig 2b in the Letter to Nature. Our automaton is not designed to work with other DNA molecules.

11) How easy is it to 'read' the data from the molecular computer?
The computer's ultimate application does not involve direct visual interaction with a human being, but rather interaction at the molecular-scale with the biochemical environment. However, in order to analyze the computer molecular system, and demonstrate to the scientific community how it works, we use standard molecular biology techniques for analyzing DNA molecules, namely gel electrophoresis, which allows visualizing large quantities of DNA molecules in order to determine their length. Based on the length information we can deduce many properties of the underlying molecular system, as explained in the paper.

12) When you explain that your experience is equivalent to 10^12 calculations, are they identical or different calculations?
They all must share the same software, which is floating molecules in the solution, but they can be different inputs. In the example of a software program for testing whether a list has an even number of b's, each such list could, in principle, be different, and for each a separate (and correct) output molecule will be formed in the solution.

13) In the figure where you show that FokI cleaves the input molecule inside the next symbol, what does the SYMBOL mean?
Our automaton works on strings made of two symbols (you can call them 0 and 1, or a and b). Each symbol is encoded by a sequence of 6 DNA based pairs. The computation cuts inside the symbols (6bp) exposing a four-nucleotides-long sticky end which encodes, in addition to the symbol, the next state of the computation (which is deemed to be S0 if it is the rightmost four nucleotides, and S1 if it is the leftmost nucleotides).

Back