  Groups preserving a distributive product are encountered often in algebra.
Examples include automorphism groups of associative and nonassociative rings,
classical groups, and automorphism groups of p-groups. While the great variety
of such products precludes any realistic hope of describing the general
structure of the groups that preserve them, it is reasonable to expect that
insight may be gained from an examination of the universal distributive
products: tensor products. We give a detailed description of the groups
preserving tensor products over semisimple and semiprimary rings, and present
effective algorithms to construct generators for these groups. We also discuss
applications of our methods to algorithmic problems for which all currently
known methods require an exponential amount of work.
