So, given my previous posts on what Faulon's signatures are, here is an explanation of how they are used in the structure enumeration algorithm that I am almost finished implementing.

Another (overly) complex diagram! But the formula here is a bit difficult to interpret otherwise. In the top left corner is a graph

The core test in this algorithm is for

*compatible*bonds. Two atoms are only joined if : a) they have compatible*target*signatures and b) there are less than the target number of bonds already. A target signature here is just a signature that is set on the atom for it to match, like a pattern.The first of these tests is illustrated here:

Another (overly) complex diagram! But the formula here is a bit difficult to interpret otherwise. In the top left corner is a graph

**G**(slightly resembling hexane without the hydrogens) which is, by convention, composed of vertices (**V**) and edges (**E**).The equation to the right of the graph defines part of the condition for a compatible bond. The tau terms are just target signatures, as shown on the upper right. The tricky term is

^{h-1}**Ïƒ**_{Ï„(y)}**(z)**which means 'a signature starting from the neighbour**z**of**y**in the subgraph defined by**Ï„(y)**'. This requires using a target signature (Ï„(y)) as if it was a subgraph - shown on the bottom left for the target**b**and the neighbour**n**.The same process is repeated on the bottom right of the figure for

**b**and**m**- which matches the height - 1 target signature for**c**. This should make sense, since the atoms labelled with**b**in the graph are attached to both**a**and**c**- so the signature for**b**must be compatible with both. It is easy to check that**a**and**c**are not compatible, and cannot therefore be bonded.
## Comments