diff -r d67a6a48f1c7 -r 89158f401b07 Nominal/nominal_eqvt.ML --- a/Nominal/nominal_eqvt.ML Mon Apr 01 23:22:53 2013 +0100 +++ b/Nominal/nominal_eqvt.ML Fri Apr 19 00:10:52 2013 +0100 @@ -18,14 +18,14 @@ open Nominal_Permeq; open Nominal_ThmDecls; -val atomize_conv = +fun atomize_conv ctxt = Raw_Simplifier.rewrite_cterm (true, false, false) (K (K NONE)) - (HOL_basic_ss addsimps @{thms induct_atomize}) + (put_simpset HOL_basic_ss ctxt addsimps @{thms induct_atomize}) -val atomize_intr = Conv.fconv_rule (Conv.prems_conv ~1 atomize_conv) +fun atomize_intr ctxt = Conv.fconv_rule (Conv.prems_conv ~1 (atomize_conv ctxt)) fun atomize_induct ctxt = Conv.fconv_rule (Conv.prems_conv ~1 - (Conv.params_conv ~1 (K (Conv.prems_conv ~1 atomize_conv)) ctxt)) + (Conv.params_conv ~1 (K (Conv.prems_conv ~1 (atomize_conv ctxt))) ctxt)) (** equivariance tactics **) @@ -36,8 +36,10 @@ val cpi = Thm.cterm_of thy pi val pi_intro_rule = Drule.instantiate' [] [NONE, SOME cpi] @{thm permute_boolI} val eqvt_sconfig = eqvt_strict_config addexcls pred_names - val simps1 = HOL_basic_ss addsimps @{thms permute_fun_def permute_self split_paired_all} - val simps2 = HOL_basic_ss addsimps @{thms permute_bool_def permute_minus_cancel(2)} + val simps1 = + put_simpset HOL_basic_ss ctxt addsimps @{thms permute_fun_def permute_self split_paired_all} + val simps2 = + put_simpset HOL_basic_ss ctxt addsimps @{thms permute_bool_def permute_minus_cancel(2)} in eqvt_tac ctxt eqvt_sconfig THEN' SUBPROOF (fn {prems, context as ctxt, ...} => @@ -86,7 +88,7 @@ val pred_names = map (name_of o head_of) preds val raw_induct' = atomize_induct ctxt raw_induct - val intrs' = map atomize_intr intrs + val intrs' = map (atomize_intr ctxt) intrs val (([raw_concl], [raw_pi]), ctxt') = ctxt