5

In Adleman's 1994 paper (archived), he describes a method of manipulating DNA molecules in a lab that results in a solution to the Hamiltonian Path problem with high probability.

He claims that "The number of different oligonucleotides required should grow linearly with the number of edges", and this makes sense given the molecular encoding of the edges described in the paper, but he also claims that "the number of procedures required should grow linearly with the number of vertices in the graph". Why is this last claim true? In other words, why isn't the assembly of edge molecules counted towards this calculation? If it were, the complexity of lab procedures would be $O(|V|^2)$, as the number of edges in a graph is bound by this function.

Thank you.

idoby
  • 151
  • 4

1 Answers1

2

You are right that in the coding of the graph one needs a possibly quadratic number of strands to represent the edges.

My guess is that Adleman likes to distinguish the two kinds of operations. First there is the coding of the input graph, which may be very complicated to avoid accidental combinations. Then there is the number of laboratory steps to actually check the presence of Hamiltonian paths.

I think this might be explained by the way he envisions how molecular computing can be used. Given a big "database" of available strands one performs a number of laboratory steps to find the solution to a problem. This is then the same operation performed in parallel to zillions of molecules. This I read from the way how he explains the number of operations performed per second.

Hendrik Jan
  • 31,459
  • 1
  • 54
  • 109