Before revision:  This provides a basis for exploring spaces of molecules and computing reaction networks implicitly defined by graph grammars. Molecule graphs are connected, meaning that rewriting steps in general are many-to-many graph transformations. Chemical grammars are typically subject to combinatorial explosion, however, making it often infeasible to compute the underlying network by direct breadth-first expansion. To alleviate this problem, we introduce here partial applications of rules as a basis for the efficient implementation of strategies that are not only well suited for exploration of chemistries defined by graph grammars, but that are also applicable in a generalgraph rewriting context as well.
After revision:  Borrowing the idea of partial evaluation from functional programming, we introduce partial applications of rewrite rules. Binding substrate to rules increases the number of rules but drastically prunes the substrate sets to which it might match, resulting in dramatically reduced resource requirements. At the same time, exploration strategies can be guided, e.g. based on restrictions on the product molecules to avoid the explicit enumeration of very unlikely compounds. To this end we introduce here partial applications of rules as a basis for the efficient implementation of strategies that are not only well suited for exploration of chemistries defined by graph grammars, but that are also applicable in a generalgraph rewriting context as well.