tuned proofs;
authorwenzelm
Thu, 16 Feb 2012 22:53:24 +0100
changeset 46507 1b24c24017dd
parent 46506 c7faa011bfa7
child 46508 ec9630fe9ca7
tuned proofs;
src/HOL/Library/AList.thy
src/HOL/Library/Binomial.thy
src/HOL/Library/DAList.thy
--- a/src/HOL/Library/AList.thy	Thu Feb 16 22:18:28 2012 +0100
+++ b/src/HOL/Library/AList.thy	Thu Feb 16 22:53:24 2012 +0100
@@ -135,7 +135,7 @@
 lemma updates_twist [simp]:
  "k \<notin> set ks \<Longrightarrow> 
   map_of (updates ks vs (update k v al)) = map_of (update k v (updates ks vs al))"
-  by (simp add: updates_conv' update_conv' map_upds_twist)
+  by (simp add: updates_conv' update_conv')
 
 lemma updates_apply_notin[simp]:
  "k \<notin> set ks ==> map_of (updates ks vs al) k = map_of al k"
--- a/src/HOL/Library/Binomial.thy	Thu Feb 16 22:18:28 2012 +0100
+++ b/src/HOL/Library/Binomial.thy	Thu Feb 16 22:53:24 2012 +0100
@@ -68,8 +68,7 @@
   need to reason about division.*}
 lemma binomial_Suc_Suc_eq_times:
     "k \<le> n ==> (Suc n choose Suc k) = (Suc n * (n choose k)) div Suc k"
-  by (simp add: Suc_times_binomial_eq div_mult_self_is_m zero_less_Suc
-    del: mult_Suc mult_Suc_right)
+  by (simp add: Suc_times_binomial_eq del: mult_Suc mult_Suc_right)
 
 text{*Another version, with -1 instead of Suc.*}
 lemma times_binomial_minus1_eq:
@@ -255,7 +254,7 @@
 proof-
   from kn obtain h where h: "k = Suc h" by (cases k, auto)
   {assume n0: "n=0" then have ?thesis using kn 
-      by (cases k, simp_all add: pochhammer_rec del: pochhammer_Suc)}
+      by (cases k) (simp_all add: pochhammer_rec)}
   moreover
   {assume n0: "n \<noteq> 0"
     then have ?thesis apply (simp add: h pochhammer_Suc_setprod)
@@ -311,7 +310,7 @@
       using setprod_constant[where A="{0 .. h}" and y="- 1 :: 'a"]
       by auto
     have ?thesis
-      unfolding h h pochhammer_Suc_setprod eq setprod_timesf[symmetric]
+      unfolding h pochhammer_Suc_setprod eq setprod_timesf[symmetric]
       apply (rule strong_setprod_reindex_cong[where f = "%i. h - i"])
       apply (auto simp add: inj_on_def image_def h )
       apply (rule_tac x="h - x" in bexI)
--- a/src/HOL/Library/DAList.thy	Thu Feb 16 22:18:28 2012 +0100
+++ b/src/HOL/Library/DAList.thy	Thu Feb 16 22:53:24 2012 +0100
@@ -12,8 +12,10 @@
 subsection {* Type @{text "('key, 'value) alist" } *}
 
 typedef (open) ('key, 'value) alist = "{xs :: ('key \<times> 'value) list. distinct (map fst xs)}"
-morphisms impl_of Alist
-by(rule exI[where x="[]"]) simp
+  morphisms impl_of Alist
+proof
+  show "[] \<in> {xs. distinct (map fst xs)}" by simp
+qed
 
 lemma alist_ext: "impl_of xs = impl_of ys \<Longrightarrow> xs = ys"
 by(simp add: impl_of_inject)