Cases come up when it is desirable to have some redices contracted but not others. To this end, an option is provided for specifying the strength of a redex, and a variant of the Reduce tactic allows for a force to be specified for reducing with. Strengths are forces are drawn from a partial order. A redex is only contracted when the reduction force applied to it is equal or greater than its strength.
A strength is associated with a redex in two ways:
Strengths and forces are ML tokens. The current supported strengths, in increasing order of strength , are
Contraction conversions that should be sensitive to the force of reduction can be added to the abstract redex table using the function

The token argument that the conversion c takes is for the force with which reduction is being attempted.
Strengths can be associated with canonical terms using the function

The basic conversion for reducing with force F is ForceRedexC ( F:tok). The conversion AbRedexC always reduces with maximum force.