to_pred and to_set now save induction and case rule tags.
authorberghofe
Tue, 13 Nov 2007 10:50:33 +0100
changeset 25416 1d8ebaf5f211
parent 25415 02884a4e1ac6
child 25417 ddb060d37ca8
to_pred and to_set now save induction and case rule tags.
src/HOL/Tools/inductive_set_package.ML
--- a/src/HOL/Tools/inductive_set_package.ML	Mon Nov 12 23:08:12 2007 +0100
+++ b/src/HOL/Tools/inductive_set_package.ML	Tue Nov 13 10:50:33 2007 +0100
@@ -340,7 +340,8 @@
     Thm.instantiate ([], insts) |>
     Simplifier.full_simplify (HOL_basic_ss addsimprocs
       [to_pred_simproc (mem_Collect_eq :: split_conv :: to_pred_simps)]) |>
-    eta_contract_thm (is_pred pred_arities)
+    eta_contract_thm (is_pred pred_arities) |>
+    RuleCases.save thm
   end;
 
 val to_pred_att = Thm.rule_attribute o to_pred;
@@ -367,9 +368,11 @@
            (HOLogic.mk_tuple' ps T (map Bound (length ps downto 0)), x'))))
       end) fs
   in
+    thm |>
+    Thm.instantiate ([], insts) |>
     Simplifier.full_simplify (HOL_basic_ss addsimps to_set_simps
-        addsimprocs [strong_ind_simproc pred_arities])
-      (Thm.instantiate ([], insts) thm)
+        addsimprocs [strong_ind_simproc pred_arities]) |>
+    RuleCases.save thm
   end;
 
 val to_set_att = Thm.rule_attribute o to_set;