Thm_cont.UNDISCH_THEN : term -> thm_tactic -> tactic
   UNDISCH_THEN t f ([a1,... ai, t, aj, ... an], goal) =
     f (ASSUME t) ([a1,... ai, aj,... an], goal)
    A u {t1} ?- t
   ===============  f (ASSUME t1)
    B u {t1} ?- v
    A u {t1} ?- t
   ===============  UNDISCH_THEN t1 f
       B ?- v