SMILES arbitrary target specification (SMARTS) is a language for specifying substructural patterns in molecules. The SMARTS line notation is expressive and allows extremely precise and transparent substructural specification and atom typing.
SMARTS is related to the SMILES line notation that is used to encode molecular structures and like SMILES was originally developed by David Weininger and colleagues at Daylight Chemical Information Systems. The most comprehensive descriptions of the SMARTS language can be found in Daylight's SMARTS theory manual,[1] tutorial [2] and examples.[3] OpenEye Scientific Software has developed their own version of SMARTS which differs from the original Daylight version in how the R
descriptor (see cyclicity below) is defined.