The majority of rule-based approaches use SMIRKS to encode the rules needed to cover the desired chemical space . They can number in the thousands, especially if retrosynthetic prediction is the goal ("predict the synthesis of a given molecule in any possible way"). SMIRKS, however, do not allow one to directly encode the synthetic chemists' accumulated knowledge about constraints and limitations of the reactions as a function of the structural details of the reactants. Even advanced machine learning patterns typically discover patterns in the data, not true chemical understanding. SAVI, in contrast, is an expert system approach with a detailed reaction logic that can be incorporated in the CHMTRN/PATRAN files. One such rule can therefore correspond to a large number of SMIRKS (some of which might be quite complicated); and CHMTRN/PATRAN can include features that cannot be expressed in SMIRKS at all (such as computed electron density).