This paper explores the technique of 'strength reduction' or 'formal differentation' in a set theoretic context, as recently introduced by Earley. We give pragmatic rules for the recognition and treatment of reasonably general cases in which the optimization is applicable, and consider some of the problems which arise in actually attempting to install this optimization as part of a compiling system.