LIST_INDUCT_TAC reduces a goal !l.P[l], where l ranges over lists, to two
subgoals corresponding to the base and step cases in a proof by structural
induction on l. The induction hypothesis appears among the assumptions of the
subgoal for the step case.  The specification of LIST_INDUCT_TAC is:
                     A ?- !l. P
   =====================================================  LIST_INDUCT_TAC
    A |- P[NIL/l]   A u {{P[l'/l]}} ?- !h. P[CONS h l'/l]