IntEx.thy
changeset 328 491dde407f40
parent 327 22c8bf90cadb
child 329 5d06e1dba69a
--- a/IntEx.thy	Sat Nov 21 14:18:31 2009 +0100
+++ b/IntEx.thy	Sat Nov 21 14:45:25 2009 +0100
@@ -249,21 +249,22 @@
 ML {*
 fun r_mk_comb_tac ctxt rty quot_thm reflex_thm trans_thm rsp_thms =
   (REPEAT1 o FIRST1) 
-    [rtac trans_thm,
-     LAMBDA_RES_TAC ctxt,
-     ball_rsp_tac ctxt,
-     bex_rsp_tac ctxt,
-     FIRST' (map rtac rsp_thms),
-     (instantiate_tac @{thm REP_ABS_RSP(1)} ctxt THEN' (RANGE [quotient_tac quot_thm])),
-     rtac refl,
-     (APPLY_RSP_TAC rty ctxt THEN' (RANGE [quotient_tac quot_thm, quotient_tac quot_thm])),
-     Cong_Tac.cong_tac @{thm cong},
-     rtac @{thm ext},
-     rtac reflex_thm,
-     atac,
-     SOLVES' (simp_tac (HOL_ss addsimps @{thms FUN_REL.simps})),
-     WEAK_LAMBDA_RES_TAC ctxt,
-     CHANGED' (asm_full_simp_tac (HOL_ss addsimps @{thms FUN_REL_EQ}))]
+    [(K (print_tac "start")) THEN' (K no_tac), 
+     DT ctxt "1" (rtac trans_thm),
+     DT ctxt "2" (LAMBDA_RES_TAC ctxt),
+     DT ctxt "3" (ball_rsp_tac ctxt),
+     DT ctxt "4" (bex_rsp_tac ctxt),
+     DT ctxt "5" (FIRST' (map rtac rsp_thms)),
+     DT ctxt "6" (instantiate_tac @{thm REP_ABS_RSP(1)} ctxt THEN' (RANGE [quotient_tac quot_thm])),
+     DT ctxt "7" (rtac refl),
+     DT ctxt "8" (APPLY_RSP_TAC rty ctxt THEN' (RANGE [quotient_tac quot_thm, quotient_tac quot_thm])),
+     DT ctxt "9" (Cong_Tac.cong_tac @{thm cong}),
+     DT ctxt "A" (rtac @{thm ext}),
+     DT ctxt "B" (rtac reflex_thm),
+     DT ctxt "C" (atac),
+     DT ctxt "D" (SOLVES' (simp_tac (HOL_ss addsimps @{thms FUN_REL.simps}))),
+     DT ctxt "E" (WEAK_LAMBDA_RES_TAC ctxt),
+     DT ctxt "F" (CHANGED' (asm_full_simp_tac (HOL_ss addsimps @{thms FUN_REL_EQ})))]
 *}
 
 ML {*
@@ -272,6 +273,13 @@
 val consts = lookup_quot_consts defs
 *}
 
+ML {* cprem_of *}
+
+ML {* 
+(mk_inj_REPABS_goal @{context} (reg_atrm, aqtrm) 
+  |> Syntax.check_term @{context})
+*}
+
 prove {* mk_inj_REPABS_goal @{context} (reg_atrm, aqtrm) *}
 apply(tactic {* ObjectLogic.full_atomize_tac 1 *})
 (* does not work *)