src/Pure/Isar/method.ML
changeset 21579 abd2b4386a63
parent 20335 b5eca86ef9cc
child 21592 8831206d7f41
equal deleted inserted replaced
21578:a89f786b301a 21579:abd2b4386a63
   149 
   149 
   150 (* insert facts *)
   150 (* insert facts *)
   151 
   151 
   152 local
   152 local
   153 
   153 
   154 fun cut_rule_tac raw_rule =
   154 fun cut_rule_tac rule =
   155   let
   155   Tactic.rtac (Drule.forall_intr_vars rule COMP_INCR revcut_rl);
   156     val rule = Drule.forall_intr_vars raw_rule;
       
   157     val revcut_rl = Drule.incr_indexes rule Drule.revcut_rl;
       
   158   in Tactic.rtac (rule COMP revcut_rl) end;
       
   159 
   156 
   160 in
   157 in
   161 
   158 
   162 fun insert_tac [] i = all_tac
   159 fun insert_tac [] i = all_tac
   163   | insert_tac facts i = EVERY (map (fn th => cut_rule_tac th i) facts);
   160   | insert_tac facts i = EVERY (map (fn th => cut_rule_tac th i) facts);