# HG changeset patch # User huffman # Date 1315927311 25200 # Node ID 4657b4c111382f412684aa9b23a66cd793f452b4 # Parent 482f1807976e4f9c0acfb721a19a8160ccd02229 remove some redundant [simp] declarations; simplify some proofs; diff -r 482f1807976e -r 4657b4c11138 src/HOL/Complete_Lattices.thy --- a/src/HOL/Complete_Lattices.thy Tue Sep 13 16:22:01 2011 +0200 +++ b/src/HOL/Complete_Lattices.thy Tue Sep 13 08:21:51 2011 -0700 @@ -315,11 +315,8 @@ lemma Sup_bot_conv [simp, no_atp]: "\A = \ \ (\x\A. x = \)" (is ?P) "\ = \A \ (\x\A. x = \)" (is ?Q) -proof - - interpret dual: complete_lattice Sup Inf sup "op \" "op >" inf \ \ - by (fact dual_complete_lattice) - from dual.Inf_top_conv show ?P and ?Q by simp_all -qed + using dual_complete_lattice + by (rule complete_lattice.Inf_top_conv)+ lemma SUP_bot_conv [simp]: "(\x\A. B x) = \ \ (\x\A. B x = \)" @@ -539,11 +536,8 @@ lemma Inf_eq_bot_iff [simp]: "\A = \ \ (\x>\. \i\A. i < x)" -proof - - interpret dual: complete_linorder Sup Inf sup "op \" "op >" inf \ \ - by (fact dual_complete_linorder) - from dual.Sup_eq_top_iff show ?thesis . -qed + using dual_complete_linorder + by (rule complete_linorder.Sup_eq_top_iff) lemma INF_eq_bot_iff [simp]: "(\i\A. f i) = \ \ (\x>\. \i\A. f i < x)" @@ -679,8 +673,8 @@ lemma Inter_UNIV: "\UNIV = {}" by (fact Inf_UNIV) (* already simp *) -lemma Inter_insert [simp]: "\(insert a B) = a \ \B" - by (fact Inf_insert) +lemma Inter_insert: "\(insert a B) = a \ \B" + by (fact Inf_insert) (* already simp *) lemma Inter_Un_subset: "\A \ \B \ \(A \ B)" by (fact less_eq_Inf_inter) @@ -788,10 +782,10 @@ lemma INT_constant [simp]: "(\y\A. c) = (if A = {} then UNIV else c)" by (fact INF_constant) -lemma INTER_UNIV_conv [simp]: +lemma INTER_UNIV_conv: "(UNIV = (\x\A. B x)) = (\x\A. B x = UNIV)" "((\x\A. B x) = UNIV) = (\x\A. B x = UNIV)" - by (fact INF_top_conv)+ + by (fact INF_top_conv)+ (* already simp *) lemma INT_bool_eq: "(\b. A b) = A True \ A False" by (fact INF_UNIV_bool_expand) @@ -846,14 +840,14 @@ lemma Union_least: "(\X. X \ A \ X \ C) \ \A \ C" by (fact Sup_least) -lemma Union_empty [simp]: "\{} = {}" - by (fact Sup_empty) +lemma Union_empty: "\{} = {}" + by (fact Sup_empty) (* already simp *) -lemma Union_UNIV [simp]: "\UNIV = UNIV" - by (fact Sup_UNIV) +lemma Union_UNIV: "\UNIV = UNIV" + by (fact Sup_UNIV) (* already simp *) -lemma Union_insert [simp]: "\insert a B = a \ \B" - by (fact Sup_insert) +lemma Union_insert: "\insert a B = a \ \B" + by (fact Sup_insert) (* already simp *) lemma Union_Un_distrib [simp]: "\(A \ B) = \A \ \B" by (fact Sup_union_distrib) @@ -861,11 +855,11 @@ lemma Union_Int_subset: "\(A \ B) \ \A \ \B" by (fact Sup_inter_less_eq) -lemma Union_empty_conv [simp,no_atp]: "(\A = {}) \ (\x\A. x = {})" - by (fact Sup_bot_conv) +lemma Union_empty_conv [no_atp]: "(\A = {}) \ (\x\A. x = {})" + by (fact Sup_bot_conv) (* already simp *) -lemma empty_Union_conv [simp,no_atp]: "({} = \A) \ (\x\A. x = {})" - by (fact Sup_bot_conv) +lemma empty_Union_conv [no_atp]: "({} = \A) \ (\x\A. x = {})" + by (fact Sup_bot_conv) (* already simp *) lemma subset_Pow_Union: "A \ Pow (\A)" by blast @@ -921,11 +915,11 @@ lemma UNION_eq [no_atp]: "(\x\A. B x) = {y. \x\A. y \ B x}" by (auto simp add: SUP_def) - + lemma Union_image_eq [simp]: "\(B ` A) = (\x\A. B x)" - by (auto simp add: UNION_eq) - + by (rule sym) (fact SUP_def) + lemma UN_iff [simp]: "(b \ (\x\A. B x)) = (\x\A. b \ B x)" by (auto simp add: SUP_def image_def) @@ -963,8 +957,8 @@ lemma UN_empty [no_atp]: "(\x\{}. B x) = {}" by (fact SUP_empty) -lemma UN_empty2 [simp]: "(\x\A. {}) = {}" - by (fact SUP_bot) +lemma UN_empty2: "(\x\A. {}) = {}" + by (fact SUP_bot) (* already simp *) lemma UN_absorb: "k \ I \ A k \ (\i\I. A i) = (\i\I. A i)" by (fact SUP_absorb) @@ -987,10 +981,10 @@ lemma image_Union: "f ` \S = (\x\S. f ` x)" by blast -lemma UNION_empty_conv[simp]: +lemma UNION_empty_conv: "{} = (\x\A. B x) \ (\x\A. B x = {})" "(\x\A. B x) = {} \ (\x\A. B x = {})" - by (fact SUP_bot_conv)+ + by (fact SUP_bot_conv)+ (* already simp *) lemma Collect_ex_eq [no_atp]: "{x. \y. P x y} = (\y. {x. P x y})" by blast