equal
deleted
inserted
replaced
114 apply (intro strip) |
114 apply (intro strip) |
115 apply (subgoal_tac "\<exists> k' kr. ks = k' # kr") |
115 apply (subgoal_tac "\<exists> k' kr. ks = k' # kr") |
116 apply (clarify) |
116 apply (clarify) |
117 apply (drule_tac x=kr in spec) |
117 apply (drule_tac x=kr in spec) |
118 apply (simp only: rev.simps) |
118 apply (simp only: rev.simps) |
119 apply (subgoal_tac "(empty(rev kr @ [k'][\<mapsto>]rev list @ [a])) = empty (rev kr[\<mapsto>]rev list)([k'][\<mapsto>][a])") |
119 apply (subgoal_tac "(empty(rev kr @ [k'][\<mapsto>]rev xs @ [a])) = empty (rev kr[\<mapsto>]rev xs)([k'][\<mapsto>][a])") |
120 apply (simp only:) |
120 apply (simp only:) |
121 apply (case_tac "k' = k") |
121 apply (case_tac "k' = k") |
122 apply simp |
122 apply simp |
123 apply simp |
123 apply simp |
124 apply (case_tac "k = k'") |
124 apply (case_tac "k = k'") |
1529 |
1529 |
1530 lemma set_drop_le [rule_format,simp]: "\<forall> n xs. n \<le> m \<longrightarrow> set (drop m xs) \<subseteq> set (drop n xs)" |
1530 lemma set_drop_le [rule_format,simp]: "\<forall> n xs. n \<le> m \<longrightarrow> set (drop m xs) \<subseteq> set (drop n xs)" |
1531 apply (induct m) |
1531 apply (induct m) |
1532 apply simp |
1532 apply simp |
1533 apply (intro strip) |
1533 apply (intro strip) |
1534 apply (subgoal_tac "na \<le> n \<or> na = Suc n") |
1534 apply (subgoal_tac "n \<le> m \<or> n = Suc m") |
1535 apply (erule disjE) |
1535 apply (erule disjE) |
1536 apply (frule_tac x=na in spec, drule_tac x=xs in spec, drule mp, assumption) |
1536 apply (frule_tac x=n in spec, drule_tac x=xs in spec, drule mp, assumption) |
1537 apply (rule set_drop_Suc [THEN subset_trans], assumption) |
1537 apply (rule set_drop_Suc [THEN subset_trans], assumption) |
1538 apply auto |
1538 apply auto |
1539 done |
1539 done |
1540 |
1540 |
1541 lemma set_drop [simp] : "set (drop m xs) \<subseteq> set xs" |
1541 lemma set_drop [simp] : "set (drop m xs) \<subseteq> set xs" |
2308 prefer 2 apply (simp (no_asm_simp)) |
2308 prefer 2 apply (simp (no_asm_simp)) |
2309 apply ((erule exE)+, simp (no_asm_simp)) |
2309 apply ((erule exE)+, simp (no_asm_simp)) |
2310 apply (drule_tac x="lvars_pre @ [a]" in spec) |
2310 apply (drule_tac x="lvars_pre @ [a]" in spec) |
2311 apply (drule_tac x="lvars0" in spec) |
2311 apply (drule_tac x="lvars0" in spec) |
2312 apply (simp (no_asm_simp) add: compInitLvars_def) |
2312 apply (simp (no_asm_simp) add: compInitLvars_def) |
2313 apply (rule_tac ?bc1.0="compInit jmb a" and ?bc2.0="compInitLvars jmb list" |
2313 apply (rule_tac ?bc1.0="compInit jmb a" and ?bc2.0="compInitLvars jmb lvars" |
2314 in bc_mt_corresp_comb) |
2314 in bc_mt_corresp_comb) |
2315 apply (simp (no_asm_simp) add: compInitLvars_def)+ |
2315 apply (simp (no_asm_simp) add: compInitLvars_def)+ |
2316 |
2316 |
2317 apply (rule_tac vn=vn and ty=ty in wt_method_compTpInit_corresp) |
2317 apply (rule_tac vn=vn and ty=ty in wt_method_compTpInit_corresp) |
2318 apply assumption+ |
2318 apply assumption+ |