diff -r 213dcc39358f -r d9b155757dc8 src/HOL/MicroJava/Comp/AuxLemmas.thy --- a/src/HOL/MicroJava/Comp/AuxLemmas.thy Tue May 13 08:59:21 2003 +0200 +++ b/src/HOL/MicroJava/Comp/AuxLemmas.thy Wed May 14 10:22:09 2003 +0200 @@ -101,17 +101,9 @@ lemma map_map_upds [rule_format (no_asm), simp]: "\ f vs. (\y\set ys. y \ set xs) \ map (the \ f(ys[\]vs)) xs = map (the \ f) xs" -apply (induct ys) -apply simp -apply (intro strip) -apply (simp only: map_upds.simps) -apply (subgoal_tac "\y\set list. y \ set xs") -apply (subgoal_tac "a\ set xs") -apply (subgoal_tac "map (the \ f(a\hd vs)(list[\]tl vs)) xs = map (the \ f(a\hd vs)) xs") -apply (simp only:) -apply (erule map_map_upd) -apply blast -apply simp+ +apply (induct xs) + apply simp +apply fastsimp done lemma map_upds_distinct [rule_format (no_asm), simp]: @@ -121,11 +113,10 @@ apply (intro strip) apply (case_tac vs) apply simp -apply (simp only: map_upds.simps distinct.simps hd.simps tl.simps) +apply (simp only: map_upds_Cons distinct.simps hd.simps tl.simps map.simps) apply clarify -apply (simp only: map.simps map_map_upd) +apply (simp del: o_apply) apply simp -apply (simp add: o_def) done @@ -138,7 +129,8 @@ "\ m ys. (m(xs[\]ys)) k = Some y \ k \ (set xs) \ (m k = Some y)" apply (induct xs) apply simp -apply (case_tac "k = a") +apply auto +apply(case_tac ys) apply auto done