proper run-time context;
authorwenzelm
Mon, 20 May 2013 18:37:35 +0200
changeset 52088 7d8b53e80ce7
parent 52087 f3075fc4f5f6
child 52089 6ce832f71bdd
proper run-time context;
src/HOL/Prolog/prolog.ML
--- a/src/HOL/Prolog/prolog.ML	Mon May 20 17:14:39 2013 +0200
+++ b/src/HOL/Prolog/prolog.ML	Mon May 20 18:37:35 2013 +0200
@@ -65,7 +65,8 @@
         @{thm all_conj_distrib}, (* "(! x. P x & Q x) = ((! x. P x) & (! x. Q x))" *)
         @{thm imp_conjL} RS sym, (* "(D :- G1 :- G2) = (D :- G1 & G2)" *)
         @{thm imp_conjR},        (* "(D1 & D2 :- G) = ((D1 :- G) & (D2 :- G))" *)
-        @{thm imp_all}];         (* "((!x. D) :- G) = (!x. D :- G)" *)
+        @{thm imp_all}]          (* "((!x. D) :- G) = (!x. D :- G)" *)
+  |> simpset_of;
 
 
 (*val hyp_resolve_tac = Subgoal.FOCUS_PREMS (fn {prems, ...} =>
@@ -114,7 +115,7 @@
                 rtac allI,                      (* "(!!x. P x) ==> ! x. P x" *)
                 rtac exI,                       (* "P x ==> ? x. P x" *)
                 rtac impI THEN'                 (* "(P ==> Q) ==> P --> Q" *)
-                  asm_full_simp_tac atomize_ss THEN'    (* atomize the asms *)
+                  asm_full_simp_tac (put_simpset atomize_ss ctxt) THEN'    (* atomize the asms *)
                   (REPEAT_DETERM o (etac conjE))        (* split the asms *)
                 ])
         ORELSE' resolve_tac [disjI1,disjI2]     (* "P ==> P | Q","Q ==> P | Q"*)