Why build molecules from fragments? We suppose that it
is reasonable to use molecular sub-units which have
"functional group" status in the domain of interest
(e.g., medicinal chemistry). If this is correct, the
remaining problem is to identify these fragments.
The definition of a fragment for GADD is inspired by
the definition of ClogP fragments.
ClogP fragments are defined by isolating carbons,
carbons not double or triple bonded to hetero atoms. When
ICs are removed, what's left are ClogP fragments.
For GADD, we also define "carbon fragments" as what's left
after ClogP fragments are removed.
Note from this definition that fragments always attach to
carbon fragments and vice versa. Inter-fragment bonds are
always between ICs and non-ICs.
Attachment points are distinguished by the bond order.
In ClogP, the type of attached atom is also part of the
fragment definition (the environment). In GADD we
ignore this -- for now.
However, GADD is not tied to any fragment selection strategy.
Any approach from single atoms on up is possible.
Fragments may be extracted from existing databases of molecules.
A separate program cpfrags.c has been written
for this purpose.