  This paper describes a strategy for providing hints during an ACL2 proof,
implemented in a utility called use-termhint. An extra literal is added to the
goal clause and simplified along with the rest of the goal until it is stable
under simplification, after which the simplified literal is examined and a hint
extracted from it. This simple technique supports some commonly desirable yet
elusive features. It supports providing different hints to different cases of a
case split, as well as binding variables so as to avoid repeating multiply
referenced subterms. Since terms used in these hints are simplified in the same
way as the rest of the goal, this strategy is also more robust against changes
in the rewriting normal form than hints in which terms from the goal are
written out explicitly.
