src/Pure/drule.ML
changeset 12092 d1896409ff13
parent 12054 a96c9563d568
child 12126 34f72eb7d2db
--- a/src/Pure/drule.ML	Wed Nov 07 18:17:16 2001 +0100
+++ b/src/Pure/drule.ML	Wed Nov 07 18:17:45 2001 +0100
@@ -330,7 +330,8 @@
 
 (* maps |- B to A1,...,An |- B *)
 fun impose_hyps chyps th =
-  implies_elim_list (implies_intr_list chyps th) (map Thm.assume chyps);
+  let val chyps' = gen_rems (op aconv o apfst Thm.term_of) (chyps, #hyps (Thm.rep_thm th))
+  in implies_elim_list (implies_intr_list chyps' th) (map Thm.assume chyps') end;
 
 (*Reset Var indexes to zero, renaming to preserve distinctness*)
 fun zero_var_indexes th =