As noted in the previous section, narrowing can be thought of as reduction on a program term graph, and there are often many different ways ("strategies") to reduce a given term graph. Antoy et al. proved in the 1990s that a particular narrowing strategy, "needed narrowing", is optimal in the sense of doing a number of reductions to get to a "normal form" corresponding to a solution that is minimal among sound and complete strategies. Needed narrowing corresponds to a lazy strategy, in contrast to the SLD-resolution strategy of Prolog.