Is there a standard way how can the index over a molecular structure be kept in the computer?
A molecule is a graph, where nodes have labels (chemical element type), and edges are chemical bonds.
There is SMILES representation that determines the molecular structure, but SMILES representation isn't unique.
One can take the set of all possible SMILES representations for one molecule, sort them alphanumerically, and pick the first element. This would be a unique string that is in one-to-one relationship with a molecule, and would satisfy my request.
But is there a standard way how to have a value that is in one-to-one relationship with a molecule that can be used as an index in the database that has many molecules in it?
By extension, how to efficiently search a set of molecules and, given a particular molecule, find a set of the closest structural matches? What characteristics of the molecules should be memorized that would allow such search to be efficient?