src/HOL/MicroJava/J/JTypeSafe.thy
changeset 51798 ad3a241def73
parent 51717 9e7d1c139569
child 54742 7a86358a3c0b
equal deleted inserted replaced
51797:182454c06a80 51798:ad3a241def73
   199 -- "several simplifications, XcptE, XcptEs, XcptS, Skip, Nil??"
   199 -- "several simplifications, XcptE, XcptEs, XcptS, Skip, Nil??"
   200 apply( simp_all)
   200 apply( simp_all)
   201 apply( tactic "ALLGOALS (REPEAT o resolve_tac [impI, allI])")
   201 apply( tactic "ALLGOALS (REPEAT o resolve_tac [impI, allI])")
   202 apply( tactic {* ALLGOALS (eresolve_tac [@{thm ty_expr.cases}, @{thm ty_exprs.cases}, @{thm wt_stmt.cases}]
   202 apply( tactic {* ALLGOALS (eresolve_tac [@{thm ty_expr.cases}, @{thm ty_exprs.cases}, @{thm wt_stmt.cases}]
   203   THEN_ALL_NEW (full_simp_tac (put_simpset (simpset_of @{theory_context Conform}) @{context}))) *})
   203   THEN_ALL_NEW (full_simp_tac (put_simpset (simpset_of @{theory_context Conform}) @{context}))) *})
   204 apply(tactic "ALLGOALS (EVERY' [REPEAT o (etac conjE), REPEAT o hyp_subst_tac])")
   204 apply(tactic "ALLGOALS (EVERY' [REPEAT o (etac conjE), REPEAT o hyp_subst_tac @{context}])")
   205 
   205 
   206 -- "Level 7"
   206 -- "Level 7"
   207 -- "15 NewC"
   207 -- "15 NewC"
   208 apply (drule sym)
   208 apply (drule sym)
   209 apply( drule new_AddrD)
   209 apply( drule new_AddrD)
   238 apply simp
   238 apply simp
   239 apply( fast elim: conforms_localD [THEN lconfD])
   239 apply( fast elim: conforms_localD [THEN lconfD])
   240 
   240 
   241 -- "for FAss"
   241 -- "for FAss"
   242 apply( tactic {* EVERY'[eresolve_tac [@{thm ty_expr.cases}, @{thm ty_exprs.cases}, @{thm wt_stmt.cases}] 
   242 apply( tactic {* EVERY'[eresolve_tac [@{thm ty_expr.cases}, @{thm ty_exprs.cases}, @{thm wt_stmt.cases}] 
   243        THEN_ALL_NEW (full_simp_tac @{context}), REPEAT o (etac conjE), hyp_subst_tac] 3*})
   243        THEN_ALL_NEW (full_simp_tac @{context}), REPEAT o (etac conjE), hyp_subst_tac @{context}] 3*})
   244 
   244 
   245 -- "for if"
   245 -- "for if"
   246 apply( tactic {* (Induct_Tacs.case_tac @{context} "the_Bool v" THEN_ALL_NEW
   246 apply( tactic {* (Induct_Tacs.case_tac @{context} "the_Bool v" THEN_ALL_NEW
   247   (asm_full_simp_tac @{context})) 7*})
   247   (asm_full_simp_tac @{context})) 7*})
   248 
   248