The basic induction variable I is not defined on any path between the definition of K and the definition of J. Induction variables can be represented by tuples. Strength reduction Strength reduction is the idea of replacing expensive operations by less expensive ones. For example, for integers it holds that multiplication is more expensive than addition. For integral induction variables it is better, therefore, to replace multiplicative derived induction variables by additive ones. Suppose there were non-integral induction variables.
Strength reduction is based on the method of finite differences.
See the handout for an example. J' Delete all assignments to I in the loop. If I is alive on one loop exit, place an assignment with its final value at this exit. Loop Unrolling Loop unrolling replaces the body of a loop by a certain number of copies. The number of copies is called the unrolling factor and the original loop the rolled loop .