Fig. A schematic overview of the High-Performance Reaction Generation (HiPRGen) method. A set of species S init is provided as input. 1. The species contained in S init are filtered via user-defined criteria. Here, species including non-ionic lithium (Li 0 ) and species where multiple fragments are connected only by coordination bonds are removed. 2. Species are grouped and bucketed based on composition. Each bucket is populated by entries that contain either a single molecule or a pair of molecules that together have the composition of the bucket. 3. Within each bucket, all stoichiometrically valid reactions are generated. This corresponds to generating all combinations of two members of the bucket. 4. The generated, stoichiometrically valid reactions are then passed through user-defined reaction filters. Here, dissociative redox reactions (where changes in bonding occur simultaneously with reduction or oxidation) and reactions involving more than two bonds changing are removed. After aggregating the reactions generated from each bucket, the end result of the HiPRGen procedure is a set of filtered species S f iltered and a set of filtered reactions R f iltered constituting a reaction network.