alpha_eqvt_tac fixed to work when the existential is not at the top level.
authorCezary Kaliszyk <kaliszyk@in.tum.de>
Mon, 03 May 2010 15:37:21 +0200
changeset 2029 e72121ea134b
parent 2028 15c5a2926622
child 2030 43d7612f1429
alpha_eqvt_tac fixed to work when the existential is not at the top level.
Nominal/Rsp.thy
--- a/Nominal/Rsp.thy	Mon May 03 15:36:47 2010 +0200
+++ b/Nominal/Rsp.thy	Mon May 03 15:37:21 2010 +0200
@@ -97,7 +97,7 @@
 ML {*
 fun alpha_eqvt_tac induct simps ctxt =
   rel_indtac induct THEN_ALL_NEW
-  simp_tac (HOL_basic_ss addsimps simps) THEN_ALL_NEW
+  simp_tac (HOL_basic_ss addsimps simps) THEN_ALL_NEW split_conj_tac THEN_ALL_NEW
   REPEAT o etac @{thm exi[of _ _ "p"]} THEN' split_conj_tac THEN_ALL_NEW
   asm_full_simp_tac (HOL_ss addsimps (all_eqvts ctxt @ simps)) THEN_ALL_NEW
   asm_full_simp_tac (HOL_ss addsimps