Nominal/nominal_dt_alpha.ML
changeset 2559 add799cf0817
parent 2480 ac7dff1194e8
child 2560 82e37a4595c7
--- a/Nominal/nominal_dt_alpha.ML	Wed Nov 10 13:40:46 2010 +0000
+++ b/Nominal/nominal_dt_alpha.ML	Wed Nov 10 13:46:21 2010 +0000
@@ -445,7 +445,7 @@
 
 fun cases_tac intros ctxt =
   let
-    val prod_simps = @{thms split_conv prod_alpha_def prod_rel.simps}
+    val prod_simps = @{thms split_conv prod_alpha_def prod_rel_def}
 
     val unbound_tac = REPEAT o (etac @{thm conjE}) THEN' atac  
 
@@ -493,7 +493,7 @@
         in
           resolve_tac prems' 1
         end) ctxt
-    val prod_simps = @{thms split_conv permute_prod.simps prod_alpha_def prod_rel.simps alphas}
+    val prod_simps = @{thms split_conv permute_prod.simps prod_alpha_def prod_rel_def alphas}
   in
     EVERY' 
       [ etac exi_neg,
@@ -543,7 +543,7 @@
 
 fun non_trivial_cases_tac pred_names intros ctxt = 
   let
-    val prod_simps = @{thms split_conv alphas permute_prod.simps prod_alpha_def prod_rel.simps}
+    val prod_simps = @{thms split_conv alphas permute_prod.simps prod_alpha_def prod_rel_def}
   in
     resolve_tac intros
     THEN_ALL_NEW (asm_simp_tac HOL_basic_ss THEN' 
@@ -596,8 +596,8 @@
 
 fun raw_prove_equivp alphas alpha_bns refl symm trans ctxt = 
   let
-    val refl' = map (fold_rule @{thms reflp_def} o atomize) refl
-    val symm' = map (fold_rule @{thms symp_def} o atomize) symm
+    val refl' = map (fold_rule @{thms reflp_def[THEN eq_reflection]} o atomize) refl
+    val symm' = map (fold_rule @{thms symp_def[THEN eq_reflection]} o atomize) symm
     val trans' = map (fold_rule [transp_def'] o atomize) trans
 
     fun prep_goal t = 
@@ -671,7 +671,7 @@
 
     val props = map2 (fn trm => fn ty => (trm, mk_prop ty)) all_alpha_trms arg_tys 
   
-    val ss = HOL_ss addsimps (simps @ @{thms alphas prod_alpha_def prod_rel.simps 
+    val ss = HOL_ss addsimps (simps @ @{thms alphas prod_alpha_def prod_rel_def 
       permute_prod_def prod.cases prod.recs})
 
     val tac = (TRY o REPEAT o etac @{thm exE}) THEN' asm_full_simp_tac ss
@@ -685,7 +685,7 @@
 fun raw_constr_rsp_tac alpha_intros simps = 
   let
     val pre_ss = HOL_ss addsimps @{thms fun_rel_def}
-    val post_ss = HOL_ss addsimps @{thms alphas prod_alpha_def prod_rel.simps 
+    val post_ss = HOL_ss addsimps @{thms alphas prod_alpha_def prod_rel_def 
       prod_fv.simps fresh_star_zero permute_zero prod.cases} @ simps
   in
     asm_full_simp_tac pre_ss
@@ -754,7 +754,7 @@
 (* transformation of the natural rsp-lemmas into standard form *)
 
 val fun_rsp = @{lemma
-  "(!x y. R x y --> f x = f y) ==> (R ===> (op =)) f f" by simp}
+  "(!x y. R x y --> f x = f y) ==> (R ===> (op =)) f f" by (simp add: fun_rel_def)}
 
 fun mk_funs_rsp thm = 
   thm
@@ -765,7 +765,7 @@
 
 val permute_rsp = @{lemma 
   "(!x y p. R x y --> R (permute p x) (permute p y)) 
-     ==> ((op =) ===> R ===> R) permute permute"  by simp}
+     ==> ((op =) ===> R ===> R) permute permute"  by (simp add: fun_rel_def)}
 
 fun mk_alpha_permute_rsp thm = 
   thm